surrealdb-zod
Version:
Re-useable zod schema's for use with SurrealDB sdk
32 lines (31 loc) • 3.14 kB
TypeScript
import { BoundExcluded, BoundIncluded, Decimal, Duration, Future, GeometryCollection, GeometryLine, GeometryMultiLine, GeometryMultiPoint, GeometryMultiPolygon, GeometryPoint, GeometryPolygon, Range, RecordId, RecordIdRange, StringRecordId, Table, Uuid } from 'surrealdb';
import { output, ZodType } from 'zod';
export declare const DecimalSchema: import('zod').ZodCustom<Decimal, Decimal>;
export declare const DurationSchema: import('zod').ZodCustom<Duration, Duration>;
export declare const FutureSchema: import('zod').ZodCustom<Future, Future>;
export declare const GeometryPointSchema: import('zod').ZodCustom<GeometryPoint, GeometryPoint>;
export declare const GeometryLineSchema: import('zod').ZodCustom<GeometryLine, GeometryLine>;
export declare const GeometryPolygonSchema: import('zod').ZodCustom<GeometryPolygon, GeometryPolygon>;
export declare const GeometryMultiPointSchema: import('zod').ZodCustom<GeometryMultiPoint, GeometryMultiPoint>;
export declare const GeometryMultiLineSchema: import('zod').ZodCustom<GeometryMultiLine, GeometryMultiLine>;
export declare const GeometryMultiPolygonSchema: import('zod').ZodCustom<GeometryMultiPolygon, GeometryMultiPolygon>;
export declare const GeometryCollectionSchema: import('zod').ZodCustom<GeometryCollection, GeometryCollection>;
export declare function RangeSchema<Beg extends ZodType, End extends ZodType>(begValueSchema: Beg, endValueSchema: End): import('zod').ZodCustom<Range<output<Beg>, output<End>>, Range<output<Beg>, output<End>>>;
export declare function BoundIncludedSchema<T extends ZodType>(valueSchema: T): import('zod').ZodCustom<BoundIncluded<T>, BoundIncluded<T>>;
export declare function BoundExcludedSchema<T extends ZodType>(valueSchema: T): import('zod').ZodCustom<BoundExcluded<T>, BoundExcluded<T>>;
export declare const RecordIdRangeSchema: import('zod').ZodCustom<RecordIdRange<string>, RecordIdRange<string>>;
export declare function RecordIdRangeSchemaOf<Tb extends string>(table: Tb): import('zod').ZodCustom<RecordIdRange<Tb>, RecordIdRange<Tb>>;
export declare const RecordIdSchema: import('zod').ZodCustom<RecordId<string>, RecordId<string>>;
export declare function RecordIdSchemaOf<Tb extends string>(table: Tb): import('zod').ZodCustom<RecordId<Tb>, RecordId<Tb>>;
export declare const StringRecordIdSchema: import('zod').ZodCustom<StringRecordId, StringRecordId>;
export declare const RecordSchema: import('zod').ZodObject<{
id: import('zod').ZodCustom<RecordId<string>, RecordId<string>>;
}, import('zod/v4/core').$strip>;
export declare function RecordSchemaOf<Tb extends string>(table: Tb): import('zod').ZodObject<{
id: import('zod').ZodCustom<RecordId<Tb>, RecordId<Tb>>;
}, import('zod/v4/core').$strip>;
export declare const TableSchema: import('zod').ZodCustom<Table<string>, Table<string>>;
export declare function TableSchemaOf<Tb extends string>(table: Tb): import('zod').ZodCustom<Table<Tb>, Table<Tb>>;
export declare const UuidSchema: import('zod').ZodCustom<Uuid, Uuid>;
export type Record = output<typeof RecordSchema>;
export type RecordOf<Tb extends string = string> = output<ReturnType<typeof RecordSchemaOf<Tb>>>;