import * as z from 'zod';
import type { Prisma } from '../../../generated/prisma';
import { SortOrderSchema } from '../enums/SortOrder.schema';
import { SortOrderInputObjectSchema as SortOrderInputObjectSchema } from './SortOrderInput.schema';
import { UserOrderByWithRelationInputObjectSchema as UserOrderByWithRelationInputObjectSchema } from './UserOrderByWithRelationInput.schema'

const makeSchema = () => z.object({
  id: SortOrderSchema.optional(),
  userId: SortOrderSchema.optional(),
  accountSid: SortOrderSchema.optional(),
  authToken: SortOrderSchema.optional(),
  phoneNumber: SortOrderSchema.optional(),
  greetingMessage: z.union([SortOrderSchema, z.lazy(() => SortOrderInputObjectSchema)]).optional(),
  templates: z.union([SortOrderSchema, z.lazy(() => SortOrderInputObjectSchema)]).optional(),
  user: z.lazy(() => UserOrderByWithRelationInputObjectSchema).optional()
}).strict();
export const TwilioSettingsOrderByWithRelationInputObjectSchema: z.ZodType<Prisma.TwilioSettingsOrderByWithRelationInput> = makeSchema() as unknown as z.ZodType<Prisma.TwilioSettingsOrderByWithRelationInput>;
export const TwilioSettingsOrderByWithRelationInputObjectZodSchema = makeSchema();
