/** * Handlebars Lexer * Tokenizes Handlebars template syntax: {{expr}}, {{#if}}, {{/if}}, {{>partial}} */ export declare enum HbsTokenType { TEXT = "TEXT", OPEN = "OPEN",// {{ OPEN_BLOCK = "OPEN_BLOCK",// {{# OPEN_END = "OPEN_END",// {{/ OPEN_PARTIAL = "OPEN_PARTIAL",// {{> OPEN_UNESCAPED = "OPEN_UNESCAPED",// {{{ OPEN_COMMENT = "OPEN_COMMENT",// {{! CLOSE = "CLOSE",// }} CLOSE_UNESCAPED = "CLOSE_UNESCAPED",// }}} ID = "ID",// identifier STRING = "STRING", NUMBER = "NUMBER", BOOLEAN = "BOOLEAN", DOT = "DOT", DOTDOT = "DOTDOT",// .. SLASH = "SLASH", EQUALS = "EQUALS", PIPE = "PIPE", EOF = "EOF" } export interface HbsToken { type: HbsTokenType; value: string; line: number; column: number; } export declare class HandlebarsLexer { private source; private pos; private line; private column; private tokens; constructor(source: string); tokenize(): HbsToken[]; private scanToken; private scanText; private scanExpression; private scanExpressionToken; private scanString; private scanNumber; private scanIdentifier; private scanComment; private scanBlockComment; private isAtEnd; private peek; private peekNext; private advance; private check; private match; private skipWhitespace; private isDigit; private isAlpha; private isAlphaNumeric; private addToken; } //# sourceMappingURL=lexer.d.ts.map