import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { AppointmentUpdateWithoutFilesInputObjectSchema as AppointmentUpdateWithoutFilesInputObjectSchema } from './AppointmentUpdateWithoutFilesInput.schema';
import { AppointmentUncheckedUpdateWithoutFilesInputObjectSchema as AppointmentUncheckedUpdateWithoutFilesInputObjectSchema } from './AppointmentUncheckedUpdateWithoutFilesInput.schema';
import { AppointmentCreateWithoutFilesInputObjectSchema as AppointmentCreateWithoutFilesInputObjectSchema } from './AppointmentCreateWithoutFilesInput.schema';
import { AppointmentUncheckedCreateWithoutFilesInputObjectSchema as AppointmentUncheckedCreateWithoutFilesInputObjectSchema } from './AppointmentUncheckedCreateWithoutFilesInput.schema';
import { AppointmentWhereInputObjectSchema as AppointmentWhereInputObjectSchema } from './AppointmentWhereInput.schema'

const makeSchema = () => z.object({
  update: z.union([z.lazy(() => AppointmentUpdateWithoutFilesInputObjectSchema), z.lazy(() => AppointmentUncheckedUpdateWithoutFilesInputObjectSchema)]),
  create: z.union([z.lazy(() => AppointmentCreateWithoutFilesInputObjectSchema), z.lazy(() => AppointmentUncheckedCreateWithoutFilesInputObjectSchema)]),
  where: z.lazy(() => AppointmentWhereInputObjectSchema).optional()
}).strict();
export const AppointmentUpsertWithoutFilesInputObjectSchema: z.ZodType<Prisma.AppointmentUpsertWithoutFilesInput> = makeSchema() as unknown as z.ZodType<Prisma.AppointmentUpsertWithoutFilesInput>;
export const AppointmentUpsertWithoutFilesInputObjectZodSchema = makeSchema();
