import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { InsuranceCredentialWhereUniqueInputObjectSchema as InsuranceCredentialWhereUniqueInputObjectSchema } from './InsuranceCredentialWhereUniqueInput.schema';
import { InsuranceCredentialUpdateWithoutUserInputObjectSchema as InsuranceCredentialUpdateWithoutUserInputObjectSchema } from './InsuranceCredentialUpdateWithoutUserInput.schema';
import { InsuranceCredentialUncheckedUpdateWithoutUserInputObjectSchema as InsuranceCredentialUncheckedUpdateWithoutUserInputObjectSchema } from './InsuranceCredentialUncheckedUpdateWithoutUserInput.schema';
import { InsuranceCredentialCreateWithoutUserInputObjectSchema as InsuranceCredentialCreateWithoutUserInputObjectSchema } from './InsuranceCredentialCreateWithoutUserInput.schema';
import { InsuranceCredentialUncheckedCreateWithoutUserInputObjectSchema as InsuranceCredentialUncheckedCreateWithoutUserInputObjectSchema } from './InsuranceCredentialUncheckedCreateWithoutUserInput.schema'

const makeSchema = () => z.object({
  where: z.lazy(() => InsuranceCredentialWhereUniqueInputObjectSchema),
  update: z.union([z.lazy(() => InsuranceCredentialUpdateWithoutUserInputObjectSchema), z.lazy(() => InsuranceCredentialUncheckedUpdateWithoutUserInputObjectSchema)]),
  create: z.union([z.lazy(() => InsuranceCredentialCreateWithoutUserInputObjectSchema), z.lazy(() => InsuranceCredentialUncheckedCreateWithoutUserInputObjectSchema)])
}).strict();
export const InsuranceCredentialUpsertWithWhereUniqueWithoutUserInputObjectSchema: z.ZodType<Prisma.InsuranceCredentialUpsertWithWhereUniqueWithoutUserInput> = makeSchema() as unknown as z.ZodType<Prisma.InsuranceCredentialUpsertWithWhereUniqueWithoutUserInput>;
export const InsuranceCredentialUpsertWithWhereUniqueWithoutUserInputObjectZodSchema = makeSchema();
