UNPKG

@bbob/types

Version:

Shared Typescript types of @bbob

40 lines 1.15 kB
import { TagNodeTree, TagPosition } from "./common.js"; export interface ParseError { tagName: string; lineNumber: number; columnNumber: number; } export interface TagNode { readonly tag: string; attrs?: Record<string, unknown>; content?: TagNodeTree; start?: TagPosition; end?: TagPosition; } export interface Token<TokenValue = string> { readonly t: number; readonly v: string; readonly l: number; readonly r: number; } export interface LexerTokenizer { tokenize: () => Token<string>[]; isTokenNested?: (tokenValue: string) => boolean; } export interface CommonOptions { openTag?: string; closeTag?: string; onlyAllowTags?: string[]; enableEscapeTags?: boolean; caseFreeTags?: boolean; whitespaceInTags?: boolean; contextFreeTags?: string[]; } export interface LexerOptions extends CommonOptions { onToken?: (token?: Token<string>) => void; } export interface ParseOptions extends CommonOptions { createTokenizer?: (input: string, options?: LexerOptions) => LexerTokenizer; onError?: (error: ParseError) => void; } //# sourceMappingURL=parser.d.ts.map