export class DynamicRuleDescriptionTable extends StaticKnowledgeDataTable<any> {
    constructor();
    /**
     * Used to speed up finding most complex matching predicate
     * @type {DynamicRuleDescription[]}
     * @private
     */
    private __sorted_by_predicate_complexity;
    /**
     *
     * @type {HashMap<ReactiveExpression, DynamicRuleDescription[]>}
     * @private
     */
    private __predicate_rule_mapping;
    /**
     *
     * @param {ReactiveExpression} predicate
     * @return {DynamicRuleDescription[]|undefined}
     */
    getRulesByPredicate(predicate: ReactiveExpression): DynamicRuleDescription[] | undefined;
    /**
     *
     * @return {MultiPredicateEvaluator}
     */
    buildEvaluator(): MultiPredicateEvaluator;
    buildIndex(): void;
    /**
     *
     * @param {Object} context
     * @returns {DynamicRuleDescription|undefined}
     */
    matchBest(context: any): DynamicRuleDescription | undefined;
    /**
     *
     * @param {Object} context
     * @returns {DynamicRuleDescription[]}
     */
    match(context: any): DynamicRuleDescription[];
    link(database: any, assetManager: any, executor: any): any;
    parse(json: any): DynamicRuleDescription;
}
import { StaticKnowledgeDataTable } from "../../../knowledge/database/StaticKnowledgeDataTable.js";
import { DynamicRuleDescription } from "./DynamicRuleDescription.js";
import { MultiPredicateEvaluator } from "../../../../core/model/reactive/evaluation/MultiPredicateEvaluator.js";
//# sourceMappingURL=DynamicRuleDescriptionTable.d.ts.map