import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { NpiProviderCreateWithoutPaymentsInputObjectSchema as NpiProviderCreateWithoutPaymentsInputObjectSchema } from './NpiProviderCreateWithoutPaymentsInput.schema';
import { NpiProviderUncheckedCreateWithoutPaymentsInputObjectSchema as NpiProviderUncheckedCreateWithoutPaymentsInputObjectSchema } from './NpiProviderUncheckedCreateWithoutPaymentsInput.schema';
import { NpiProviderCreateOrConnectWithoutPaymentsInputObjectSchema as NpiProviderCreateOrConnectWithoutPaymentsInputObjectSchema } from './NpiProviderCreateOrConnectWithoutPaymentsInput.schema';
import { NpiProviderUpsertWithoutPaymentsInputObjectSchema as NpiProviderUpsertWithoutPaymentsInputObjectSchema } from './NpiProviderUpsertWithoutPaymentsInput.schema';
import { NpiProviderWhereInputObjectSchema as NpiProviderWhereInputObjectSchema } from './NpiProviderWhereInput.schema';
import { NpiProviderWhereUniqueInputObjectSchema as NpiProviderWhereUniqueInputObjectSchema } from './NpiProviderWhereUniqueInput.schema';
import { NpiProviderUpdateToOneWithWhereWithoutPaymentsInputObjectSchema as NpiProviderUpdateToOneWithWhereWithoutPaymentsInputObjectSchema } from './NpiProviderUpdateToOneWithWhereWithoutPaymentsInput.schema';
import { NpiProviderUpdateWithoutPaymentsInputObjectSchema as NpiProviderUpdateWithoutPaymentsInputObjectSchema } from './NpiProviderUpdateWithoutPaymentsInput.schema';
import { NpiProviderUncheckedUpdateWithoutPaymentsInputObjectSchema as NpiProviderUncheckedUpdateWithoutPaymentsInputObjectSchema } from './NpiProviderUncheckedUpdateWithoutPaymentsInput.schema'

const makeSchema = () => z.object({
  create: z.union([z.lazy(() => NpiProviderCreateWithoutPaymentsInputObjectSchema), z.lazy(() => NpiProviderUncheckedCreateWithoutPaymentsInputObjectSchema)]).optional(),
  connectOrCreate: z.lazy(() => NpiProviderCreateOrConnectWithoutPaymentsInputObjectSchema).optional(),
  upsert: z.lazy(() => NpiProviderUpsertWithoutPaymentsInputObjectSchema).optional(),
  disconnect: z.union([z.boolean(), z.lazy(() => NpiProviderWhereInputObjectSchema)]).optional(),
  delete: z.union([z.boolean(), z.lazy(() => NpiProviderWhereInputObjectSchema)]).optional(),
  connect: z.lazy(() => NpiProviderWhereUniqueInputObjectSchema).optional(),
  update: z.union([z.lazy(() => NpiProviderUpdateToOneWithWhereWithoutPaymentsInputObjectSchema), z.lazy(() => NpiProviderUpdateWithoutPaymentsInputObjectSchema), z.lazy(() => NpiProviderUncheckedUpdateWithoutPaymentsInputObjectSchema)]).optional()
}).strict();
export const NpiProviderUpdateOneWithoutPaymentsNestedInputObjectSchema: z.ZodType<Prisma.NpiProviderUpdateOneWithoutPaymentsNestedInput> = makeSchema() as unknown as z.ZodType<Prisma.NpiProviderUpdateOneWithoutPaymentsNestedInput>;
export const NpiProviderUpdateOneWithoutPaymentsNestedInputObjectZodSchema = makeSchema();
