import { z } from 'zod'; /** * Schema for data table filter parameters */ export declare const dataTableFilterSchema: z.ZodObject<{ page: z.ZodDefault; pageSize: z.ZodDefault; sortField: z.ZodOptional; sortOrder: z.ZodDefault>; dataTableSearch: z.ZodOptional; }, "passthrough", z.ZodTypeAny, z.objectOutputType<{ page: z.ZodDefault; pageSize: z.ZodDefault; sortField: z.ZodOptional; sortOrder: z.ZodDefault>; dataTableSearch: z.ZodOptional; }, z.ZodTypeAny, "passthrough">, z.objectInputType<{ page: z.ZodDefault; pageSize: z.ZodDefault; sortField: z.ZodOptional; sortOrder: z.ZodDefault>; dataTableSearch: z.ZodOptional; }, z.ZodTypeAny, "passthrough">>; /** * Type for data table filter parameters */ export type DataTableFilterParams = z.infer & { [key: string]: string | string[] | number | undefined; }; /** * Create a schema for a specific filter configuration */ export declare function createFilterSchema(filterableColumns?: { id: keyof TData; options: { value: string; }[]; }[], searchableColumns?: { id: keyof TData; }[]): z.ZodObject<{ page: z.ZodDefault; pageSize: z.ZodDefault; sortField: z.ZodOptional; sortOrder: z.ZodDefault>; dataTableSearch: z.ZodOptional; }, "passthrough", z.ZodTypeAny, z.objectOutputType<{ page: z.ZodDefault; pageSize: z.ZodDefault; sortField: z.ZodOptional; sortOrder: z.ZodDefault>; dataTableSearch: z.ZodOptional; }, z.ZodTypeAny, "passthrough">, z.objectInputType<{ page: z.ZodDefault; pageSize: z.ZodDefault; sortField: z.ZodOptional; sortOrder: z.ZodDefault>; dataTableSearch: z.ZodOptional; }, z.ZodTypeAny, "passthrough">>; //# sourceMappingURL=data-table-schema.d.ts.map