import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { CommunicationCreateWithoutPatientInputObjectSchema as CommunicationCreateWithoutPatientInputObjectSchema } from './CommunicationCreateWithoutPatientInput.schema';
import { CommunicationUncheckedCreateWithoutPatientInputObjectSchema as CommunicationUncheckedCreateWithoutPatientInputObjectSchema } from './CommunicationUncheckedCreateWithoutPatientInput.schema';
import { CommunicationCreateOrConnectWithoutPatientInputObjectSchema as CommunicationCreateOrConnectWithoutPatientInputObjectSchema } from './CommunicationCreateOrConnectWithoutPatientInput.schema';
import { CommunicationCreateManyPatientInputEnvelopeObjectSchema as CommunicationCreateManyPatientInputEnvelopeObjectSchema } from './CommunicationCreateManyPatientInputEnvelope.schema';
import { CommunicationWhereUniqueInputObjectSchema as CommunicationWhereUniqueInputObjectSchema } from './CommunicationWhereUniqueInput.schema'

const makeSchema = () => z.object({
  create: z.union([z.lazy(() => CommunicationCreateWithoutPatientInputObjectSchema), z.lazy(() => CommunicationCreateWithoutPatientInputObjectSchema).array(), z.lazy(() => CommunicationUncheckedCreateWithoutPatientInputObjectSchema), z.lazy(() => CommunicationUncheckedCreateWithoutPatientInputObjectSchema).array()]).optional(),
  connectOrCreate: z.union([z.lazy(() => CommunicationCreateOrConnectWithoutPatientInputObjectSchema), z.lazy(() => CommunicationCreateOrConnectWithoutPatientInputObjectSchema).array()]).optional(),
  createMany: z.lazy(() => CommunicationCreateManyPatientInputEnvelopeObjectSchema).optional(),
  connect: z.union([z.lazy(() => CommunicationWhereUniqueInputObjectSchema), z.lazy(() => CommunicationWhereUniqueInputObjectSchema).array()]).optional()
}).strict();
export const CommunicationUncheckedCreateNestedManyWithoutPatientInputObjectSchema: z.ZodType<Prisma.CommunicationUncheckedCreateNestedManyWithoutPatientInput> = makeSchema() as unknown as z.ZodType<Prisma.CommunicationUncheckedCreateNestedManyWithoutPatientInput>;
export const CommunicationUncheckedCreateNestedManyWithoutPatientInputObjectZodSchema = makeSchema();
