UNPKG

1.14 kBTypeScriptView Raw
1import MarkdownIt = require('.');
2import Ruler = require('./ruler');
3import Token = require('./token');
4import StateInline = require('./rules_inline/state_inline');
5
6declare namespace ParserInline {
7 type RuleInline = (state: StateInline, silent: boolean) => boolean;
8 type RuleInline2 = (state: StateInline) => boolean;
9}
10
11declare class ParserInline {
12 /**
13 * [[Ruler]] instance. Keep configuration of inline rules.
14 */
15 ruler: Ruler<ParserInline.RuleInline>;
16
17 /**
18 * [[Ruler]] instance. Second ruler used for post-processing
19 * (e.g. in emphasis-like rules).
20 */
21 ruler2: Ruler<ParserInline.RuleInline2>;
22
23 /**
24 * Skip single token by running all rules in validation mode;
25 * returns `true` if any rule reported success
26 */
27 skipToken(state: StateInline): void;
28
29 /**
30 * Generate tokens for input range
31 */
32 tokenize(state: StateInline): void;
33
34 /**
35 * Process input string and push inline tokens into `outTokens`
36 */
37 parse(str: string, md: MarkdownIt, env: any, outTokens: Token[]): void;
38
39 State: typeof StateInline;
40}
41
42export = ParserInline;