// This file is auto-generated by @hey-api/openapi-ts

import * as z from 'zod'

/**
 * LLMMode
 *
 * Enum class for large language model mode.
 */
export const zLlmMode = z.enum(['chat', 'completion'])

/**
 * ModelConfig
 */
export const zModelConfig = z.object({
  completion_params: z.record(z.string(), z.unknown()).optional(),
  mode: zLlmMode,
  name: z.string(),
  provider: z.string(),
})

/**
 * RuleCodeGeneratePayload
 */
export const zRuleCodeGeneratePayload = z.object({
  code_language: z.string().optional().default('javascript'),
  instruction: z.string(),
  model_config: zModelConfig,
  no_variable: z.boolean().optional().default(false),
})

export const zPostRuleCodeGenerateBody = zRuleCodeGeneratePayload

/**
 * Code rules generated successfully
 */
export const zPostRuleCodeGenerateResponse = z.record(z.string(), z.unknown())
