json-expression-eval
Version:
json serializable rule engine / boolean expression evaluator
10 lines (9 loc) • 816 B
TypeScript
import { Context, Expression, FunctionsTable, ValidationContext, EvaluationResult } from '../types';
export declare class ExpressionHandler<C extends Context, F extends FunctionsTable<C, CustomEvaluatorFuncRunOptions>, Ignore = never, CustomEvaluatorFuncRunOptions = undefined> {
private readonly expression;
private readonly functionsTable;
constructor(expression: Expression<C, F, Ignore, CustomEvaluatorFuncRunOptions>, functionsTable: F);
evaluate(context: C, runOptions: CustomEvaluatorFuncRunOptions): Promise<boolean>;
validate(validationContext: ValidationContext<C, Ignore>, runOptions: CustomEvaluatorFuncRunOptions): Promise<void>;
evaluateWithReason(context: C, runOptions: CustomEvaluatorFuncRunOptions): Promise<EvaluationResult<C, F, Ignore, CustomEvaluatorFuncRunOptions>>;
}