import type { QueryOperator } from '../core/types'; /** * Fragment return type */ export type FilterFragment = Record; /** * Create a query fragment with any operator * * @example * ```typescript * const filter = fragment('age', 'gte', 18); * // { age__gte: 18 } * ``` */ export declare function fragment(field: string, operator: QueryOperator, value: unknown): FilterFragment; /** * Create date range fragment (between dates) * * @example * ```typescript * const filter = dateRange('created_at', '2024-01-01', '2024-12-31'); * // { created_at__between: ['2024-01-01', '2024-12-31'] } * ``` */ export declare function dateRange(field: string, from: string, to: string): FilterFragment; /** * Create IN list fragment * * @example * ```typescript * const filter = inList('status', ['active', 'pending']); * // { status__in: ['active', 'pending'] } * ``` */ export declare function inList(field: string, values: unknown[]): FilterFragment; /** * Create NOT IN list fragment * * @example * ```typescript * const filter = notInList('status', ['deleted', 'banned']); * // { status__notin: ['deleted', 'banned'] } * ``` */ export declare function notInList(field: string, values: unknown[]): FilterFragment; /** * Create IS NULL fragment * * @example * ```typescript * const filter = isNull('deleted_at'); * // { deleted_at__isnull: true } * ``` */ export declare function isNull(field: string): FilterFragment; /** * Create IS NOT NULL fragment * * @example * ```typescript * const filter = isNotNull('published_at'); * // { published_at__isnotnull: true } * ``` */ export declare function isNotNull(field: string): FilterFragment; /** * Create text contains fragment (case-insensitive) * * @example * ```typescript * const filter = contains('name', 'john'); * // { name__contains: 'john' } * ``` */ export declare function contains(field: string, value: string): FilterFragment; /** * Create starts with fragment * * @example * ```typescript * const filter = startsWith('email', 'admin@'); * // { email__startswith: 'admin@' } * ``` */ export declare function startsWith(field: string, value: string): FilterFragment; /** * Create ends with fragment * * @example * ```typescript * const filter = endsWith('email', '@gmail.com'); * // { email__endswith: '@gmail.com' } * ``` */ export declare function endsWith(field: string, value: string): FilterFragment; /** * Create BETWEEN fragment for numeric/date ranges * * @example * ```typescript * const filter = between('age', 18, 65); * // { age__between: [18, 65] } * ``` */ export declare function between(field: string, from: unknown, to: unknown): FilterFragment; /** * Create greater than fragment * * @example * ```typescript * const filter = greaterThan('age', 18); * // { age__gt: 18 } * ``` */ export declare function greaterThan(field: string, value: unknown): FilterFragment; /** * Create greater than or equal fragment * * @example * ```typescript * const filter = greaterThanOrEqual('age', 18); * // { age__gte: 18 } * ``` */ export declare function greaterThanOrEqual(field: string, value: unknown): FilterFragment; /** * Create less than fragment * * @example * ```typescript * const filter = lessThan('age', 65); * // { age__lt: 65 } * ``` */ export declare function lessThan(field: string, value: unknown): FilterFragment; /** * Create less than or equal fragment * * @example * ```typescript * const filter = lessThanOrEqual('age', 65); * // { age__lte: 65 } * ``` */ export declare function lessThanOrEqual(field: string, value: unknown): FilterFragment; /** * Create exact match fragment * * @example * ```typescript * const filter = exact('status', 'active'); * // { status: 'active' } * ``` */ export declare function exact(field: string, value: unknown): FilterFragment; /** * Create not equal fragment * * @example * ```typescript * const filter = notEqual('status', 'deleted'); * // { status__notexact: 'deleted' } * ``` */ export declare function notEqual(field: string, value: unknown): FilterFragment; //# sourceMappingURL=fragment.d.ts.map