export interface JisonParserErrorHash { recoverable: boolean; destroy: () => void; exception?: Error; } export interface JisonParserError { new (msg: string | null | undefined, hash?: JisonParserErrorHash): JisonParserError; get name(): 'JisonParserError'; get message(): string | null | undefined; set message(msg: string | null | undefined); } export declare type ParseFunction = (input: string, ast: TAst, ...args: TArgs) => boolean; export interface OParser { trace: () => {}; JisonParserError: JisonParserError; yy: {}; options: { type: string; hasPartialLrUpgradeOnConflict: boolean; errorRecoveryTokenDiscardCount: number; ebnf: boolean; }; symbols_: { $accept: 0; $end: 1; [key: string]: number; }; terminals_: { 1: 'EOF'; 2: 'error'; [key: number]: string; }; TERROR: number; EOF: number; quoteName: (id_str: string) => string; getSymbolName: (symbol: number) => string | null; describeSymbol: (symbol: number) => string | null; collect_expected_token_set: (state: number, do_not_describe: boolean) => string[]; parseError: (str: string, hash: JisonParserErrorHash, ExceptionClass?: Error) => void; parse: ParseFunction; originalParseError: (str: string, hash: JisonParserErrorHash, ExceptionClass?: Error) => void; originalQuoteName: (id_str: string) => string; } export interface YaccLexParser extends OParser { yy: {}; Parser: OParser; } export interface JisonParser { parser: OParser; Parser: YaccLexParser; parse: ParseFunction; }