import type { ColumnFilterConfig } from './dynamic-columns-shim'; interface FilterFieldColumn { key?: string; filterField?: string; /** snake_case spelling emitted by some kernels. */ filter_field?: string; } /** * Honors `ColumnDefinition.filterField`: a display column (e.g. * `institution_type.name`) filters by its persisted field (`institution_type_id`). * The header filter keeps living on the display column, but its `filterKey` — * and therefore the `f_*` param sent to the backend — becomes the filterField. * When the filterField has its own option source (static options, searchEndpoint * or loader) the column adopts it, so options are the FK values. A column whose filterField has no config of its own keeps its display options * (which may be names, not FK ids) while its selection is read from the * filterField key. Columns without * `filterField` (or equal to their key) are returned untouched. */ export declare function applyColumnFilterFields(columns: readonly FilterFieldColumn[] | undefined, configs: Map, dynamicFilters?: Record): Map; export {}; //# sourceMappingURL=column-filter-field.d.ts.map