import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { PatientCreateWithoutGroupsInputObjectSchema as PatientCreateWithoutGroupsInputObjectSchema } from './PatientCreateWithoutGroupsInput.schema';
import { PatientUncheckedCreateWithoutGroupsInputObjectSchema as PatientUncheckedCreateWithoutGroupsInputObjectSchema } from './PatientUncheckedCreateWithoutGroupsInput.schema';
import { PatientCreateOrConnectWithoutGroupsInputObjectSchema as PatientCreateOrConnectWithoutGroupsInputObjectSchema } from './PatientCreateOrConnectWithoutGroupsInput.schema';
import { PatientWhereUniqueInputObjectSchema as PatientWhereUniqueInputObjectSchema } from './PatientWhereUniqueInput.schema'

const makeSchema = () => z.object({
  create: z.union([z.lazy(() => PatientCreateWithoutGroupsInputObjectSchema), z.lazy(() => PatientUncheckedCreateWithoutGroupsInputObjectSchema)]).optional(),
  connectOrCreate: z.lazy(() => PatientCreateOrConnectWithoutGroupsInputObjectSchema).optional(),
  connect: z.lazy(() => PatientWhereUniqueInputObjectSchema).optional()
}).strict();
export const PatientCreateNestedOneWithoutGroupsInputObjectSchema: z.ZodType<Prisma.PatientCreateNestedOneWithoutGroupsInput> = makeSchema() as unknown as z.ZodType<Prisma.PatientCreateNestedOneWithoutGroupsInput>;
export const PatientCreateNestedOneWithoutGroupsInputObjectZodSchema = makeSchema();
