import type { SQLiteDelete, SQLiteSelect } from 'drizzle-orm/sqlite-core';
import type { SQL } from 'drizzle-orm';
import type { Filter, FilterClause } from './types.js';
export declare function applyFilter<T extends SQLiteSelect | SQLiteDelete>(sqlBuilder: T, filter?: Filter): {
    sqlBuilder: T;
    whereCondition: SQL | null;
};
export declare function convertFilterToWhereCondition(filter?: Filter): SQL | undefined;
export declare function getFirstFilterFieldValue(filter: Filter | undefined, fieldName: string): FilterClause['value'] | undefined;
export declare function getAllFilterFieldValues(filter: Filter | undefined, fieldName: string): string[];
export declare function parseFilterQuery(query?: string, availableFields?: string[], fieldsTransformations?: Record<string, string>): Filter | undefined;
export declare function excludeFieldsFromFilter(filter: Filter | undefined, fieldsToExclude: string[]): Filter | undefined;
//# sourceMappingURL=filter.d.ts.map