import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { PatientDocumentCreateWithoutPatientInputObjectSchema as PatientDocumentCreateWithoutPatientInputObjectSchema } from './PatientDocumentCreateWithoutPatientInput.schema';
import { PatientDocumentUncheckedCreateWithoutPatientInputObjectSchema as PatientDocumentUncheckedCreateWithoutPatientInputObjectSchema } from './PatientDocumentUncheckedCreateWithoutPatientInput.schema';
import { PatientDocumentCreateOrConnectWithoutPatientInputObjectSchema as PatientDocumentCreateOrConnectWithoutPatientInputObjectSchema } from './PatientDocumentCreateOrConnectWithoutPatientInput.schema';
import { PatientDocumentUpsertWithWhereUniqueWithoutPatientInputObjectSchema as PatientDocumentUpsertWithWhereUniqueWithoutPatientInputObjectSchema } from './PatientDocumentUpsertWithWhereUniqueWithoutPatientInput.schema';
import { PatientDocumentCreateManyPatientInputEnvelopeObjectSchema as PatientDocumentCreateManyPatientInputEnvelopeObjectSchema } from './PatientDocumentCreateManyPatientInputEnvelope.schema';
import { PatientDocumentWhereUniqueInputObjectSchema as PatientDocumentWhereUniqueInputObjectSchema } from './PatientDocumentWhereUniqueInput.schema';
import { PatientDocumentUpdateWithWhereUniqueWithoutPatientInputObjectSchema as PatientDocumentUpdateWithWhereUniqueWithoutPatientInputObjectSchema } from './PatientDocumentUpdateWithWhereUniqueWithoutPatientInput.schema';
import { PatientDocumentUpdateManyWithWhereWithoutPatientInputObjectSchema as PatientDocumentUpdateManyWithWhereWithoutPatientInputObjectSchema } from './PatientDocumentUpdateManyWithWhereWithoutPatientInput.schema';
import { PatientDocumentScalarWhereInputObjectSchema as PatientDocumentScalarWhereInputObjectSchema } from './PatientDocumentScalarWhereInput.schema'

const makeSchema = () => z.object({
  create: z.union([z.lazy(() => PatientDocumentCreateWithoutPatientInputObjectSchema), z.lazy(() => PatientDocumentCreateWithoutPatientInputObjectSchema).array(), z.lazy(() => PatientDocumentUncheckedCreateWithoutPatientInputObjectSchema), z.lazy(() => PatientDocumentUncheckedCreateWithoutPatientInputObjectSchema).array()]).optional(),
  connectOrCreate: z.union([z.lazy(() => PatientDocumentCreateOrConnectWithoutPatientInputObjectSchema), z.lazy(() => PatientDocumentCreateOrConnectWithoutPatientInputObjectSchema).array()]).optional(),
  upsert: z.union([z.lazy(() => PatientDocumentUpsertWithWhereUniqueWithoutPatientInputObjectSchema), z.lazy(() => PatientDocumentUpsertWithWhereUniqueWithoutPatientInputObjectSchema).array()]).optional(),
  createMany: z.lazy(() => PatientDocumentCreateManyPatientInputEnvelopeObjectSchema).optional(),
  set: z.union([z.lazy(() => PatientDocumentWhereUniqueInputObjectSchema), z.lazy(() => PatientDocumentWhereUniqueInputObjectSchema).array()]).optional(),
  disconnect: z.union([z.lazy(() => PatientDocumentWhereUniqueInputObjectSchema), z.lazy(() => PatientDocumentWhereUniqueInputObjectSchema).array()]).optional(),
  delete: z.union([z.lazy(() => PatientDocumentWhereUniqueInputObjectSchema), z.lazy(() => PatientDocumentWhereUniqueInputObjectSchema).array()]).optional(),
  connect: z.union([z.lazy(() => PatientDocumentWhereUniqueInputObjectSchema), z.lazy(() => PatientDocumentWhereUniqueInputObjectSchema).array()]).optional(),
  update: z.union([z.lazy(() => PatientDocumentUpdateWithWhereUniqueWithoutPatientInputObjectSchema), z.lazy(() => PatientDocumentUpdateWithWhereUniqueWithoutPatientInputObjectSchema).array()]).optional(),
  updateMany: z.union([z.lazy(() => PatientDocumentUpdateManyWithWhereWithoutPatientInputObjectSchema), z.lazy(() => PatientDocumentUpdateManyWithWhereWithoutPatientInputObjectSchema).array()]).optional(),
  deleteMany: z.union([z.lazy(() => PatientDocumentScalarWhereInputObjectSchema), z.lazy(() => PatientDocumentScalarWhereInputObjectSchema).array()]).optional()
}).strict();
export const PatientDocumentUpdateManyWithoutPatientNestedInputObjectSchema: z.ZodType<Prisma.PatientDocumentUpdateManyWithoutPatientNestedInput> = makeSchema() as unknown as z.ZodType<Prisma.PatientDocumentUpdateManyWithoutPatientNestedInput>;
export const PatientDocumentUpdateManyWithoutPatientNestedInputObjectZodSchema = makeSchema();
