import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { SortOrderSchema } from '../enums/SortOrder.schema';
import { PatientConversationCountOrderByAggregateInputObjectSchema as PatientConversationCountOrderByAggregateInputObjectSchema } from './PatientConversationCountOrderByAggregateInput.schema';
import { PatientConversationAvgOrderByAggregateInputObjectSchema as PatientConversationAvgOrderByAggregateInputObjectSchema } from './PatientConversationAvgOrderByAggregateInput.schema';
import { PatientConversationMaxOrderByAggregateInputObjectSchema as PatientConversationMaxOrderByAggregateInputObjectSchema } from './PatientConversationMaxOrderByAggregateInput.schema';
import { PatientConversationMinOrderByAggregateInputObjectSchema as PatientConversationMinOrderByAggregateInputObjectSchema } from './PatientConversationMinOrderByAggregateInput.schema';
import { PatientConversationSumOrderByAggregateInputObjectSchema as PatientConversationSumOrderByAggregateInputObjectSchema } from './PatientConversationSumOrderByAggregateInput.schema'

const makeSchema = () => z.object({
  id: SortOrderSchema.optional(),
  patientId: SortOrderSchema.optional(),
  userId: SortOrderSchema.optional(),
  stage: SortOrderSchema.optional(),
  aiHandoff: SortOrderSchema.optional(),
  updatedAt: SortOrderSchema.optional(),
  _count: z.lazy(() => PatientConversationCountOrderByAggregateInputObjectSchema).optional(),
  _avg: z.lazy(() => PatientConversationAvgOrderByAggregateInputObjectSchema).optional(),
  _max: z.lazy(() => PatientConversationMaxOrderByAggregateInputObjectSchema).optional(),
  _min: z.lazy(() => PatientConversationMinOrderByAggregateInputObjectSchema).optional(),
  _sum: z.lazy(() => PatientConversationSumOrderByAggregateInputObjectSchema).optional()
}).strict();
export const PatientConversationOrderByWithAggregationInputObjectSchema: z.ZodType<Prisma.PatientConversationOrderByWithAggregationInput> = makeSchema() as unknown as z.ZodType<Prisma.PatientConversationOrderByWithAggregationInput>;
export const PatientConversationOrderByWithAggregationInputObjectZodSchema = makeSchema();
