import type { Prisma } from '../../generated/prisma';
import * as z from 'zod';
import { CommunicationSelectObjectSchema as CommunicationSelectObjectSchema } from './objects/CommunicationSelect.schema';
import { CommunicationIncludeObjectSchema as CommunicationIncludeObjectSchema } from './objects/CommunicationInclude.schema';
import { CommunicationUpdateInputObjectSchema as CommunicationUpdateInputObjectSchema } from './objects/CommunicationUpdateInput.schema';
import { CommunicationUncheckedUpdateInputObjectSchema as CommunicationUncheckedUpdateInputObjectSchema } from './objects/CommunicationUncheckedUpdateInput.schema';
import { CommunicationWhereUniqueInputObjectSchema as CommunicationWhereUniqueInputObjectSchema } from './objects/CommunicationWhereUniqueInput.schema';

export const CommunicationUpdateOneSchema: z.ZodType<Prisma.CommunicationUpdateArgs> = z.object({ select: CommunicationSelectObjectSchema.optional(), include: CommunicationIncludeObjectSchema.optional(), data: z.union([CommunicationUpdateInputObjectSchema, CommunicationUncheckedUpdateInputObjectSchema]), where: CommunicationWhereUniqueInputObjectSchema }).strict() as unknown as z.ZodType<Prisma.CommunicationUpdateArgs>;

export const CommunicationUpdateOneZodSchema = z.object({ select: CommunicationSelectObjectSchema.optional(), include: CommunicationIncludeObjectSchema.optional(), data: z.union([CommunicationUpdateInputObjectSchema, CommunicationUncheckedUpdateInputObjectSchema]), where: CommunicationWhereUniqueInputObjectSchema }).strict();