dynamodb-toolbox
Version:
Lightweight and type-safe query builder for DynamoDB and TypeScript.
8 lines (7 loc) • 1.12 kB
TypeScript
import type { ZodSet } from 'zod';
import type { NumberSchema, NumberSchemaProps, SetSchema, SetSchema_, StringSchema, StringSchemaProps } from '../../../index.js';
import type { SetElementProps } from '../../../schema/set/types.js';
import type { SchemaProps } from '../../../schema/types/schemaProps.js';
import type { FromZodSchema } from './fromZodSchema.js';
export type FromZodSet<ZOD_SCHEMA extends ZodSet, ROOT extends boolean = true, PROPS extends SchemaProps = {}> = ZOD_SCHEMA extends ZodSet<infer ZOD_SCHEMA_ELEMENTS> ? (FromZodSchema<ZOD_SCHEMA_ELEMENTS, false> extends NumberSchema<NumberSchemaProps & SetElementProps> ? ROOT extends true ? SetSchema_<FromZodSchema<ZOD_SCHEMA_ELEMENTS, false>, PROPS> : SetSchema<FromZodSchema<ZOD_SCHEMA_ELEMENTS, false>, PROPS> : never) | (FromZodSchema<ZOD_SCHEMA_ELEMENTS, false> extends StringSchema<StringSchemaProps & SetElementProps> ? ROOT extends true ? SetSchema_<FromZodSchema<ZOD_SCHEMA_ELEMENTS, false>, PROPS> : SetSchema<FromZodSchema<ZOD_SCHEMA_ELEMENTS, false>, PROPS> : never) : never;
export declare const fromZodSet: (zodSet: ZodSet) => SetSchema;