import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { CloudFileCreateWithoutFolderInputObjectSchema as CloudFileCreateWithoutFolderInputObjectSchema } from './CloudFileCreateWithoutFolderInput.schema';
import { CloudFileUncheckedCreateWithoutFolderInputObjectSchema as CloudFileUncheckedCreateWithoutFolderInputObjectSchema } from './CloudFileUncheckedCreateWithoutFolderInput.schema';
import { CloudFileCreateOrConnectWithoutFolderInputObjectSchema as CloudFileCreateOrConnectWithoutFolderInputObjectSchema } from './CloudFileCreateOrConnectWithoutFolderInput.schema';
import { CloudFileUpsertWithWhereUniqueWithoutFolderInputObjectSchema as CloudFileUpsertWithWhereUniqueWithoutFolderInputObjectSchema } from './CloudFileUpsertWithWhereUniqueWithoutFolderInput.schema';
import { CloudFileCreateManyFolderInputEnvelopeObjectSchema as CloudFileCreateManyFolderInputEnvelopeObjectSchema } from './CloudFileCreateManyFolderInputEnvelope.schema';
import { CloudFileWhereUniqueInputObjectSchema as CloudFileWhereUniqueInputObjectSchema } from './CloudFileWhereUniqueInput.schema';
import { CloudFileUpdateWithWhereUniqueWithoutFolderInputObjectSchema as CloudFileUpdateWithWhereUniqueWithoutFolderInputObjectSchema } from './CloudFileUpdateWithWhereUniqueWithoutFolderInput.schema';
import { CloudFileUpdateManyWithWhereWithoutFolderInputObjectSchema as CloudFileUpdateManyWithWhereWithoutFolderInputObjectSchema } from './CloudFileUpdateManyWithWhereWithoutFolderInput.schema';
import { CloudFileScalarWhereInputObjectSchema as CloudFileScalarWhereInputObjectSchema } from './CloudFileScalarWhereInput.schema'

const makeSchema = () => z.object({
  create: z.union([z.lazy(() => CloudFileCreateWithoutFolderInputObjectSchema), z.lazy(() => CloudFileCreateWithoutFolderInputObjectSchema).array(), z.lazy(() => CloudFileUncheckedCreateWithoutFolderInputObjectSchema), z.lazy(() => CloudFileUncheckedCreateWithoutFolderInputObjectSchema).array()]).optional(),
  connectOrCreate: z.union([z.lazy(() => CloudFileCreateOrConnectWithoutFolderInputObjectSchema), z.lazy(() => CloudFileCreateOrConnectWithoutFolderInputObjectSchema).array()]).optional(),
  upsert: z.union([z.lazy(() => CloudFileUpsertWithWhereUniqueWithoutFolderInputObjectSchema), z.lazy(() => CloudFileUpsertWithWhereUniqueWithoutFolderInputObjectSchema).array()]).optional(),
  createMany: z.lazy(() => CloudFileCreateManyFolderInputEnvelopeObjectSchema).optional(),
  set: z.union([z.lazy(() => CloudFileWhereUniqueInputObjectSchema), z.lazy(() => CloudFileWhereUniqueInputObjectSchema).array()]).optional(),
  disconnect: z.union([z.lazy(() => CloudFileWhereUniqueInputObjectSchema), z.lazy(() => CloudFileWhereUniqueInputObjectSchema).array()]).optional(),
  delete: z.union([z.lazy(() => CloudFileWhereUniqueInputObjectSchema), z.lazy(() => CloudFileWhereUniqueInputObjectSchema).array()]).optional(),
  connect: z.union([z.lazy(() => CloudFileWhereUniqueInputObjectSchema), z.lazy(() => CloudFileWhereUniqueInputObjectSchema).array()]).optional(),
  update: z.union([z.lazy(() => CloudFileUpdateWithWhereUniqueWithoutFolderInputObjectSchema), z.lazy(() => CloudFileUpdateWithWhereUniqueWithoutFolderInputObjectSchema).array()]).optional(),
  updateMany: z.union([z.lazy(() => CloudFileUpdateManyWithWhereWithoutFolderInputObjectSchema), z.lazy(() => CloudFileUpdateManyWithWhereWithoutFolderInputObjectSchema).array()]).optional(),
  deleteMany: z.union([z.lazy(() => CloudFileScalarWhereInputObjectSchema), z.lazy(() => CloudFileScalarWhereInputObjectSchema).array()]).optional()
}).strict();
export const CloudFileUpdateManyWithoutFolderNestedInputObjectSchema: z.ZodType<Prisma.CloudFileUpdateManyWithoutFolderNestedInput> = makeSchema() as unknown as z.ZodType<Prisma.CloudFileUpdateManyWithoutFolderNestedInput>;
export const CloudFileUpdateManyWithoutFolderNestedInputObjectZodSchema = makeSchema();
