import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { ClaimCreateWithoutNpiProviderInputObjectSchema as ClaimCreateWithoutNpiProviderInputObjectSchema } from './ClaimCreateWithoutNpiProviderInput.schema';
import { ClaimUncheckedCreateWithoutNpiProviderInputObjectSchema as ClaimUncheckedCreateWithoutNpiProviderInputObjectSchema } from './ClaimUncheckedCreateWithoutNpiProviderInput.schema';
import { ClaimCreateOrConnectWithoutNpiProviderInputObjectSchema as ClaimCreateOrConnectWithoutNpiProviderInputObjectSchema } from './ClaimCreateOrConnectWithoutNpiProviderInput.schema';
import { ClaimUpsertWithWhereUniqueWithoutNpiProviderInputObjectSchema as ClaimUpsertWithWhereUniqueWithoutNpiProviderInputObjectSchema } from './ClaimUpsertWithWhereUniqueWithoutNpiProviderInput.schema';
import { ClaimCreateManyNpiProviderInputEnvelopeObjectSchema as ClaimCreateManyNpiProviderInputEnvelopeObjectSchema } from './ClaimCreateManyNpiProviderInputEnvelope.schema';
import { ClaimWhereUniqueInputObjectSchema as ClaimWhereUniqueInputObjectSchema } from './ClaimWhereUniqueInput.schema';
import { ClaimUpdateWithWhereUniqueWithoutNpiProviderInputObjectSchema as ClaimUpdateWithWhereUniqueWithoutNpiProviderInputObjectSchema } from './ClaimUpdateWithWhereUniqueWithoutNpiProviderInput.schema';
import { ClaimUpdateManyWithWhereWithoutNpiProviderInputObjectSchema as ClaimUpdateManyWithWhereWithoutNpiProviderInputObjectSchema } from './ClaimUpdateManyWithWhereWithoutNpiProviderInput.schema';
import { ClaimScalarWhereInputObjectSchema as ClaimScalarWhereInputObjectSchema } from './ClaimScalarWhereInput.schema'

const makeSchema = () => z.object({
  create: z.union([z.lazy(() => ClaimCreateWithoutNpiProviderInputObjectSchema), z.lazy(() => ClaimCreateWithoutNpiProviderInputObjectSchema).array(), z.lazy(() => ClaimUncheckedCreateWithoutNpiProviderInputObjectSchema), z.lazy(() => ClaimUncheckedCreateWithoutNpiProviderInputObjectSchema).array()]).optional(),
  connectOrCreate: z.union([z.lazy(() => ClaimCreateOrConnectWithoutNpiProviderInputObjectSchema), z.lazy(() => ClaimCreateOrConnectWithoutNpiProviderInputObjectSchema).array()]).optional(),
  upsert: z.union([z.lazy(() => ClaimUpsertWithWhereUniqueWithoutNpiProviderInputObjectSchema), z.lazy(() => ClaimUpsertWithWhereUniqueWithoutNpiProviderInputObjectSchema).array()]).optional(),
  createMany: z.lazy(() => ClaimCreateManyNpiProviderInputEnvelopeObjectSchema).optional(),
  set: z.union([z.lazy(() => ClaimWhereUniqueInputObjectSchema), z.lazy(() => ClaimWhereUniqueInputObjectSchema).array()]).optional(),
  disconnect: z.union([z.lazy(() => ClaimWhereUniqueInputObjectSchema), z.lazy(() => ClaimWhereUniqueInputObjectSchema).array()]).optional(),
  delete: z.union([z.lazy(() => ClaimWhereUniqueInputObjectSchema), z.lazy(() => ClaimWhereUniqueInputObjectSchema).array()]).optional(),
  connect: z.union([z.lazy(() => ClaimWhereUniqueInputObjectSchema), z.lazy(() => ClaimWhereUniqueInputObjectSchema).array()]).optional(),
  update: z.union([z.lazy(() => ClaimUpdateWithWhereUniqueWithoutNpiProviderInputObjectSchema), z.lazy(() => ClaimUpdateWithWhereUniqueWithoutNpiProviderInputObjectSchema).array()]).optional(),
  updateMany: z.union([z.lazy(() => ClaimUpdateManyWithWhereWithoutNpiProviderInputObjectSchema), z.lazy(() => ClaimUpdateManyWithWhereWithoutNpiProviderInputObjectSchema).array()]).optional(),
  deleteMany: z.union([z.lazy(() => ClaimScalarWhereInputObjectSchema), z.lazy(() => ClaimScalarWhereInputObjectSchema).array()]).optional()
}).strict();
export const ClaimUpdateManyWithoutNpiProviderNestedInputObjectSchema: z.ZodType<Prisma.ClaimUpdateManyWithoutNpiProviderNestedInput> = makeSchema() as unknown as z.ZodType<Prisma.ClaimUpdateManyWithoutNpiProviderNestedInput>;
export const ClaimUpdateManyWithoutNpiProviderNestedInputObjectZodSchema = makeSchema();
