import { type AnyType } from './any';
import { FilterOperator, type MetricFilterRule, type ModelRequiredFilterRule } from './filter';
import filterGrammar from './filterGrammar.grammar';
export type RequiredFilter = {
    [key: string]: AnyType;
} & {
    required?: boolean;
};
export type ParsedFilter = {
    type: string;
    values: AnyType[];
    is?: boolean;
    date_interval?: string;
};
export declare const parseOperator: (operator: string, isTrue: boolean, fieldName: string) => FilterOperator;
export declare const parseFilters: (rawFilters: Record<string, AnyType>[] | undefined) => MetricFilterRule[];
export declare const parseModelRequiredFilters: ({ requiredFilters, defaultFilters, }: {
    requiredFilters: RequiredFilter[] | undefined;
    defaultFilters: RequiredFilter[] | undefined;
}) => ModelRequiredFilterRule[];
export default filterGrammar;
//# sourceMappingURL=filterGrammar.d.ts.map