import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { UserCreateWithoutPatientsInputObjectSchema as UserCreateWithoutPatientsInputObjectSchema } from './UserCreateWithoutPatientsInput.schema';
import { UserUncheckedCreateWithoutPatientsInputObjectSchema as UserUncheckedCreateWithoutPatientsInputObjectSchema } from './UserUncheckedCreateWithoutPatientsInput.schema';
import { UserCreateOrConnectWithoutPatientsInputObjectSchema as UserCreateOrConnectWithoutPatientsInputObjectSchema } from './UserCreateOrConnectWithoutPatientsInput.schema';
import { UserUpsertWithoutPatientsInputObjectSchema as UserUpsertWithoutPatientsInputObjectSchema } from './UserUpsertWithoutPatientsInput.schema';
import { UserWhereUniqueInputObjectSchema as UserWhereUniqueInputObjectSchema } from './UserWhereUniqueInput.schema';
import { UserUpdateToOneWithWhereWithoutPatientsInputObjectSchema as UserUpdateToOneWithWhereWithoutPatientsInputObjectSchema } from './UserUpdateToOneWithWhereWithoutPatientsInput.schema';
import { UserUpdateWithoutPatientsInputObjectSchema as UserUpdateWithoutPatientsInputObjectSchema } from './UserUpdateWithoutPatientsInput.schema';
import { UserUncheckedUpdateWithoutPatientsInputObjectSchema as UserUncheckedUpdateWithoutPatientsInputObjectSchema } from './UserUncheckedUpdateWithoutPatientsInput.schema'

const makeSchema = () => z.object({
  create: z.union([z.lazy(() => UserCreateWithoutPatientsInputObjectSchema), z.lazy(() => UserUncheckedCreateWithoutPatientsInputObjectSchema)]).optional(),
  connectOrCreate: z.lazy(() => UserCreateOrConnectWithoutPatientsInputObjectSchema).optional(),
  upsert: z.lazy(() => UserUpsertWithoutPatientsInputObjectSchema).optional(),
  connect: z.lazy(() => UserWhereUniqueInputObjectSchema).optional(),
  update: z.union([z.lazy(() => UserUpdateToOneWithWhereWithoutPatientsInputObjectSchema), z.lazy(() => UserUpdateWithoutPatientsInputObjectSchema), z.lazy(() => UserUncheckedUpdateWithoutPatientsInputObjectSchema)]).optional()
}).strict();
export const UserUpdateOneRequiredWithoutPatientsNestedInputObjectSchema: z.ZodType<Prisma.UserUpdateOneRequiredWithoutPatientsNestedInput> = makeSchema() as unknown as z.ZodType<Prisma.UserUpdateOneRequiredWithoutPatientsNestedInput>;
export const UserUpdateOneRequiredWithoutPatientsNestedInputObjectZodSchema = makeSchema();
