import * as React from 'react'; export type Operator = 'is' | 'isNot' | 'contains' | 'notContains' | 'startsWith' | 'endsWith' | 'gt' | 'lt' | 'gte' | 'lte' | 'in' | 'notIn' | 'isEmpty' | 'isNotEmpty'; export interface FilterEvent { field: string; operator: Operator; value: string | string[] | null; } interface MultiselectOption { label: string; value: string; icon?: React.ReactNode; } export interface FilterFieldProps extends Omit, 'onChange' | 'size' | 'value'> { field: string; control: 'input' | 'select'; operator: Operator; value: string | string[] | null; onChange: (e: FilterEvent) => void; operators?: Operator[]; options?: MultiselectOption[]; single?: boolean; size?: 'sm' | 'md' | 'lg'; variant?: 'surface' | 'outlined' | 'subtle'; label?: string; placeholder?: string; disabled?: boolean; minWidth?: string; width?: string; maxWidth?: string; popoverWidth?: string; debounceTime?: number; maxVisibleOptions?: number; allowCustomValue?: boolean; } export declare const NUMBER_OPERATORS: Operator[]; export declare function FilterField({ field, control, operator, value, onChange, operators, options, single, size, variant, label, placeholder, disabled, 'data-cy': dataCy, minWidth, width, maxWidth, popoverWidth, debounceTime, maxVisibleOptions, allowCustomValue, ...inputProps }: FilterFieldProps & { 'data-cy'?: string; }): React.ReactElement; export {};