export class ExprParser { /** * @param {import("./types").Token[]} tokens * @param {{ get: (s: string) => any }} env * @param {string} source * @param {(cond: string, env: any) => any} evalCond */ constructor(tokens: import("./types").Token[], env: { get: (s: string) => any; }, source: string, evalCond: (cond: string, env: any) => any); /** @type {import("./types").Token[]} */ tokens: import("./types").Token[]; /** @type {{ get: (s: string) => any }} */ env: { get: (s: string) => any; }; /** @type {string} */ source: string; /** @type {(cond: string, env: any) => any} */ evalCond: (cond: string, env: any) => any; /** @type {number} */ pos: number; /** @param {number} [offset] @returns {import("./types").Token} */ peek(offset?: number): import("./types").Token; /** @returns {import("./types").Token} */ advance(): import("./types").Token; /** @returns {any} */ parse(): any; /** @returns {any} */ parseIf(): any; /** @param {string} kind @returns {any} */ parseInExpr(kind: string): any; /** @returns {any} */ parseEq(): any; /** @param {string} delimiter @returns {string|null} */ readUntil(delimiter: string): string | null; /** @returns {any} */ readListItem(): any; /** @returns {string|null} */ readIdentOrString(): string | null; }