import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { PaymentCreateWithoutClaimInputObjectSchema as PaymentCreateWithoutClaimInputObjectSchema } from './PaymentCreateWithoutClaimInput.schema';
import { PaymentUncheckedCreateWithoutClaimInputObjectSchema as PaymentUncheckedCreateWithoutClaimInputObjectSchema } from './PaymentUncheckedCreateWithoutClaimInput.schema';
import { PaymentCreateOrConnectWithoutClaimInputObjectSchema as PaymentCreateOrConnectWithoutClaimInputObjectSchema } from './PaymentCreateOrConnectWithoutClaimInput.schema';
import { PaymentUpsertWithoutClaimInputObjectSchema as PaymentUpsertWithoutClaimInputObjectSchema } from './PaymentUpsertWithoutClaimInput.schema';
import { PaymentWhereInputObjectSchema as PaymentWhereInputObjectSchema } from './PaymentWhereInput.schema';
import { PaymentWhereUniqueInputObjectSchema as PaymentWhereUniqueInputObjectSchema } from './PaymentWhereUniqueInput.schema';
import { PaymentUpdateToOneWithWhereWithoutClaimInputObjectSchema as PaymentUpdateToOneWithWhereWithoutClaimInputObjectSchema } from './PaymentUpdateToOneWithWhereWithoutClaimInput.schema';
import { PaymentUpdateWithoutClaimInputObjectSchema as PaymentUpdateWithoutClaimInputObjectSchema } from './PaymentUpdateWithoutClaimInput.schema';
import { PaymentUncheckedUpdateWithoutClaimInputObjectSchema as PaymentUncheckedUpdateWithoutClaimInputObjectSchema } from './PaymentUncheckedUpdateWithoutClaimInput.schema'

const makeSchema = () => z.object({
  create: z.union([z.lazy(() => PaymentCreateWithoutClaimInputObjectSchema), z.lazy(() => PaymentUncheckedCreateWithoutClaimInputObjectSchema)]).optional(),
  connectOrCreate: z.lazy(() => PaymentCreateOrConnectWithoutClaimInputObjectSchema).optional(),
  upsert: z.lazy(() => PaymentUpsertWithoutClaimInputObjectSchema).optional(),
  disconnect: z.union([z.boolean(), z.lazy(() => PaymentWhereInputObjectSchema)]).optional(),
  delete: z.union([z.boolean(), z.lazy(() => PaymentWhereInputObjectSchema)]).optional(),
  connect: z.lazy(() => PaymentWhereUniqueInputObjectSchema).optional(),
  update: z.union([z.lazy(() => PaymentUpdateToOneWithWhereWithoutClaimInputObjectSchema), z.lazy(() => PaymentUpdateWithoutClaimInputObjectSchema), z.lazy(() => PaymentUncheckedUpdateWithoutClaimInputObjectSchema)]).optional()
}).strict();
export const PaymentUncheckedUpdateOneWithoutClaimNestedInputObjectSchema: z.ZodType<Prisma.PaymentUncheckedUpdateOneWithoutClaimNestedInput> = makeSchema() as unknown as z.ZodType<Prisma.PaymentUncheckedUpdateOneWithoutClaimNestedInput>;
export const PaymentUncheckedUpdateOneWithoutClaimNestedInputObjectZodSchema = makeSchema();
