export interface Filter { propKey?: keyof T; name: string; filter: (element: T, filterCriteria: M) => boolean | null; } export declare function filterData(data: T[], filters: Filter[], filterCriteria: M, strategy?: 'AND' | 'OR'): T[];