UNPKG

@o3r/rules-engine

Version:

This module provides a rule engine that can be executed on your Otter application to customize your application (translations, placeholders and configs) based on a json file generated by your CMS.

32 lines 1.69 kB
import { EvaluationReason, RuleEvaluation, RuleEvaluationOutput } from '../engine.interface'; import type { Facts } from '../fact'; import { ActionBlock, Rule } from '../structure'; /** * Function to retrieve from 2 sequential executions only the triggers which activated the last ruleset execution * @param currRes Current ruleset execution object * @param prevRes Previous ruleset execution object * @returns The triggers list which activates the last ruleset execution */ export declare function retrieveRulesetTriggers(currRes: RuleEvaluationOutput[], prevRes: RuleEvaluationOutput[] | undefined): Record<string, Record<string, EvaluationReason>>; /** * Flag as cached the rules evaluations which are from previous ruleset executions * @param rulesEvaluations all rules evaluations list * @param triggers Ruleset triggers object * @returns Rules evaluation list with flagged rules evaluation from previous ruleset executions */ export declare function flagCachedRules(rulesEvaluations: RuleEvaluation[], triggers: Record<string, Record<string, EvaluationReason>>): (RuleEvaluation & { cached?: boolean; })[]; /** * Create the debug rule evaluation object * @param rule * @param rulesetName * @param outputActions * @param outputError * @param runtimeFactValues * @param factValues * @param oldFactValues * @param inputFacts */ export declare function handleRuleEvaluationDebug(rule: Rule, rulesetName: string, outputActions: ActionBlock[] | undefined, outputError: any, runtimeFactValues: Record<string, Facts>, factValues: any[] | undefined, oldFactValues: any[] | undefined, inputFacts?: string[] | undefined): RuleEvaluation; //# sourceMappingURL=helpers.d.ts.map