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

import * as z from 'zod'

/**
 * GeneratorResponse
 */
export const zGeneratorResponse = z.unknown()

/**
 * 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(),
})

/**
 * RuleStructuredOutputPayload
 */
export const zRuleStructuredOutputPayload = z.object({
  instruction: z.string(),
  model_config: zModelConfig,
})

export const zPostRuleStructuredOutputGenerateBody = zRuleStructuredOutputPayload

/**
 * Structured output generated successfully
 */
export const zPostRuleStructuredOutputGenerateResponse = zGeneratorResponse
