import { EventEmitter } from '../../../../stencil.core';
import { IntlFormatFn } from '../../../locale/i18n.provider';
import { ColumnFilter, DataType, FilterType } from '../../table.types';
export declare class ColumnFilterToggle {
    private filterListener;
    private toggleListener;
    private dropdown;
    private panel;
    private table;
    private formatters;
    element: HTMLAnjColumnFilterToggleElement;
    active: boolean;
    /**
     * The data type
     */
    dataType: DataType;
    /**
     * The key we're working with
     */
    field: string;
    /**
     * Current active filter if it exists
     */
    filter: ColumnFilter;
    /**
     * @internal
     */
    translator: IntlFormatFn;
    dateFormatter: IntlFormatFn;
    datetimeFormatter: IntlFormatFn;
    numberFormatter: IntlFormatFn;
    injectedPropWatcher(): void;
    /**
     * Types of filters supported
     */
    types: FilterType[];
    /**
     * Emitted when the user wants to apply a new filter
     */
    anjFilter: EventEmitter<ColumnFilter>;
    componentWillLoad(): void;
    componentDidUnload(): void;
    private assignFormatters;
    private onToggle;
    private clearFilter;
    private filterText;
    private bindPanel;
    private onFilter;
    private formatValue;
    render(): any;
}
