UNPKG

sucrase

Version:

Super-fast alternative to Babel for when you can target modern JS runtimes

37 lines (36 loc) 1.25 kB
export declare type TokenContext = 'block' | 'parens' | 'brackets' | 'object' | 'class' | 'jsxTag' | 'jsxChild' | 'jsxExpression' | 'interpolatedExpression' | 'switchCaseCondition'; export declare type TokenType = { label: string; }; export declare type Token = { type: TokenType; start: number; end: number; value: any; contextName?: TokenContext; contextStartIndex?: number; }; export default class TokenProcessor { readonly code: string; readonly tokens: Array<Token>; private resultCode; private tokenIndex; constructor(code: string, tokens: Array<Token>); reset(): void; matchesAtIndex(index: number, tagLabels: Array<string>): boolean; matchesNameAtIndex(index: number, name: string): boolean; matches(tagLabels: Array<string>): boolean; matchesName(name: string): boolean; previousWhitespace(): string; replaceToken(newCode: string): void; replaceTokenTrimmingLeftWhitespace(newCode: string): void; removeInitialToken(): void; removeToken(): void; copyExpectedToken(label: string): void; copyToken(): void; appendCode(code: string): void; currentToken(): Token; currentIndex(): number; finish(): string; isAtEnd(): boolean; }