import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { CommunicationCreateWithoutUserInputObjectSchema as CommunicationCreateWithoutUserInputObjectSchema } from './CommunicationCreateWithoutUserInput.schema';
import { CommunicationUncheckedCreateWithoutUserInputObjectSchema as CommunicationUncheckedCreateWithoutUserInputObjectSchema } from './CommunicationUncheckedCreateWithoutUserInput.schema';
import { CommunicationCreateOrConnectWithoutUserInputObjectSchema as CommunicationCreateOrConnectWithoutUserInputObjectSchema } from './CommunicationCreateOrConnectWithoutUserInput.schema';
import { CommunicationCreateManyUserInputEnvelopeObjectSchema as CommunicationCreateManyUserInputEnvelopeObjectSchema } from './CommunicationCreateManyUserInputEnvelope.schema';
import { CommunicationWhereUniqueInputObjectSchema as CommunicationWhereUniqueInputObjectSchema } from './CommunicationWhereUniqueInput.schema'

const makeSchema = () => z.object({
  create: z.union([z.lazy(() => CommunicationCreateWithoutUserInputObjectSchema), z.lazy(() => CommunicationCreateWithoutUserInputObjectSchema).array(), z.lazy(() => CommunicationUncheckedCreateWithoutUserInputObjectSchema), z.lazy(() => CommunicationUncheckedCreateWithoutUserInputObjectSchema).array()]).optional(),
  connectOrCreate: z.union([z.lazy(() => CommunicationCreateOrConnectWithoutUserInputObjectSchema), z.lazy(() => CommunicationCreateOrConnectWithoutUserInputObjectSchema).array()]).optional(),
  createMany: z.lazy(() => CommunicationCreateManyUserInputEnvelopeObjectSchema).optional(),
  connect: z.union([z.lazy(() => CommunicationWhereUniqueInputObjectSchema), z.lazy(() => CommunicationWhereUniqueInputObjectSchema).array()]).optional()
}).strict();
export const CommunicationUncheckedCreateNestedManyWithoutUserInputObjectSchema: z.ZodType<Prisma.CommunicationUncheckedCreateNestedManyWithoutUserInput> = makeSchema() as unknown as z.ZodType<Prisma.CommunicationUncheckedCreateNestedManyWithoutUserInput>;
export const CommunicationUncheckedCreateNestedManyWithoutUserInputObjectZodSchema = makeSchema();
