import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { PatientUpdateWithoutCommunicationsInputObjectSchema as PatientUpdateWithoutCommunicationsInputObjectSchema } from './PatientUpdateWithoutCommunicationsInput.schema';
import { PatientUncheckedUpdateWithoutCommunicationsInputObjectSchema as PatientUncheckedUpdateWithoutCommunicationsInputObjectSchema } from './PatientUncheckedUpdateWithoutCommunicationsInput.schema';
import { PatientCreateWithoutCommunicationsInputObjectSchema as PatientCreateWithoutCommunicationsInputObjectSchema } from './PatientCreateWithoutCommunicationsInput.schema';
import { PatientUncheckedCreateWithoutCommunicationsInputObjectSchema as PatientUncheckedCreateWithoutCommunicationsInputObjectSchema } from './PatientUncheckedCreateWithoutCommunicationsInput.schema';
import { PatientWhereInputObjectSchema as PatientWhereInputObjectSchema } from './PatientWhereInput.schema'

const makeSchema = () => z.object({
  update: z.union([z.lazy(() => PatientUpdateWithoutCommunicationsInputObjectSchema), z.lazy(() => PatientUncheckedUpdateWithoutCommunicationsInputObjectSchema)]),
  create: z.union([z.lazy(() => PatientCreateWithoutCommunicationsInputObjectSchema), z.lazy(() => PatientUncheckedCreateWithoutCommunicationsInputObjectSchema)]),
  where: z.lazy(() => PatientWhereInputObjectSchema).optional()
}).strict();
export const PatientUpsertWithoutCommunicationsInputObjectSchema: z.ZodType<Prisma.PatientUpsertWithoutCommunicationsInput> = makeSchema() as unknown as z.ZodType<Prisma.PatientUpsertWithoutCommunicationsInput>;
export const PatientUpsertWithoutCommunicationsInputObjectZodSchema = makeSchema();
