import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { ClaimWhereUniqueInputObjectSchema as ClaimWhereUniqueInputObjectSchema } from './ClaimWhereUniqueInput.schema';
import { ClaimUpdateWithoutUserInputObjectSchema as ClaimUpdateWithoutUserInputObjectSchema } from './ClaimUpdateWithoutUserInput.schema';
import { ClaimUncheckedUpdateWithoutUserInputObjectSchema as ClaimUncheckedUpdateWithoutUserInputObjectSchema } from './ClaimUncheckedUpdateWithoutUserInput.schema';
import { ClaimCreateWithoutUserInputObjectSchema as ClaimCreateWithoutUserInputObjectSchema } from './ClaimCreateWithoutUserInput.schema';
import { ClaimUncheckedCreateWithoutUserInputObjectSchema as ClaimUncheckedCreateWithoutUserInputObjectSchema } from './ClaimUncheckedCreateWithoutUserInput.schema'

const makeSchema = () => z.object({
  where: z.lazy(() => ClaimWhereUniqueInputObjectSchema),
  update: z.union([z.lazy(() => ClaimUpdateWithoutUserInputObjectSchema), z.lazy(() => ClaimUncheckedUpdateWithoutUserInputObjectSchema)]),
  create: z.union([z.lazy(() => ClaimCreateWithoutUserInputObjectSchema), z.lazy(() => ClaimUncheckedCreateWithoutUserInputObjectSchema)])
}).strict();
export const ClaimUpsertWithWhereUniqueWithoutUserInputObjectSchema: z.ZodType<Prisma.ClaimUpsertWithWhereUniqueWithoutUserInput> = makeSchema() as unknown as z.ZodType<Prisma.ClaimUpsertWithWhereUniqueWithoutUserInput>;
export const ClaimUpsertWithWhereUniqueWithoutUserInputObjectZodSchema = makeSchema();
