import { EXPRESSION_ITEM_TYPE } from "../../MagicJsonSchemaEditor/types/Schema"; import { RELATION_COMP_TYPE, RELATION_LOGICS_MAP } from "../constants"; import { InputExpressionValue } from "../../MagicExpressionWidget/types"; export declare namespace Expression { interface EXPRESSION_ITEM { type: EXPRESSION_ITEM_TYPE; value: string; uniqueId: string; name?: string; } interface CompareNode { type: RELATION_COMP_TYPE; left_operands: InputExpressionValue; condition: string; right_operands: InputExpressionValue; } interface OperationNode { type: RELATION_COMP_TYPE; operands: InputExpressionValue; } interface LogicNode { ops: RELATION_LOGICS_MAP; children: Condition[]; } type Condition = LogicNode | CompareNode; interface ConditionSourceItem { key: string; text: string; value: string; have_children: boolean; children?: ConditionSourceItem[]; } type ConditionSource = ConditionSourceItem[]; }