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