import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { SortOrderSchema } from '../enums/SortOrder.schema';
import { CommissionBatchItemCountOrderByAggregateInputObjectSchema as CommissionBatchItemCountOrderByAggregateInputObjectSchema } from './CommissionBatchItemCountOrderByAggregateInput.schema';
import { CommissionBatchItemAvgOrderByAggregateInputObjectSchema as CommissionBatchItemAvgOrderByAggregateInputObjectSchema } from './CommissionBatchItemAvgOrderByAggregateInput.schema';
import { CommissionBatchItemMaxOrderByAggregateInputObjectSchema as CommissionBatchItemMaxOrderByAggregateInputObjectSchema } from './CommissionBatchItemMaxOrderByAggregateInput.schema';
import { CommissionBatchItemMinOrderByAggregateInputObjectSchema as CommissionBatchItemMinOrderByAggregateInputObjectSchema } from './CommissionBatchItemMinOrderByAggregateInput.schema';
import { CommissionBatchItemSumOrderByAggregateInputObjectSchema as CommissionBatchItemSumOrderByAggregateInputObjectSchema } from './CommissionBatchItemSumOrderByAggregateInput.schema'

const makeSchema = () => z.object({
  id: SortOrderSchema.optional(),
  commissionBatchId: SortOrderSchema.optional(),
  paymentId: SortOrderSchema.optional(),
  collectionAmount: SortOrderSchema.optional(),
  _count: z.lazy(() => CommissionBatchItemCountOrderByAggregateInputObjectSchema).optional(),
  _avg: z.lazy(() => CommissionBatchItemAvgOrderByAggregateInputObjectSchema).optional(),
  _max: z.lazy(() => CommissionBatchItemMaxOrderByAggregateInputObjectSchema).optional(),
  _min: z.lazy(() => CommissionBatchItemMinOrderByAggregateInputObjectSchema).optional(),
  _sum: z.lazy(() => CommissionBatchItemSumOrderByAggregateInputObjectSchema).optional()
}).strict();
export const CommissionBatchItemOrderByWithAggregationInputObjectSchema: z.ZodType<Prisma.CommissionBatchItemOrderByWithAggregationInput> = makeSchema() as unknown as z.ZodType<Prisma.CommissionBatchItemOrderByWithAggregationInput>;
export const CommissionBatchItemOrderByWithAggregationInputObjectZodSchema = makeSchema();
