UNPKG

1.39 kBTypeScriptView Raw
1export 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}
12export 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}
27export declare function defaultState(): State;
28export declare function parse(src: string, state?: State, options?: {
29 readonly start?: number;
30 readonly end?: number;
31}): State;
32export default parse;
33export 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};
43export declare function parseChar(character: string, state?: State): State;
44export declare function isPunctuator(c: string): boolean;
45export declare function isKeyword(id: string): boolean;