import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { PatientCreateWithoutCommunicationsInputObjectSchema as PatientCreateWithoutCommunicationsInputObjectSchema } from './PatientCreateWithoutCommunicationsInput.schema';
import { PatientUncheckedCreateWithoutCommunicationsInputObjectSchema as PatientUncheckedCreateWithoutCommunicationsInputObjectSchema } from './PatientUncheckedCreateWithoutCommunicationsInput.schema';
import { PatientCreateOrConnectWithoutCommunicationsInputObjectSchema as PatientCreateOrConnectWithoutCommunicationsInputObjectSchema } from './PatientCreateOrConnectWithoutCommunicationsInput.schema';
import { PatientWhereUniqueInputObjectSchema as PatientWhereUniqueInputObjectSchema } from './PatientWhereUniqueInput.schema'

const makeSchema = () => z.object({
  create: z.union([z.lazy(() => PatientCreateWithoutCommunicationsInputObjectSchema), z.lazy(() => PatientUncheckedCreateWithoutCommunicationsInputObjectSchema)]).optional(),
  connectOrCreate: z.lazy(() => PatientCreateOrConnectWithoutCommunicationsInputObjectSchema).optional(),
  connect: z.lazy(() => PatientWhereUniqueInputObjectSchema).optional()
}).strict();
export const PatientCreateNestedOneWithoutCommunicationsInputObjectSchema: z.ZodType<Prisma.PatientCreateNestedOneWithoutCommunicationsInput> = makeSchema() as unknown as z.ZodType<Prisma.PatientCreateNestedOneWithoutCommunicationsInput>;
export const PatientCreateNestedOneWithoutCommunicationsInputObjectZodSchema = makeSchema();
