export type ExpressionScope = Readonly>; export interface ExpressionEvaluationOptions { /** Max ms dla ewaluacji (guard przeciw pętlom). Domyślnie 50ms. */ readonly timeoutMs?: number; } export type ParseResult = { readonly ok: true; } | { readonly ok: false; readonly error: string; }; export interface ExpressionEngine { /** Walidacja syntaxu — używana przez linter bez wykonywania. */ parse(expr: string): ParseResult; /** Ewaluacja w sandboxie — wyłącznie z whitelisted scope. */ evaluate(expr: string, scope: ExpressionScope, options?: ExpressionEvaluationOptions): unknown; /** Lista referencji (zmiennych) w wyrażeniu — do budowy grafu zależności computed. */ references(expr: string): readonly string[]; } //# sourceMappingURL=types.d.ts.map