import { Component } from 'react';
import { ColumnProps } from './interface';
import ConfigContext, { ConfigContextValue } from '../config-provider/ConfigContext';
export interface ColumnFilterProps<T> {
    prefixCls?: string;
    columns?: ColumnProps<T>[];
    onColumnFilterChange?: (item?: any) => void;
    getPopupContainer?: (triggerNode?: Element) => HTMLElement;
}
export interface ColumnFilterState {
    open: boolean;
}
export default class ColumnFilter<T> extends Component<ColumnFilterProps<T>, ColumnFilterState> {
    static get contextType(): typeof ConfigContext;
    static displayName: string;
    context: ConfigContextValue;
    state: {
        open: boolean;
    };
    render(): JSX.Element;
    onMenuSelect: (item: any) => void;
    onMenuDeselect: (item: any) => void;
    onDropdownVisibleChange: (open: boolean) => void;
    fireChange(item?: any): void;
    getOptions(): any;
    getVisibleColumns(): ColumnProps<T>[];
}
