import * as React from 'react';
export interface RuleCondition {
    id: string;
    field: string;
    operator: string;
    value: string | number | boolean;
    type?: 'string' | 'number' | 'boolean' | 'date';
}
export interface RuleGroup {
    id: string;
    logic: 'AND' | 'OR';
    conditions: (RuleCondition | RuleGroup)[];
}
export interface FieldDefinition {
    name: string;
    label: string;
    type: 'string' | 'number' | 'boolean' | 'date';
    operators?: string[];
}
export interface RuleEditorProps extends Omit<React.ComponentProps<'div'>, 'onChange'> {
    rules: RuleGroup;
    fields: FieldDefinition[];
    onChange?: (rules: RuleGroup) => void;
    maxDepth?: number;
}
declare function RuleEditor({ rules, fields, onChange, maxDepth, className, ...props }: RuleEditorProps): import("react/jsx-runtime").JSX.Element;
declare namespace RuleEditor {
    var displayName: string;
}
export { RuleEditor };
//# sourceMappingURL=rule-editor.d.ts.map