/**
 * 属性过滤表达式类型定义
 */
export interface BaseExpression {
    id: string;
    type: 'base';
    field?: string;
    operator?: string;
    value?: string | number | [number, number];
    valueType?: 'literal' | 'field';
}
export interface LogicalExpressionGroup {
    id: string;
    type: 'group';
    operator: 'AND' | 'OR';
    expressions?: (BaseExpression | LogicalExpressionGroup)[];
    activeId?: string;
}
export interface CompoundExpression {
    type: 'compound';
    operator: 'AND' | 'OR';
    expressions?: (BaseExpression | LogicalExpressionGroup)[];
    activeId?: string;
}
/**
 * 创建基础表达式
 * @param field 字段名
 * @param operator 操作符
 * @param value 值
 * @param valueType 值类型，'literal'表示字面值，'field'表示字段引用
 * @returns 基础表达式对象
 */
export declare function createBaseExpression(field?: string, operator?: string, value?: string | number | [number, number], valueType?: 'literal' | 'field'): BaseExpression;
/**
 * 创建逻辑表达式组
 * @param operator 逻辑操作符 AND 或 OR
 * @param expressions 表达式数组
 * @returns 逻辑表达式组对象
 */
export declare function createLogicalExpressionGroup(operator: 'AND' | 'OR', expressions: (BaseExpression | LogicalExpressionGroup)[]): LogicalExpressionGroup;
/**
 * 创建复合表达式
 * @param operator 逻辑操作符 AND 或 OR
 * @param expressions 表达式数组
 * @returns 复合表达式对象
 */
export declare function createCompoundExpression(operator: 'AND' | 'OR', expressions: (BaseExpression | LogicalExpressionGroup)[]): CompoundExpression;
/**
 * 将基础表达式转换为SQL字符串
 * @param expression 基础表达式对象
 * @returns SQL字符串
 */
export declare function baseExpressionToSQL(expression: BaseExpression): string;
/**
 * 将逻辑表达式组转换为SQL字符串
 * @param expression 逻辑表达式组对象
 * @returns SQL字符串
 */
export declare function logicalExpressionGroupToSQL(expression: LogicalExpressionGroup): string;
/**
 * 将表达式转换为SQL字符串
 * @param expression 复合表达式对象
 * @returns SQL字符串
 */
export declare function expressionToSQL(expression: CompoundExpression): string;
/**
 * 解析SQL字符串为复合表达式对象
 * @param sql SQL字符串
 * @returns 复合表达式对象
 */
export declare function parseSQLExpression(sql: string | null | undefined): CompoundExpression;
