import type { ZodSchema, ZodType } from 'zod'; import { ZodBigInt, ZodBoolean, ZodNull, ZodNumber, ZodSet, ZodString } from 'zod'; import type { Schema } from '../../../schema/types/schema.js'; import type { SchemaProps } from '../../../schema/types/schemaProps.js'; import type { FromZodArray, ZodArrayAny } from './zodArray.js'; import type { FromZodBigInt } from './zodBigInt.js'; import type { FromZodBoolean } from './zodBoolean.js'; import type { FromZodCustom } from './zodCustom.js'; import type { FromZodDefault, ZodDefaultAny } from './zodDefault.js'; import type { FromZodDiscriminatedUnion, ZodDiscriminatedUnionAny } from './zodDiscriminatedUnion.js'; import type { FromZodEffects, ZodEffectsAny } from './zodEffects.js'; import type { FromZodEnum, ZodEnumAny } from './zodEnum.js'; import type { FromZodLiteral, ZodLiteralAny } from './zodLiteral.js'; import type { FromZodNull } from './zodNull.js'; import type { FromZodNumber } from './zodNumber.js'; import type { FromZodObject, ZodObjectAny } from './zodObject.js'; import type { FromZodOptional, ZodOptionalAny } from './zodOptional.js'; import type { FromZodRecord, ZodRecordAny } from './zodRecord.js'; import type { FromZodSet } from './zodSet.js'; import type { FromZodString } from './zodString.js'; import type { FromZodTuple, ZodTupleAny } from './zodTuple.js'; import type { FromZodUnion, ZodUnionAny } from './zodUnion.js'; type ZodSpecialSchema = ZodNull | ZodBoolean | ZodNumber | ZodBigInt | ZodString | ZodLiteralAny | ZodEnumAny | ZodSet | ZodArrayAny | ZodTupleAny | ZodObjectAny | ZodRecordAny | ZodUnionAny | ZodDiscriminatedUnionAny | ZodOptionalAny | ZodDefaultAny | ZodEffectsAny; type FromZodSpecialSchema = ZOD_SCHEMA extends ZodSpecialSchema ? (ZOD_SCHEMA extends ZodNull ? FromZodNull : never) | (ZOD_SCHEMA extends ZodBoolean ? FromZodBoolean : never) | (ZOD_SCHEMA extends ZodNumber ? FromZodNumber : never) | (ZOD_SCHEMA extends ZodBigInt ? FromZodBigInt : never) | (ZOD_SCHEMA extends ZodString ? FromZodString : never) | (ZOD_SCHEMA extends ZodLiteralAny ? FromZodLiteral : never) | (ZOD_SCHEMA extends ZodEnumAny ? FromZodEnum : never) | (ZOD_SCHEMA extends ZodSet ? FromZodSet : never) | (ZOD_SCHEMA extends ZodArrayAny ? FromZodArray : never) | (ZOD_SCHEMA extends ZodTupleAny ? FromZodTuple : never) | (ZOD_SCHEMA extends ZodObjectAny ? FromZodObject : never) | (ZOD_SCHEMA extends ZodRecordAny ? FromZodRecord : never) | (ZOD_SCHEMA extends ZodUnionAny ? FromZodUnion : never) | (ZOD_SCHEMA extends ZodDiscriminatedUnionAny ? FromZodDiscriminatedUnion : never) | (ZOD_SCHEMA extends ZodOptionalAny ? FromZodOptional : never) | (ZOD_SCHEMA extends ZodDefaultAny ? FromZodDefault : never) | (ZOD_SCHEMA extends ZodEffectsAny ? FromZodEffects : never) : never; type ZodGeneralSchema = ZodType; type FromZodGeneralSchema = FromZodCustom; export type FromZodSchema = ZOD_SCHEMA extends ZodSpecialSchema ? FromZodSpecialSchema : ZOD_SCHEMA extends ZodType ? FromZodGeneralSchema : never; export type FromZodSchemaRec = ZOD_SCHEMAS extends [ infer ZOD_SCHEMAS_HEAD extends ZodSchema, ...infer ZOD_SCHEMAS_TAIL extends ZodSchema[] ] ? FromZodSchemaRec ]> : RESULT_SCHEMAS; export declare const fromZodSchema: (zodSchema: ZOD_SCHEMA) => FromZodSchema; export {};