import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { AppointmentWhereUniqueInputObjectSchema as AppointmentWhereUniqueInputObjectSchema } from './AppointmentWhereUniqueInput.schema';
import { AppointmentUpdateWithoutNpiProviderInputObjectSchema as AppointmentUpdateWithoutNpiProviderInputObjectSchema } from './AppointmentUpdateWithoutNpiProviderInput.schema';
import { AppointmentUncheckedUpdateWithoutNpiProviderInputObjectSchema as AppointmentUncheckedUpdateWithoutNpiProviderInputObjectSchema } from './AppointmentUncheckedUpdateWithoutNpiProviderInput.schema';
import { AppointmentCreateWithoutNpiProviderInputObjectSchema as AppointmentCreateWithoutNpiProviderInputObjectSchema } from './AppointmentCreateWithoutNpiProviderInput.schema';
import { AppointmentUncheckedCreateWithoutNpiProviderInputObjectSchema as AppointmentUncheckedCreateWithoutNpiProviderInputObjectSchema } from './AppointmentUncheckedCreateWithoutNpiProviderInput.schema'

const makeSchema = () => z.object({
  where: z.lazy(() => AppointmentWhereUniqueInputObjectSchema),
  update: z.union([z.lazy(() => AppointmentUpdateWithoutNpiProviderInputObjectSchema), z.lazy(() => AppointmentUncheckedUpdateWithoutNpiProviderInputObjectSchema)]),
  create: z.union([z.lazy(() => AppointmentCreateWithoutNpiProviderInputObjectSchema), z.lazy(() => AppointmentUncheckedCreateWithoutNpiProviderInputObjectSchema)])
}).strict();
export const AppointmentUpsertWithWhereUniqueWithoutNpiProviderInputObjectSchema: z.ZodType<Prisma.AppointmentUpsertWithWhereUniqueWithoutNpiProviderInput> = makeSchema() as unknown as z.ZodType<Prisma.AppointmentUpsertWithWhereUniqueWithoutNpiProviderInput>;
export const AppointmentUpsertWithWhereUniqueWithoutNpiProviderInputObjectZodSchema = makeSchema();
