import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { AppointmentUpdateWithoutClaimsInputObjectSchema as AppointmentUpdateWithoutClaimsInputObjectSchema } from './AppointmentUpdateWithoutClaimsInput.schema';
import { AppointmentUncheckedUpdateWithoutClaimsInputObjectSchema as AppointmentUncheckedUpdateWithoutClaimsInputObjectSchema } from './AppointmentUncheckedUpdateWithoutClaimsInput.schema';
import { AppointmentCreateWithoutClaimsInputObjectSchema as AppointmentCreateWithoutClaimsInputObjectSchema } from './AppointmentCreateWithoutClaimsInput.schema';
import { AppointmentUncheckedCreateWithoutClaimsInputObjectSchema as AppointmentUncheckedCreateWithoutClaimsInputObjectSchema } from './AppointmentUncheckedCreateWithoutClaimsInput.schema';
import { AppointmentWhereInputObjectSchema as AppointmentWhereInputObjectSchema } from './AppointmentWhereInput.schema'

const makeSchema = () => z.object({
  update: z.union([z.lazy(() => AppointmentUpdateWithoutClaimsInputObjectSchema), z.lazy(() => AppointmentUncheckedUpdateWithoutClaimsInputObjectSchema)]),
  create: z.union([z.lazy(() => AppointmentCreateWithoutClaimsInputObjectSchema), z.lazy(() => AppointmentUncheckedCreateWithoutClaimsInputObjectSchema)]),
  where: z.lazy(() => AppointmentWhereInputObjectSchema).optional()
}).strict();
export const AppointmentUpsertWithoutClaimsInputObjectSchema: z.ZodType<Prisma.AppointmentUpsertWithoutClaimsInput> = makeSchema() as unknown as z.ZodType<Prisma.AppointmentUpsertWithoutClaimsInput>;
export const AppointmentUpsertWithoutClaimsInputObjectZodSchema = makeSchema();
