import * as React from 'react'; import { TransformColumns, ColumnsType, ColumnType, Key, TableLocale, GetPopupContainer } from '../../interface'; export interface FilterState { column: ColumnType; key: Key; filteredKeys?: Key[] | null; forceFiltered?: boolean; filterComponent?: React.ReactNode; } export declare function getFilterData(data: RecordType[], filterStates: FilterState[]): RecordType[]; interface FilterConfig { prefixCls: string; dropdownPrefixCls: string; columns?: ColumnsType; children?: React.ReactNode; locale: TableLocale; onFilterChange: (filters: Record, filterStates: FilterState[]) => void; getPopupContainer?: GetPopupContainer; } declare function useFilter({ prefixCls, dropdownPrefixCls, columns, children, onFilterChange, getPopupContainer, locale: tableLocale, }: FilterConfig): [TransformColumns, FilterState[], () => Record]; export default useFilter;