export declare class UnknownFilter implements Filter {
    name: string;
    type: 'unknown';
}
export interface BooleanFilter extends Filter {
    type: 'boolean';
}
export interface TextFilter extends Filter {
    type: 'text' | 'date' | 'date_ex';
}
export declare type SelectFilterOption = {
    label: string;
    value: string;
};
export interface SelectFilter extends Filter {
    type: 'select';
    defaultValue: string;
    options: SelectFilterOption[];
}
export interface SelectAsyncFilter extends Filter {
    type: 'select_async';
    onInputChange: (inputStr: string) => Promise<SelectFilterOption[]>;
}
export interface Filter {
    name: string;
    type: 'text' | 'date' | 'date_ex' | 'select' | 'select_async' | 'boolean' | 'unknown';
}
export declare namespace FilterHelpers {
    function isBoolean(f: Filter): f is BooleanFilter;
    function isText(f: Filter): f is TextFilter;
    function isSelect(f: Filter): f is SelectFilter;
    function isSelectAsync(f: Filter): f is SelectAsyncFilter;
}
