import { OPERATORS } from './constants.js';
export type SortOption = {
    field: string;
    order: 'ASC' | 'DESC';
};
export type FilterClause = {
    field: string;
    operator: 'equal' | 'contains' | 'in' | 'between';
    value: string | number | boolean | null | string[];
    parentFields?: string[];
    modifier?: 'not';
};
export type FilterOperator = (typeof OPERATORS)[keyof typeof OPERATORS];
export type FilterCondition = {
    op: FilterOperator;
    conditions: (FilterClause | FilterCondition)[];
};
export type Filter = FilterClause | FilterCondition;
export declare const isFilterCondition: (condition: FilterCondition | FilterClause) => condition is FilterCondition;
export type SearchOptions = {
    searchableFields: string[];
    value: string;
};
export type PaginationParamsInput = {
    after?: string;
    before?: string;
    sort?: string;
    filter?: string;
    search?: string;
    limit?: string | number;
    skip?: string | number;
};
//# sourceMappingURL=types.d.ts.map