UNPKG

dynamodb-toolbox

Version:

Lightweight and type-safe query builder for DynamoDB and TypeScript.

8 lines (7 loc) 893 B
import type { KeySchema, ZodRecord } from 'zod'; import type { RecordSchema, RecordSchema_, StringSchema } from '../../../index.js'; import type { SchemaProps } from '../../../schema/types/schemaProps.js'; import type { FromZodSchema } from './fromZodSchema.js'; export type ZodRecordAny = ZodRecord<KeySchema>; export type FromZodRecord<ZOD_SCHEMA extends ZodRecordAny, ROOT extends boolean = true, PROPS extends SchemaProps = {}> = ZOD_SCHEMA extends ZodRecord<infer ZOD_SCHEMA_KEYS, infer ZOD_SCHEMA_VALUES> ? FromZodSchema<ZOD_SCHEMA_KEYS, false> extends StringSchema ? ROOT extends true ? RecordSchema_<FromZodSchema<ZOD_SCHEMA_KEYS, false>, FromZodSchema<ZOD_SCHEMA_VALUES, false>, PROPS> : RecordSchema<FromZodSchema<ZOD_SCHEMA_KEYS, false>, FromZodSchema<ZOD_SCHEMA_VALUES, false>, PROPS> : never : never; export declare const fromZodRecord: (zodRecord: ZodRecordAny) => RecordSchema;