import { ColumnType } from './enums';
import { ValueFormatter } from './value-formatter.class';
import { Internationalization } from '../internationalization/internationalization.class';
export declare enum FilterOperator {
    NONE = "NONE",
    BETWEEN = "BETWEEN",
    NOT_BETWEEN = "NOT_BETWEEN",
    CONTAINS = "CONTAINS",
    NOT_CONTAINS = "NOT_CONTAINS",
    EQUALS = "EQUALS",
    NOT_EQUALS = "NOT_EQUALS",
    EMPTY = "EMPTY",
    NOT_EMPTY = "NOT_EMPTY",
    SET = "SET"
}
export declare class Filter {
    fieldName: string;
    operator?: FilterOperator;
    value?: any;
    value2?: any;
    readonly items: Array<any>;
    active: boolean;
    format: string;
    caption: string;
    type: ColumnType;
    orFilter: Filter;
    readonly txtValue: string;
    clearItems(): void;
    clone(active: boolean): Filter;
    private valueToString;
    toString(intl: Internationalization, formatter: ValueFormatter): string;
    constructor(fieldName: string, operator?: FilterOperator, value?: any, value2?: any, // For between
    items?: Array<any>, // Selected items
    active?: boolean, // Фильтр применен в текущий момент
    format?: string, // Формат вывода
    caption?: string, // Заголово колонки
    type?: ColumnType);
}
