import type { Prisma } from '../../generated/prisma';
import * as z from 'zod';
import { CloudFileSelectObjectSchema as CloudFileSelectObjectSchema } from './objects/CloudFileSelect.schema';
import { CloudFileIncludeObjectSchema as CloudFileIncludeObjectSchema } from './objects/CloudFileInclude.schema';
import { CloudFileWhereUniqueInputObjectSchema as CloudFileWhereUniqueInputObjectSchema } from './objects/CloudFileWhereUniqueInput.schema';
import { CloudFileCreateInputObjectSchema as CloudFileCreateInputObjectSchema } from './objects/CloudFileCreateInput.schema';
import { CloudFileUncheckedCreateInputObjectSchema as CloudFileUncheckedCreateInputObjectSchema } from './objects/CloudFileUncheckedCreateInput.schema';
import { CloudFileUpdateInputObjectSchema as CloudFileUpdateInputObjectSchema } from './objects/CloudFileUpdateInput.schema';
import { CloudFileUncheckedUpdateInputObjectSchema as CloudFileUncheckedUpdateInputObjectSchema } from './objects/CloudFileUncheckedUpdateInput.schema';

export const CloudFileUpsertOneSchema: z.ZodType<Prisma.CloudFileUpsertArgs> = z.object({ select: CloudFileSelectObjectSchema.optional(), include: CloudFileIncludeObjectSchema.optional(), where: CloudFileWhereUniqueInputObjectSchema, create: z.union([ CloudFileCreateInputObjectSchema, CloudFileUncheckedCreateInputObjectSchema ]), update: z.union([ CloudFileUpdateInputObjectSchema, CloudFileUncheckedUpdateInputObjectSchema ]) }).strict() as unknown as z.ZodType<Prisma.CloudFileUpsertArgs>;

export const CloudFileUpsertOneZodSchema = z.object({ select: CloudFileSelectObjectSchema.optional(), include: CloudFileIncludeObjectSchema.optional(), where: CloudFileWhereUniqueInputObjectSchema, create: z.union([ CloudFileCreateInputObjectSchema, CloudFileUncheckedCreateInputObjectSchema ]), update: z.union([ CloudFileUpdateInputObjectSchema, CloudFileUncheckedUpdateInputObjectSchema ]) }).strict();