1 | export declare enum TOKEN_TYPES {
|
2 | LINE_COMMENT = "LINE_COMMENT",
|
3 | BLOCK_COMMENT = "BLOCK_COMMENT",
|
4 | SINGLE_QUOTE = "SINGLE_QUOTE",
|
5 | DOUBLE_QUOTE = "DOUBLE_QUOTE",
|
6 | TEMPLATE_QUOTE = "TEMPLATE_QUOTE",
|
7 | REGEXP = "REGEXP",
|
8 | ROUND_BRACKET = "ROUND_BRACKET",
|
9 | CURLY_BRACKET = "CURLY_BRACKET",
|
10 | SQUARE_BRACKET = "SQUARE_BRACKET"
|
11 | }
|
12 | export declare class State {
|
13 | stack: Array<TOKEN_TYPES>;
|
14 | regexpStart: boolean;
|
15 | escaped: boolean;
|
16 | hasDollar: boolean;
|
17 | src: string;
|
18 | history: string;
|
19 | lastChar: string;
|
20 | current(): TOKEN_TYPES;
|
21 | isString(): boolean;
|
22 | isComment(): boolean;
|
23 | isNesting(opts?: {
|
24 | readonly ignoreLineComment?: boolean;
|
25 | }): boolean;
|
26 | }
|
27 | export declare function defaultState(): State;
|
28 | export declare function parse(src: string, state?: State, options?: {
|
29 | readonly start?: number;
|
30 | readonly end?: number;
|
31 | }): State;
|
32 | export default parse;
|
33 | export declare function parseUntil(src: string, delimiter: string | RegExp, options?: {
|
34 | readonly start?: number;
|
35 | readonly end?: number;
|
36 | readonly ignoreLineComment?: boolean;
|
37 | readonly ignoreNesting?: boolean;
|
38 | }): {
|
39 | start: number;
|
40 | end: number;
|
41 | src: string;
|
42 | };
|
43 | export declare function parseChar(character: string, state?: State): State;
|
44 | export declare function isPunctuator(c: string): boolean;
|
45 | export declare function isKeyword(id: string): boolean;
|