import type { Prisma } from '../../generated/prisma';
import * as z from 'zod';
import { PatientConversationOrderByWithRelationInputObjectSchema as PatientConversationOrderByWithRelationInputObjectSchema } from './objects/PatientConversationOrderByWithRelationInput.schema';
import { PatientConversationWhereInputObjectSchema as PatientConversationWhereInputObjectSchema } from './objects/PatientConversationWhereInput.schema';
import { PatientConversationWhereUniqueInputObjectSchema as PatientConversationWhereUniqueInputObjectSchema } from './objects/PatientConversationWhereUniqueInput.schema';
import { PatientConversationCountAggregateInputObjectSchema as PatientConversationCountAggregateInputObjectSchema } from './objects/PatientConversationCountAggregateInput.schema';
import { PatientConversationMinAggregateInputObjectSchema as PatientConversationMinAggregateInputObjectSchema } from './objects/PatientConversationMinAggregateInput.schema';
import { PatientConversationMaxAggregateInputObjectSchema as PatientConversationMaxAggregateInputObjectSchema } from './objects/PatientConversationMaxAggregateInput.schema';
import { PatientConversationAvgAggregateInputObjectSchema as PatientConversationAvgAggregateInputObjectSchema } from './objects/PatientConversationAvgAggregateInput.schema';
import { PatientConversationSumAggregateInputObjectSchema as PatientConversationSumAggregateInputObjectSchema } from './objects/PatientConversationSumAggregateInput.schema';

export const PatientConversationAggregateSchema: z.ZodType<Prisma.PatientConversationAggregateArgs> = z.object({ orderBy: z.union([PatientConversationOrderByWithRelationInputObjectSchema, PatientConversationOrderByWithRelationInputObjectSchema.array()]).optional(), where: PatientConversationWhereInputObjectSchema.optional(), cursor: PatientConversationWhereUniqueInputObjectSchema.optional(), take: z.number().optional(), skip: z.number().optional(), _count: z.union([ z.literal(true), PatientConversationCountAggregateInputObjectSchema ]).optional(), _min: PatientConversationMinAggregateInputObjectSchema.optional(), _max: PatientConversationMaxAggregateInputObjectSchema.optional(), _avg: PatientConversationAvgAggregateInputObjectSchema.optional(), _sum: PatientConversationSumAggregateInputObjectSchema.optional() }).strict() as unknown as z.ZodType<Prisma.PatientConversationAggregateArgs>;

export const PatientConversationAggregateZodSchema = z.object({ orderBy: z.union([PatientConversationOrderByWithRelationInputObjectSchema, PatientConversationOrderByWithRelationInputObjectSchema.array()]).optional(), where: PatientConversationWhereInputObjectSchema.optional(), cursor: PatientConversationWhereUniqueInputObjectSchema.optional(), take: z.number().optional(), skip: z.number().optional(), _count: z.union([ z.literal(true), PatientConversationCountAggregateInputObjectSchema ]).optional(), _min: PatientConversationMinAggregateInputObjectSchema.optional(), _max: PatientConversationMaxAggregateInputObjectSchema.optional(), _avg: PatientConversationAvgAggregateInputObjectSchema.optional(), _sum: PatientConversationSumAggregateInputObjectSchema.optional() }).strict();