import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { CloudFolderCreateNestedOneWithoutChildrenInputObjectSchema as CloudFolderCreateNestedOneWithoutChildrenInputObjectSchema } from './CloudFolderCreateNestedOneWithoutChildrenInput.schema';
import { CloudFolderCreateNestedManyWithoutParentInputObjectSchema as CloudFolderCreateNestedManyWithoutParentInputObjectSchema } from './CloudFolderCreateNestedManyWithoutParentInput.schema';
import { UserCreateNestedOneWithoutCloudFoldersInputObjectSchema as UserCreateNestedOneWithoutCloudFoldersInputObjectSchema } from './UserCreateNestedOneWithoutCloudFoldersInput.schema';
import { PatientCreateNestedOneWithoutCloudFoldersInputObjectSchema as PatientCreateNestedOneWithoutCloudFoldersInputObjectSchema } from './PatientCreateNestedOneWithoutCloudFoldersInput.schema'

const makeSchema = () => z.object({
  name: z.string(),
  createdAt: z.coerce.date().optional(),
  updatedAt: z.coerce.date().optional(),
  parent: z.lazy(() => CloudFolderCreateNestedOneWithoutChildrenInputObjectSchema).optional(),
  children: z.lazy(() => CloudFolderCreateNestedManyWithoutParentInputObjectSchema).optional(),
  user: z.lazy(() => UserCreateNestedOneWithoutCloudFoldersInputObjectSchema),
  patient: z.lazy(() => PatientCreateNestedOneWithoutCloudFoldersInputObjectSchema).optional()
}).strict();
export const CloudFolderCreateWithoutFilesInputObjectSchema: z.ZodType<Prisma.CloudFolderCreateWithoutFilesInput> = makeSchema() as unknown as z.ZodType<Prisma.CloudFolderCreateWithoutFilesInput>;
export const CloudFolderCreateWithoutFilesInputObjectZodSchema = makeSchema();
