import { OptionDataValue, DimensionLoose, Dictionary } from './types'; import { HashMap } from 'zrender/lib/core/util'; import { RawValueParserType, RelationalOperator } from '../data/helper/dataValueHelper'; interface RelationalExpressionOptionByOp extends Record { reg?: RegExp | string; } declare const RELATIONAL_EXPRESSION_OP_ALIAS_MAP: { readonly value: "eq"; readonly '<': "lt"; readonly '<=': "lte"; readonly '>': "gt"; readonly '>=': "gte"; readonly '=': "eq"; readonly '!=': "ne"; readonly '<>': "ne"; }; declare type RelationalExpressionOptionByOpAlias = Record; interface RelationalExpressionOption extends RelationalExpressionOptionByOp, RelationalExpressionOptionByOpAlias { dimension?: DimensionLoose; parser?: RawValueParserType; } interface LogicalExpressionOption { and?: LogicalExpressionSubOption[]; or?: LogicalExpressionSubOption[]; not?: LogicalExpressionSubOption; } declare type LogicalExpressionSubOption = LogicalExpressionOption | RelationalExpressionOption | TrueFalseExpressionOption; export declare type TrueExpressionOption = true; export declare type FalseExpressionOption = false; export declare type TrueFalseExpressionOption = TrueExpressionOption | FalseExpressionOption; export declare type ConditionalExpressionOption = LogicalExpressionOption | RelationalExpressionOption | TrueFalseExpressionOption; declare type ValueGetterParam = Dictionary; export interface ConditionalExpressionValueGetterParamGetter { (relExpOption: RelationalExpressionOption): VGP; } export interface ConditionalExpressionValueGetter { (param: VGP): OptionDataValue; } declare class ConditionalExpressionParsed { private _cond; constructor(exprOption: ConditionalExpressionOption, getters: ConditionalGetters); evaluate(): boolean; } interface ConditionalGetters { prepareGetValue: ConditionalExpressionValueGetterParamGetter; getValue: ConditionalExpressionValueGetter; valueGetterAttrMap: HashMap; } export declare function parseConditionalExpression(exprOption: ConditionalExpressionOption, getters: ConditionalGetters): ConditionalExpressionParsed; export {};