import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { SortOrderSchema } from '../enums/SortOrder.schema';
import { SeleniumSettingsCountOrderByAggregateInputObjectSchema as SeleniumSettingsCountOrderByAggregateInputObjectSchema } from './SeleniumSettingsCountOrderByAggregateInput.schema';
import { SeleniumSettingsAvgOrderByAggregateInputObjectSchema as SeleniumSettingsAvgOrderByAggregateInputObjectSchema } from './SeleniumSettingsAvgOrderByAggregateInput.schema';
import { SeleniumSettingsMaxOrderByAggregateInputObjectSchema as SeleniumSettingsMaxOrderByAggregateInputObjectSchema } from './SeleniumSettingsMaxOrderByAggregateInput.schema';
import { SeleniumSettingsMinOrderByAggregateInputObjectSchema as SeleniumSettingsMinOrderByAggregateInputObjectSchema } from './SeleniumSettingsMinOrderByAggregateInput.schema';
import { SeleniumSettingsSumOrderByAggregateInputObjectSchema as SeleniumSettingsSumOrderByAggregateInputObjectSchema } from './SeleniumSettingsSumOrderByAggregateInput.schema'

const makeSchema = () => z.object({
  id: SortOrderSchema.optional(),
  userId: SortOrderSchema.optional(),
  paymentGroupId: SortOrderSchema.optional(),
  _count: z.lazy(() => SeleniumSettingsCountOrderByAggregateInputObjectSchema).optional(),
  _avg: z.lazy(() => SeleniumSettingsAvgOrderByAggregateInputObjectSchema).optional(),
  _max: z.lazy(() => SeleniumSettingsMaxOrderByAggregateInputObjectSchema).optional(),
  _min: z.lazy(() => SeleniumSettingsMinOrderByAggregateInputObjectSchema).optional(),
  _sum: z.lazy(() => SeleniumSettingsSumOrderByAggregateInputObjectSchema).optional()
}).strict();
export const SeleniumSettingsOrderByWithAggregationInputObjectSchema: z.ZodType<Prisma.SeleniumSettingsOrderByWithAggregationInput> = makeSchema() as unknown as z.ZodType<Prisma.SeleniumSettingsOrderByWithAggregationInput>;
export const SeleniumSettingsOrderByWithAggregationInputObjectZodSchema = makeSchema();
