UNPKG

antd

Version:

An enterprise-class UI design language and React components implementation

24 lines (23 loc) 1.15 kB
import type { ColumnFilterItem, ColumnsType, ColumnType, FilterKey, FilterValue, GetPopupContainer, Key, TableLocale, TransformColumns } from '../../interface'; export interface FilterState<RecordType> { column: ColumnType<RecordType>; key: Key; filteredKeys?: FilterKey; forceFiltered?: boolean; } export declare function flattenKeys(filters?: ColumnFilterItem[]): FilterValue; export declare function getFilterData<RecordType>(data: RecordType[], filterStates: FilterState<RecordType>[]): RecordType[]; interface FilterConfig<RecordType> { prefixCls: string; dropdownPrefixCls: string; mergedColumns: ColumnsType<RecordType>; locale: TableLocale; onFilterChange: (filters: Record<string, FilterValue | null>, filterStates: FilterState<RecordType>[]) => void; getPopupContainer?: GetPopupContainer; } declare function useFilter<RecordType>({ prefixCls, dropdownPrefixCls, mergedColumns, onFilterChange, getPopupContainer, locale: tableLocale, }: FilterConfig<RecordType>): [ TransformColumns<RecordType>, FilterState<RecordType>[], Record<string, FilterValue | null> ]; export default useFilter;