import { z } from "zod";
import type { PaginatedSdkFunction } from "../../../types/functions";
import { RecordItemSchema, type RecordItem } from "../getTableRecord/schemas";
export { RecordItemSchema };
export type { RecordItem };
export declare const ListTableRecordsApiResponseSchema: z.ZodObject<{
    data: z.ZodArray<z.ZodObject<{
        id: z.ZodString;
        data: z.ZodRecord<z.ZodString, z.ZodUnknown>;
        created_at: z.ZodString;
        edited_at: z.ZodString;
        schema_revision_id: z.ZodNumber;
        errors: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
        orig_data: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
        is_source_record: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
    }, z.core.$strip>>;
    meta: z.ZodOptional<z.ZodObject<{
        pagination: z.ZodOptional<z.ZodObject<{
            start_cursor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
            end_cursor: z.ZodOptional<z.ZodNullable<z.ZodString>>;
            has_more: z.ZodOptional<z.ZodBoolean>;
            has_less: z.ZodOptional<z.ZodBoolean>;
        }, z.core.$strip>>;
    }, z.core.$strip>>;
}, z.core.$strip>;
export type ListTableRecordsApiResponse = z.infer<typeof ListTableRecordsApiResponseSchema>;
declare const FilterOperatorSchema: z.ZodEnum<{
    in: "in";
    contains: "contains";
    gt: "gt";
    gte: "gte";
    lt: "lt";
    lte: "lte";
    search: "search";
    exact: "exact";
    different: "different";
    icontains: "icontains";
    range: "range";
    isnull: "isnull";
    startswith: "startswith";
    is_within: "is_within";
}>;
export type FilterOperator = z.infer<typeof FilterOperatorSchema>;
declare const FilterConditionSchema: z.ZodObject<{
    fieldKey: z.ZodString;
    operator: z.ZodEnum<{
        in: "in";
        contains: "contains";
        gt: "gt";
        gte: "gte";
        lt: "lt";
        lte: "lte";
        search: "search";
        exact: "exact";
        different: "different";
        icontains: "icontains";
        range: "range";
        isnull: "isnull";
        startswith: "startswith";
        is_within: "is_within";
    }>;
    value: z.ZodOptional<z.ZodUnknown>;
}, z.core.$strip>;
export type FilterCondition = z.infer<typeof FilterConditionSchema>;
export declare const SortConditionSchema: z.ZodObject<{
    fieldKey: z.ZodString;
    direction: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
        asc: "asc";
        desc: "desc";
    }>>>;
}, z.core.$strip>;
export type SortCondition = z.infer<typeof SortConditionSchema>;
export declare const ListTableRecordsOptionsSchema: z.ZodObject<{
    table: z.ZodString & {
        _def: z.core.$ZodStringDef & import("../../..").PositionalMetadata;
    };
    filters: z.ZodOptional<z.ZodArray<z.ZodObject<{
        fieldKey: z.ZodString;
        operator: z.ZodEnum<{
            in: "in";
            contains: "contains";
            gt: "gt";
            gte: "gte";
            lt: "lt";
            lte: "lte";
            search: "search";
            exact: "exact";
            different: "different";
            icontains: "icontains";
            range: "range";
            isnull: "isnull";
            startswith: "startswith";
            is_within: "is_within";
        }>;
        value: z.ZodOptional<z.ZodUnknown>;
    }, z.core.$strip>>>;
    sort: z.ZodOptional<z.ZodObject<{
        fieldKey: z.ZodString;
        direction: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
            asc: "asc";
            desc: "desc";
        }>>>;
    }, z.core.$strip>>;
    pageSize: z.ZodOptional<z.ZodNumber>;
    maxItems: z.ZodOptional<z.ZodNumber>;
    cursor: z.ZodOptional<z.ZodString>;
    keyMode: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
        names: "names";
        ids: "ids";
    }>>>;
}, z.core.$strip>;
declare const ListTableRecordsOptionsSchemaDeprecated: z.ZodObject<{
    tableId: z.ZodString;
    filters: z.ZodOptional<z.ZodArray<z.ZodObject<{
        fieldKey: z.ZodString;
        operator: z.ZodEnum<{
            in: "in";
            contains: "contains";
            gt: "gt";
            gte: "gte";
            lt: "lt";
            lte: "lte";
            search: "search";
            exact: "exact";
            different: "different";
            icontains: "icontains";
            range: "range";
            isnull: "isnull";
            startswith: "startswith";
            is_within: "is_within";
        }>;
        value: z.ZodOptional<z.ZodUnknown>;
    }, z.core.$strip>>>;
    sort: z.ZodOptional<z.ZodObject<{
        fieldKey: z.ZodString;
        direction: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
            asc: "asc";
            desc: "desc";
        }>>>;
    }, z.core.$strip>>;
    pageSize: z.ZodOptional<z.ZodNumber>;
    maxItems: z.ZodOptional<z.ZodNumber>;
    cursor: z.ZodOptional<z.ZodString>;
    keyMode: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
        names: "names";
        ids: "ids";
    }>>>;
}, z.core.$strip>;
export declare const ListTableRecordsOptionsInputSchema: z.ZodUnion<readonly [z.ZodObject<{
    table: z.ZodString & {
        _def: z.core.$ZodStringDef & import("../../..").PositionalMetadata;
    };
    filters: z.ZodOptional<z.ZodArray<z.ZodObject<{
        fieldKey: z.ZodString;
        operator: z.ZodEnum<{
            in: "in";
            contains: "contains";
            gt: "gt";
            gte: "gte";
            lt: "lt";
            lte: "lte";
            search: "search";
            exact: "exact";
            different: "different";
            icontains: "icontains";
            range: "range";
            isnull: "isnull";
            startswith: "startswith";
            is_within: "is_within";
        }>;
        value: z.ZodOptional<z.ZodUnknown>;
    }, z.core.$strip>>>;
    sort: z.ZodOptional<z.ZodObject<{
        fieldKey: z.ZodString;
        direction: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
            asc: "asc";
            desc: "desc";
        }>>>;
    }, z.core.$strip>>;
    pageSize: z.ZodOptional<z.ZodNumber>;
    maxItems: z.ZodOptional<z.ZodNumber>;
    cursor: z.ZodOptional<z.ZodString>;
    keyMode: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
        names: "names";
        ids: "ids";
    }>>>;
}, z.core.$strip>, z.ZodObject<{
    tableId: z.ZodString;
    filters: z.ZodOptional<z.ZodArray<z.ZodObject<{
        fieldKey: z.ZodString;
        operator: z.ZodEnum<{
            in: "in";
            contains: "contains";
            gt: "gt";
            gte: "gte";
            lt: "lt";
            lte: "lte";
            search: "search";
            exact: "exact";
            different: "different";
            icontains: "icontains";
            range: "range";
            isnull: "isnull";
            startswith: "startswith";
            is_within: "is_within";
        }>;
        value: z.ZodOptional<z.ZodUnknown>;
    }, z.core.$strip>>>;
    sort: z.ZodOptional<z.ZodObject<{
        fieldKey: z.ZodString;
        direction: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
            asc: "asc";
            desc: "desc";
        }>>>;
    }, z.core.$strip>>;
    pageSize: z.ZodOptional<z.ZodNumber>;
    maxItems: z.ZodOptional<z.ZodNumber>;
    cursor: z.ZodOptional<z.ZodString>;
    keyMode: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
        names: "names";
        ids: "ids";
    }>>>;
}, z.core.$strip>]>;
export type ListTableRecordsOptions = z.infer<typeof ListTableRecordsOptionsSchema> | (Omit<z.infer<typeof ListTableRecordsOptionsSchemaDeprecated>, "tableId"> & {
    /** @deprecated Use `table` instead. */
    tableId: z.infer<typeof ListTableRecordsOptionsSchemaDeprecated>["tableId"];
});
export interface ListTableRecordsPage {
    data: RecordItem[];
    nextCursor?: string;
}
export interface ListTableRecordsSdkFunction {
    listTableRecords: PaginatedSdkFunction<ListTableRecordsOptions, RecordItem>;
}
//# sourceMappingURL=schemas.d.ts.map