import type { ColumnFiltersState, FilterFn } from '@tanstack/react-table'; import type { ColumnFilterConfig, ColumnFilterOption, FilterCondition, FilterField, TableFiltersState } from '../../types/datatable'; /** Normalize string[] | {label,value}[] options to a consistent shape. */ export declare function normalizeFilterOptions(options?: ColumnFilterOption[] | string[]): ColumnFilterOption[]; /** Group FilterField[] by `field` (preserves order of first occurrence). */ export declare function groupFiltersByField(filters: TableFiltersState): Map; export declare function filtersToColumnFilters(filters: TableFiltersState): ColumnFiltersState; /** * Convert TanStack column-filter values back to FilterField[]. * Supports FilterField[] (header filters) and string[] (legacy toolbar). */ export declare function columnFiltersToFilterFields(columnFilters: ColumnFiltersState): TableFiltersState; /** * Read selected option values from a column filter value, whether it is * legacy `string[]` or current `FilterField[]`. */ export declare function getSelectedFilterValues(filterValue: unknown): Set; export declare function applyCondition(cellValue: unknown, condition: FilterCondition | string, filterValue: string): boolean; /** * Client-side column filter. Accepts FilterField[] (current) or string[] * (legacy toolbar values) so older call sites keep working. */ export declare const columnFilterFn: FilterFn; export declare function findFilterConfig(configs: ColumnFilterConfig[] | undefined, columnId: string): ColumnFilterConfig | undefined;