import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { PatientCreateWithoutClaimsInputObjectSchema as PatientCreateWithoutClaimsInputObjectSchema } from './PatientCreateWithoutClaimsInput.schema';
import { PatientUncheckedCreateWithoutClaimsInputObjectSchema as PatientUncheckedCreateWithoutClaimsInputObjectSchema } from './PatientUncheckedCreateWithoutClaimsInput.schema';
import { PatientCreateOrConnectWithoutClaimsInputObjectSchema as PatientCreateOrConnectWithoutClaimsInputObjectSchema } from './PatientCreateOrConnectWithoutClaimsInput.schema';
import { PatientUpsertWithoutClaimsInputObjectSchema as PatientUpsertWithoutClaimsInputObjectSchema } from './PatientUpsertWithoutClaimsInput.schema';
import { PatientWhereUniqueInputObjectSchema as PatientWhereUniqueInputObjectSchema } from './PatientWhereUniqueInput.schema';
import { PatientUpdateToOneWithWhereWithoutClaimsInputObjectSchema as PatientUpdateToOneWithWhereWithoutClaimsInputObjectSchema } from './PatientUpdateToOneWithWhereWithoutClaimsInput.schema';
import { PatientUpdateWithoutClaimsInputObjectSchema as PatientUpdateWithoutClaimsInputObjectSchema } from './PatientUpdateWithoutClaimsInput.schema';
import { PatientUncheckedUpdateWithoutClaimsInputObjectSchema as PatientUncheckedUpdateWithoutClaimsInputObjectSchema } from './PatientUncheckedUpdateWithoutClaimsInput.schema'

const makeSchema = () => z.object({
  create: z.union([z.lazy(() => PatientCreateWithoutClaimsInputObjectSchema), z.lazy(() => PatientUncheckedCreateWithoutClaimsInputObjectSchema)]).optional(),
  connectOrCreate: z.lazy(() => PatientCreateOrConnectWithoutClaimsInputObjectSchema).optional(),
  upsert: z.lazy(() => PatientUpsertWithoutClaimsInputObjectSchema).optional(),
  connect: z.lazy(() => PatientWhereUniqueInputObjectSchema).optional(),
  update: z.union([z.lazy(() => PatientUpdateToOneWithWhereWithoutClaimsInputObjectSchema), z.lazy(() => PatientUpdateWithoutClaimsInputObjectSchema), z.lazy(() => PatientUncheckedUpdateWithoutClaimsInputObjectSchema)]).optional()
}).strict();
export const PatientUpdateOneRequiredWithoutClaimsNestedInputObjectSchema: z.ZodType<Prisma.PatientUpdateOneRequiredWithoutClaimsNestedInput> = makeSchema() as unknown as z.ZodType<Prisma.PatientUpdateOneRequiredWithoutClaimsNestedInput>;
export const PatientUpdateOneRequiredWithoutClaimsNestedInputObjectZodSchema = makeSchema();
