import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { UserCreateWithoutInsuranceContactsInputObjectSchema as UserCreateWithoutInsuranceContactsInputObjectSchema } from './UserCreateWithoutInsuranceContactsInput.schema';
import { UserUncheckedCreateWithoutInsuranceContactsInputObjectSchema as UserUncheckedCreateWithoutInsuranceContactsInputObjectSchema } from './UserUncheckedCreateWithoutInsuranceContactsInput.schema';
import { UserCreateOrConnectWithoutInsuranceContactsInputObjectSchema as UserCreateOrConnectWithoutInsuranceContactsInputObjectSchema } from './UserCreateOrConnectWithoutInsuranceContactsInput.schema';
import { UserWhereUniqueInputObjectSchema as UserWhereUniqueInputObjectSchema } from './UserWhereUniqueInput.schema'

const makeSchema = () => z.object({
  create: z.union([z.lazy(() => UserCreateWithoutInsuranceContactsInputObjectSchema), z.lazy(() => UserUncheckedCreateWithoutInsuranceContactsInputObjectSchema)]).optional(),
  connectOrCreate: z.lazy(() => UserCreateOrConnectWithoutInsuranceContactsInputObjectSchema).optional(),
  connect: z.lazy(() => UserWhereUniqueInputObjectSchema).optional()
}).strict();
export const UserCreateNestedOneWithoutInsuranceContactsInputObjectSchema: z.ZodType<Prisma.UserCreateNestedOneWithoutInsuranceContactsInput> = makeSchema() as unknown as z.ZodType<Prisma.UserCreateNestedOneWithoutInsuranceContactsInput>;
export const UserCreateNestedOneWithoutInsuranceContactsInputObjectZodSchema = makeSchema();
