import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { UserCreateWithoutAiSettingsInputObjectSchema as UserCreateWithoutAiSettingsInputObjectSchema } from './UserCreateWithoutAiSettingsInput.schema';
import { UserUncheckedCreateWithoutAiSettingsInputObjectSchema as UserUncheckedCreateWithoutAiSettingsInputObjectSchema } from './UserUncheckedCreateWithoutAiSettingsInput.schema';
import { UserCreateOrConnectWithoutAiSettingsInputObjectSchema as UserCreateOrConnectWithoutAiSettingsInputObjectSchema } from './UserCreateOrConnectWithoutAiSettingsInput.schema';
import { UserUpsertWithoutAiSettingsInputObjectSchema as UserUpsertWithoutAiSettingsInputObjectSchema } from './UserUpsertWithoutAiSettingsInput.schema';
import { UserWhereUniqueInputObjectSchema as UserWhereUniqueInputObjectSchema } from './UserWhereUniqueInput.schema';
import { UserUpdateToOneWithWhereWithoutAiSettingsInputObjectSchema as UserUpdateToOneWithWhereWithoutAiSettingsInputObjectSchema } from './UserUpdateToOneWithWhereWithoutAiSettingsInput.schema';
import { UserUpdateWithoutAiSettingsInputObjectSchema as UserUpdateWithoutAiSettingsInputObjectSchema } from './UserUpdateWithoutAiSettingsInput.schema';
import { UserUncheckedUpdateWithoutAiSettingsInputObjectSchema as UserUncheckedUpdateWithoutAiSettingsInputObjectSchema } from './UserUncheckedUpdateWithoutAiSettingsInput.schema'

const makeSchema = () => z.object({
  create: z.union([z.lazy(() => UserCreateWithoutAiSettingsInputObjectSchema), z.lazy(() => UserUncheckedCreateWithoutAiSettingsInputObjectSchema)]).optional(),
  connectOrCreate: z.lazy(() => UserCreateOrConnectWithoutAiSettingsInputObjectSchema).optional(),
  upsert: z.lazy(() => UserUpsertWithoutAiSettingsInputObjectSchema).optional(),
  connect: z.lazy(() => UserWhereUniqueInputObjectSchema).optional(),
  update: z.union([z.lazy(() => UserUpdateToOneWithWhereWithoutAiSettingsInputObjectSchema), z.lazy(() => UserUpdateWithoutAiSettingsInputObjectSchema), z.lazy(() => UserUncheckedUpdateWithoutAiSettingsInputObjectSchema)]).optional()
}).strict();
export const UserUpdateOneRequiredWithoutAiSettingsNestedInputObjectSchema: z.ZodType<Prisma.UserUpdateOneRequiredWithoutAiSettingsNestedInput> = makeSchema() as unknown as z.ZodType<Prisma.UserUpdateOneRequiredWithoutAiSettingsNestedInput>;
export const UserUpdateOneRequiredWithoutAiSettingsNestedInputObjectZodSchema = makeSchema();
