/** * Expression Evaluator * * Evaluates @expr fields with built-in functions. * Supports: $if, $round, $concat, $len, $lower, $upper, $trim, $now, $uuid */ import type { Atom } from '../store/eav-store.js'; export interface EvalContext { [key: string]: unknown; } export declare class ExprEvaluator { private functions; constructor(); /** * Evaluate an expression string against a context. */ eval(expr: string, context: EvalContext): unknown; private evalFunction; private parseArgs; private if; private round; private concat; private len; private lower; private upper; private trim; private now; private uuid; private add; private sub; private mul; private div; private mod; private eq; private ne; private gt; private gte; private lt; private lte; private and; private or; private not; private coalesce; private contains; private startsWith; private endsWith; } /** * Evaluate an expression and return a valid Atom. */ export declare function evalExpr(expr: string, context: EvalContext): Atom; //# sourceMappingURL=expr-evaluator.d.ts.map