import React, { CSSProperties, ReactNode } from 'react';
import { FilterPanel as FilterPanelType, DefaultFilterPanelProps, CustomeFilterPanelProps } from '../../../interfaces';
interface FilterProps {
    style?: CSSProperties;
    className?: string;
    size?: number;
    isFilterActive: boolean;
    FilterPanelContent?: FilterPanelType;
    filterIcon?: ReactNode | ((filtered: boolean) => ReactNode);
    setFilterModel: DefaultFilterPanelProps['setFilterModel'];
    filterModel: DefaultFilterPanelProps['filterModel'];
    setFilter: CustomeFilterPanelProps['setFilter'];
    onClick?: (e: React.MouseEvent) => any;
    stopClickEventPropagation?: boolean;
    stopESCKeyDownEventPropagation?: boolean;
    hideFilterPopupHeader?: boolean;
    getPopupParent?: (triggerElement: HTMLElement) => HTMLElement;
    localeText?: {
        [key: string]: string;
    };
}
declare function Filter({ size, style, className, FilterPanelContent, filterIcon, setFilter, setFilterModel, filterModel, isFilterActive, stopClickEventPropagation, stopESCKeyDownEventPropagation, hideFilterPopupHeader, getPopupParent, localeText }: FilterProps): JSX.Element;
export default Filter;
