import { IDataDefinition } from "../../../Common/Data/Definitions/IDataDefinition";
import { XDataDefinition } from "../../../Common/Data/XDataDefinition";
import { IConfigStorage } from "../../../Common/IConfigStorage";
import { ValidationIssue } from "../../../Common/IDesignValidationProvider";
import { IColorElem } from "../../../CommonUI/BuildUI/ColorPicker";
import { XExpressionDefinition } from "../../../Expressions/XExpressionDefinition";
export declare enum TreeRuleNodeType {
    EVALUATION = "evaluation",
    RESULT = "result",
    UNDEFINED = "undefined"
}
export declare class TreeRuleNode implements IColorElem, IConfigStorage {
    _id: string;
    nodeType: TreeRuleNodeType;
    private _trueNode;
    private _falseNode;
    private _missingDataNode;
    color: string;
    expression: XExpressionDefinition;
    setupEvaluation(datadef: XDataDefinition): void;
    setupResult(idatadef: XDataDefinition, outdef: IDataDefinition): void;
    delete(): void;
    get trueNode(): TreeRuleNode | undefined;
    set trueNode(treeNode: TreeRuleNode | undefined);
    get falseNode(): TreeRuleNode | undefined;
    set falseNode(treeNode: TreeRuleNode | undefined);
    set missingDataNode(value: TreeRuleNode | undefined);
    getDesignValidationIssues(): ValidationIssue[];
    getStorageData(): object;
    setStorageData(data: object): void;
}
