UNPKG

json-expression-eval

Version:

json serializable rule engine / boolean expression evaluator

10 lines (9 loc) 1.18 kB
import { Context, FunctionsTable, ValidationContext, RuleFunctionsTable, Rule, ResolvedConsequence } from '../types'; export declare class RulesEngine<ConsequencePayload, C extends Context, RF extends RuleFunctionsTable<C, ConsequencePayload, CustomEngineRuleFuncRunOptions>, F extends FunctionsTable<C, CustomEngineRuleFuncRunOptions>, Ignore = never, CustomEngineRuleFuncRunOptions = undefined> { private readonly functionsTable; private readonly ruleFunctionsTable; constructor(functionsTable: F, ruleFunctionsTable: RF); evaluate(rules: Rule<ConsequencePayload, RF, C, F, Ignore, CustomEngineRuleFuncRunOptions>[], context: C, runOptions: CustomEngineRuleFuncRunOptions): Promise<void | ResolvedConsequence<ConsequencePayload>>; evaluateAll(rules: Rule<ConsequencePayload, RF, C, F, Ignore, CustomEngineRuleFuncRunOptions>[], context: C, runOptions: CustomEngineRuleFuncRunOptions): Promise<void | ResolvedConsequence<ConsequencePayload>[]>; validate(rules: Rule<ConsequencePayload, RF, C, F, Ignore, CustomEngineRuleFuncRunOptions>[], validationContext: ValidationContext<C, Ignore>, runOptions: CustomEngineRuleFuncRunOptions): Promise<void>; }