diff --git a/types/marked/index.d.ts b/types/marked/index.d.ts index ad12e6d35e..0cbdf0123e 100644 --- a/types/marked/index.d.ts +++ b/types/marked/index.d.ts @@ -127,6 +127,7 @@ declare namespace marked { class Parser { constructor(options?: MarkedOptions); + static parse(src: TokensList, options?: MarkedOptions): string; parse(src: TokensList): string; next(): Token; peek(): Token | number; @@ -135,10 +136,11 @@ declare namespace marked { } class Lexer { - rules: Rules; - tokens: TokensList; constructor(options?: MarkedOptions); + static rules: Rules; + static lex(src: TokensList, options?: MarkedOptions): TokensList; lex(src: string): TokensList; + token(src: string, top: boolean): TokensList; } class Slugger { diff --git a/types/marked/marked-tests.ts b/types/marked/marked-tests.ts index 65cd72ee73..1e974cb72c 100644 --- a/types/marked/marked-tests.ts +++ b/types/marked/marked-tests.ts @@ -41,7 +41,8 @@ console.log(marked.parser(tokens)); const lexer = new marked.Lexer(options); const tokens2 = lexer.lex(text); console.log(tokens2); -const re: RegExp | marked.Rules = lexer.rules['code']; +const re: RegExp | marked.Rules = marked.Lexer.rules['code']; +console.log(lexer.token(text, true)); const renderer = new marked.Renderer(); const slugger = new marked.Slugger(); @@ -56,6 +57,7 @@ const parseTestText = "- list1\n - list1.1\n\n listend"; const parseTestTokens: marked.TokensList = marked.lexer(parseTestText, options); const parser = new marked.Parser(); console.log(parser.parse(parseTestTokens)); +console.log(marked.Parser.parse(parseTestTokens)); const links = ['http', 'image']; const inlineLexer = new marked.InlineLexer(links);