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

export const ChatModelSchema = {
  type: 'string',
  enum: [
    'EVA-UNIT-01/EVA-LLaMA-3.33-70B-v0.0',
    'EVA-UNIT-01/EVA-LLaMA-3.33-70B-v0.1',
    'EVA-UNIT-01/EVA-Qwen2.5-32B-v0.2',
    'EVA-UNIT-01/EVA-Qwen2.5-72B-v0.2',
    'Envoid/Llama-3.05-NT-Storybreaker-Ministral-70B',
    'Envoid/Llama-3.05-Nemotron-Tenyxchat-Storybreaker-70B',
    'GalrionSoftworks/MN-LooseCannon-12B-v1',
    'Gryphe/MythoMax-L2-13b',
    'Infermatic/MN-12B-Inferor-v0.0',
    'LatitudeGames/Wayfarer-Large-70B-Llama-3.3',
    'Llama-3.1-Tulu-3-405B',
    'Llama-3.3+3.1-70B-ArliAI-RPMax-v1.3',
    'Llama-3.3-70B-MiraiFanfare',
    'MarinaraSpaghetti/NemoMix-Unleashed-12B',
    'Meta-Llama-3-1-405B-Instruct-FP8',
    'Meta-Llama-3-1-8B-Instruct-FP8',
    'Mistral-Nemo-12B-ArliAI-RPMax-v1.2',
    'Mistral-Nemo-12B-Wayfarer',
    'NeverSleep/Llama-3-Lumimaid-70B-v0.1',
    'NeverSleep/Lumimaid-v0.2-70B',
    'Nexusflow/Athene-V2-Chat',
    'Qwen/QwQ-32B-Preview',
    'Qwen/Qwen2.5-Coder-32B-Instruct',
    'Qwen2.5-32B-Dazzling-Star-Aurora-32b-v0.0',
    'Qwen2.5-32B-EVA-v0.2',
    'Sao10K/L3-8B-Stheno-v3.2',
    'Sao10K/L3.1-70B-Euryale-v2.2',
    'Sao10K/L3.1-70B-Hanami-x1',
    'Sao10K/L3.3-70B-Euryale-v2.3',
    'Steelskull/L3.3-Cu-Mai-R1-70b',
    'Steelskull/L3.3-Damascus-R1',
    'Steelskull/L3.3-Electra-R1-70b',
    'Steelskull/L3.3-MS-Evalebis-70b',
    'Steelskull/L3.3-MS-Evayale-70B',
    'Steelskull/L3.3-MS-Nevoria-70b',
    'Steelskull/L3.3-Nevoria-R1-70b',
    'TheDrummer/Anubis-70B-v1',
    'TheDrummer/Cydonia-24B-v2',
    'TheDrummer/Rocinante-12B-v1.1',
    'TheDrummer/UnslopNemo-12B-v4.1',
    'VongolaChouko/Starcannon-Unleashed-12B-v1.0',
    'abacusai/Dracarys-72B-Instruct',
    'aion-labs/aion-1.0',
    'aion-labs/aion-1.0-mini',
    'aion-labs/aion-rp-llama-3.1-8b',
    'amazon/nova-lite-v1',
    'amazon/nova-micro-v1',
    'amazon/nova-pro-v1',
    'anthracite-org/magnum-v2-72b',
    'anthracite-org/magnum-v4-72b',
    'anubis-pro-105b-v1',
    'asi1-mini',
    'azure-gpt-4-turbo',
    'azure-gpt-4o',
    'azure-gpt-4o-mini',
    'azure-o1',
    'azure-o3-mini',
    'chatgpt-4o-latest',
    'chatgpt-4o-latest-reasoner',
    'claude-3-5-haiku-20241022',
    'claude-3-5-sonnet-20240620',
    'claude-3-5-sonnet-20241022',
    'claude-3-7-sonnet-20250219',
    'claude-3-7-sonnet-thinking',
    'claude-3-7-sonnet-thinking:1024',
    'claude-3-7-sonnet-thinking:128000',
    'claude-3-7-sonnet-thinking:32768',
    'claude-3-7-sonnet-thinking:8192',
    'claude-3-opus-20240229',
    'cognitivecomputations/dolphin-mixtral-8x22b',
    'cohere/command-r',
    'cohere/command-r-plus-08-2024',
    'deepclaude',
    'deepseek-ai/DeepSeek-R1-Zero',
    'deepseek-chat',
    'deepseek-chat-cheaper',
    'deepseek-r1-llama-70b',
    'deepseek-r1-nano',
    'deepseek-r1-sambanova',
    'deepseek-reasoner',
    'deepseek-reasoner-cheaper',
    'deepseek-v3-0324',
    'dolphin-2.9.2-qwen2-72b',
    'doubao-1.5-pro-256k',
    'doubao-1.5-pro-32k',
    'doubao-1.5-vision-pro-32k',
    'ernie-4.5-8k-preview',
    'eva-unit-01/eva-qwen-2.5-72b',
    'failspy/Meta-Llama-3-70B-Instruct-abliterated-v3.5',
    'featherless-ai/Qwerky-72B',
    'gemini-2.0-flash-001',
    'gemini-2.0-flash-exp',
    'gemini-2.0-flash-exp-search',
    'gemini-2.0-flash-lite',
    'gemini-2.0-flash-thinking-exp-01-21',
    'gemini-2.0-flash-thinking-exp-1219',
    'gemini-2.0-pro-exp-02-05',
    'gemini-2.0-pro-reasoner',
    'gemini-2.5-pro-exp-03-25',
    'gemini-exp-1206',
    'glm-4',
    'glm-4-air',
    'glm-4-air-0111',
    'glm-4-airx',
    'glm-4-flash',
    'glm-4-long',
    'glm-4-plus',
    'glm-4-plus-0111',
    'glm-zero-preview',
    'google/gemini-flash-1.5',
    'gpt-3.5-turbo',
    'gpt-4-turbo-preview',
    'gpt-4.5-preview',
    'gpt-4.5-preview-2025-02-27-reasoner',
    'gpt-4o',
    'gpt-4o-2024-08-06',
    'gpt-4o-2024-11-20',
    'gpt-4o-mini',
    'gpt-4o-mini-search-preview',
    'gpt-4o-reasoner',
    'gpt-4o-search-preview',
    'huihui-ai/DeepSeek-R1-Distill-Llama-70B-abliterated',
    'huihui-ai/DeepSeek-R1-Distill-Qwen-32B-abliterated',
    'huihui-ai/Llama-3.1-Nemotron-70B-Instruct-HF-abliterated',
    'huihui-ai/Llama-3.3-70B-Instruct-abliterated',
    'hunyuan-t1-latest',
    'hunyuan-turbos-20250226',
    'inflatebot/MN-12B-Mag-Mell-R1',
    'inflection/inflection-3-pi',
    'inflection/inflection-3-productivity',
    'jamba-large-1.6',
    'jamba-mini-1.6',
    'kimi-latest',
    'learnlm-1.5-pro-experimental',
    'meta-llama/llama-3.1-8b-instruct',
    'meta-llama/llama-3.2-3b-instruct',
    'meta-llama/llama-3.2-90b-vision-instruct',
    'meta-llama/llama-3.3-70b-instruct',
    'microsoft/wizardlm-2-7b',
    'microsoft/wizardlm-2-8x22b',
    'minimax/minimax-01',
    'mistral-small-31-24b-instruct',
    'mistralai/Mistral-Nemo-Instruct-2407',
    'mistralai/mistral-7b-instruct',
    'mistralai/mistral-large',
    'mistralai/mistral-saba',
    'mistralai/mistral-tiny',
    'mlabonne/NeuralDaredevil-8B-abliterated',
    'nothingiisreal/L3.1-70B-Celeste-V0.1-BF16',
    'nousresearch/hermes-3-llama-3.1-405b',
    'nvidia/Llama-3.1-Nemotron-70B-Instruct-HF',
    'o1',
    'o1-preview',
    'o3-mini',
    'o3-mini-high',
    'o3-mini-low',
    'olmo-2-32b-instruct',
    'open-r1/OlympicCoder-32B',
    'open-r1/OlympicCoder-7b',
    'openai/o1-pro',
    'phi-4-mini-instruct',
    'phi-4-multimodal-instruct',
    'qwen-long',
    'qwen-max',
    'qwen-plus',
    'qwen-turbo',
    'qwen/qwen-2.5-72b-instruct',
    'qwen25-vl-72b-instruct',
    'qwq-32b',
    'r1-1776',
    'raifle/sorcererlm-8x22b',
    'sonar',
    'sonar-deep-research',
    'sonar-pro',
    'sonar-reasoning',
    'sonar-reasoning-pro',
    'step-2-16k',
    'step-2-16k-exp',
    'step-2-mini',
    'thedrummer/skyfall-36b-v2',
    'undi95/remm-slerp-l2-13b',
    'unsloth/gemma-3-12b-it',
    'unsloth/gemma-3-1b-it',
    'unsloth/gemma-3-27b-it',
    'unsloth/gemma-3-4b-it',
    'unsloth/gemma-3-9b-it',
    'yi-34b-chat-0205',
    'yi-34b-chat-200k',
    'yi-large',
    'yi-large-turbo',
    'yi-lightning',
    'yi-medium-200k'
  ]
} as const

export const ImageModelSchema = {
  type: 'string',
  enum: [
    'dall-e-3',
    'dall-e-3-hd',
    'dreamshaper_8_93211.safetensors',
    'fast-sdxl',
    'flux-1-dev',
    'flux-lightning',
    'flux-lora',
    'flux-pro',
    'flux-pro/v1.1',
    'flux-pro/v1.1-ultra',
    'flux-realism',
    'flux/schnell',
    'ideogram-ai/ideogram-v2',
    'ideogram-ai/ideogram-v2-turbo',
    'imagen-3.0-generate-002',
    'midjourney',
    'playground-v25',
    'promptchan',
    'proteus-v0.2',
    'recraft-v3',
    'revAnimated_v122.safetensors',
    'sd3_base_medium.safetensors',
    'stable-diffusion-v35-large',
    'stable-diffusion-v35-large/turbo'
  ]
} as const

export const NegativePromptSchema = {
  type: 'string',
  required: false,
  description: 'Things to exclude in the generated image.'
} as const

export const RoleSchema = {
  type: 'string',
  description: "The role of the message sender (e.g., 'user', 'assistant').",
  enum: ['user', 'assistant', 'system']
} as const

export const MessageSchema = {
  type: 'object',
  properties: {
    role: {
      $ref: '#/components/schemas/Role'
    },
    content: {
      type: 'object',
      oneOf: [
        {
          $ref: '#/components/schemas/TextContent'
        }
      ],
      description: 'The content of the message.'
    }
  }
} as const

export const TextContentSchema = {
  type: 'string',
  description: 'The content of the message.'
} as const

export const CompoundMessageSchema = {
  type: 'object',
  properties: {
    role: {
      $ref: '#/components/schemas/Role'
    },
    content: {
      type: 'object',
      oneOf: [
        {
          $ref: '#/components/schemas/TextContent'
        },
        {
          $ref: '#/components/schemas/MultipartContent'
        }
      ],
      description: 'The content of the message.'
    }
  }
} as const

export const MultipartContentSchema = {
  type: 'array',
  description: 'List of parts to send',
  items: {
    oneOf: [
      {
        $ref: '#/components/schemas/MultipartText'
      },
      {
        $ref: '#/components/schemas/MultipartImageUrl'
      }
    ]
  }
} as const

export const MultipartTextSchema = {
  type: 'object',
  properties: {
    type: {
      type: 'string',
      enum: ['text']
    },
    text: {
      type: 'string'
    }
  },
  required: ['type', 'text']
} as const

export const MultipartImageUrlSchema = {
  type: 'object',
  properties: {
    type: {
      type: 'string',
      enum: ['image_url']
    },
    image_url: {
      type: 'object',
      properties: {
        url: {
          type: 'string'
        }
      },
      required: ['url']
    }
  },
  required: ['type', 'image_url']
} as const

export const DeltaSchema = {
  type: 'object',
  properties: {
    content: {
      type: 'string',
      description: 'The content of the delta.'
    }
  }
} as const

export const PaymentSourceSchema = {
  type: 'string',
  enum: ['XNO']
} as const

export const CostSchema = {
  type: 'float',
  description: 'Cost for running the query.'
} as const

export const RemainingBalanceSchema = {
  type: 'float',
  description: 'Remaining balance in wallet.'
} as const

export const ObjectSchema = {
  type: 'string',
  enum: ['list', 'model']
} as const

export const CreatedSchema = {
  type: 'integer',
  description: 'Timestamp when the completion was created.'
} as const

export const NanoAddressSchema = {
  type: 'string',
  description: 'Nano address'
} as const

export const ScriptStyleSchema = {
  type: 'string',
  description: 'A fully-written script to skip AI script generation (takes precedence over prompt)',
  enum: [
    'default',
    'engaging_conversational',
    'kind_biography',
    'hero_journey',
    'emotional_story',
    'dramatic_reveal',
    'heartwarming_stories',
    'educational_history',
    'news_brief'
  ],
  'x-enum-descriptions': [
    'Classic story with traditional narrative structure',
    'Casual, dialogue-rich storytelling',
    'Biographical style with personal touch',
    "Epic narrative following hero's journey structure",
    'Emotionally resonant narrative',
    'Story with dramatic twists and reveals',
    'Uplifting, feel-good narratives',
    'Educational content with historical context',
    'Concise, journalistic style'
  ]
} as const

export const VideoFrameworkSchema = {
  type: 'string',
  description: 'Story framework for video generation',
  enum: [
    'default',
    'emotional_story',
    'product_showcase',
    'tutorial',
    'engaging_conversational',
    'kind_biography',
    'hero_journey',
    'dramatic_reveal',
    'heartwarming_stories',
    'educational_history',
    'news_brief'
  ]
} as const

export const RecraftStyleSchema = {
  type: 'string',
  description: 'Image style for Recraft model',
  enum: [
    'any',
    'realistic_image',
    'digital_illustration',
    'realistic_image/b_and_w',
    'realistic_image/hard_flash',
    'realistic_image/hdr',
    'realistic_image/natural_light',
    'realistic_image/studio_portrait',
    'realistic_image/enterprise',
    'realistic_image/motion_blur',
    'digital_illustration/pixel_art',
    'digital_illustration/hand_drawn',
    'digital_illustration/grain',
    'digital_illustration/infantile_sketch',
    'digital_illustration/2d_art_poster',
    'digital_illustration/handmade_3d',
    'digital_illustration/hand_drawn_outline',
    'digital_illustration/engraving_color',
    'digital_illustration/2d_art_poster_2'
  ],
  'x-enum-descriptions': [
    'Default style',
    'Realistic photography',
    'Digital art and illustrations',
    'Black and white photography',
    'Hard flash photography',
    'HDR photography',
    'Natural lighting photography',
    'Studio portrait photography',
    'Professional/corporate photography',
    'Motion blur effect',
    'Pixel art style',
    'Hand-drawn illustration',
    'Grainy illustration style',
    'Child-like sketch style',
    '2D poster art',
    '3D-like illustration',
    'Line art style',
    'Color engraving style',
    'Alternative 2D poster style'
  ]
} as const

export const FluxLoraStyleSchema = {
  type: 'string',
  description: 'LoRA style for Flux model',
  enum: [
    'ghibsky-comic-book',
    'colour-sketches',
    'sketch-paint',
    '90s-anime',
    '2000s-crime-thrillers',
    'xno-symbol-flux'
  ],
  'x-enum-descriptions': [
    'GHIBSKY style painting (prompt prefix: GHIBSKY style painting,)',
    'Colour Sketches Illustration (prompt prefix: illustration)',
    'Sketch Paint Illustration (prompt prefix: sk3tchpa1nt style illustration)',
    '90s Anime Art (prompt prefix: 90s anime style,)',
    '2000s Crime Thrillers (prompt prefix: ArsMovieStill, movie still from a gritty, high-contrast 2000s crime thriller movie,)',
    'XNO Symbol (prompt prefix: xno_symbol)'
  ]
} as const

export const CaptionStyleSchema = {
  type: 'string',
  description: 'Style for video captions',
  enum: [
    'default',
    'minimal',
    'neon',
    'cinematic',
    'fancy',
    'tiktok',
    'highlight',
    'gradient',
    'instagram',
    'vida',
    'manuscripts'
  ]
} as const

export const VideoQualitySchema = {
  type: 'string',
  description: 'Output video quality',
  default: 'medium',
  enum: ['low', 'medium', 'high']
} as const

export const TransitionEffectSchema = {
  type: 'string',
  description: 'Transition effect between scenes',
  enum: ['fade', 'dissolve', 'slide', 'zoom', 'none']
} as const

export const VoiceIDSchema = {
  type: 'string',
  description: 'Voice ID for narration',
  enum: [
    '9BWtsMINqrJLrRacOk9x',
    'CwhRBWXzGAHq8TQ4Fs17',
    'EXAVITQu4vr4xnSDxMaL',
    'FGY2WhTYpPnrIDTdsKH5',
    'IKne3meq5aSn9XLyUdCD',
    'JBFqnCBsd6RMkjVDRZzb',
    'N2lVS1w4EtoT3dr4eOWO',
    'SAz9YHcvj6GT2YYXdXww',
    'TX3LPaxmHKxFdv7VOQHJ',
    'XB0fDUnXU5powFXDhCwa',
    'Xb7hH8MSUJpSbSDYk0k2',
    'XrExE9yKIg1WjnnlVkGX',
    'bIHbv24MWmeRgasZH58o',
    'cgSgspJ2msm6clMCkdW9',
    'cjVigY5qzO86Huf0OWal',
    'nPczCjzI2devNBz1zQrb',
    'zWDA589rUKXuLnPRDtAG',
    'KHCvMklQZZo0O30ERnVn',
    'Nh2zY9kknu6z4pZy6FhD',
    'YExhVa4bZONzeingloMX'
  ],
  'x-enum-descriptions': [
    'Aria: Female, American, expressive (best for social media)',
    'Roger: Male, American, confident (best for social media)',
    'Sarah: Female, American, soft (best for news)',
    'Laura: Female, American, upbeat (best for social media)',
    'Charlie: Male, Australian, natural (best for conversational)',
    'George: Male, British, warm (best for narration)',
    'Callum: Male, Transatlantic, intense (best for characters)',
    'River: Female, American, confident (best for social media)',
    'Liam: Male, American, articulate (best for narration)',
    'Charlotte: Female, Swedish, seductive (best for characters)',
    'Alice: Female, British, confident (best for news)',
    'Matilda: Female, American, friendly (best for narration)',
    'Will: Male, American, friendly (best for social media)',
    'Jessica: Female, American, expressive (best for conversational)',
    'Eric: Male, American, friendly (best for conversational)',
    'Brian: Male, American, deep (best for narration)',
    'John: Male, American, wise (best for characters animation)',
    'Sara Martin: Female, Spanish, wise (best for informative educational)',
    'David Martin: Male, Spanish, confident (best for narrative story)',
    'Juan Carlos: Male, Latin American, casual (best for conversational)'
  ]
} as const

export const MusicTrackSchema = {
  type: 'string',
  description: 'Background music track for video',
  enum: [
    'video-creation/music/adventure/temple_of_treasures.mp3',
    'video-creation/music/adventure/adventurous_intro.mp3',
    'video-creation/music/ambient/gentle_ambient_loop.mp3',
    'video-creation/music/ambient/serene_ambience.mp3',
    'video-creation/music/ambient/soothing_ambience.mp3',
    'video-creation/music/ambient/soothing_ambient_backdrop.mp3',
    'video-creation/music/ambient/tranquil_ambience.mp3',
    'video-creation/music/ambient/dreamscape.mp3',
    'video-creation/music/ambient/belonging_resonance.mp3',
    'video-creation/music/ambient/vivid_memories.mp3',
    'video-creation/music/cinematic/cinematic_intro.mp3',
    'video-creation/music/cinematic/cinematic_teaser.mp3',
    'video-creation/music/cinematic/dramatic_cinematic_score.mp3',
    'video-creation/music/cinematic/thriller_cinema_trailer.mp3',
    'video-creation/music/cinematic/fractured_paintings.mp3',
    'video-creation/music/cinematic/promise_of_tomorrow.mp3',
    'video-creation/music/cinematic/spooky_orchestral_theme.mp3',
    'video-creation/music/upbeat/light_upbeat_melody.mp3',
    'video-creation/music/upbeat/puzzle_time.mp3',
    'video-creation/music/upbeat/stomping_drums_rhythm.mp3',
    'video-creation/music/upbeat/stomps_and_claps_rhythm_track.mp3',
    'video-creation/music/news/news_theme.mp3',
    'video-creation/music/vintage/burlesque_sweetheart.mp3',
    'video-creation/music/other/highway_nocturne_national_sweetheart.mp3',
    'video-creation/music/other/haptic_sensation.mp3'
  ],
  'x-enum-descriptions': [
    'Adventure theme',
    'Short adventure intro',
    'Gentle ambient music',
    'Serene ambient theme',
    'Soothing ambient music',
    'Soothing ambient backdrop',
    'Tranquil ambient theme',
    'Dreamlike ambient',
    'Emotional ambient',
    'Memory-evoking ambient',
    'Cinematic introduction',
    'Cinematic teaser music',
    'Dramatic cinematic',
    'Intense thriller',
    'Artistic cinematic',
    'Hopeful cinematic',
    'Spooky orchestral',
    'Light upbeat',
    'Playful puzzle theme',
    'Rhythmic drums',
    'Stomps and claps',
    'Professional news theme',
    'Vintage burlesque',
    'Highway nocturne',
    'Haptic sensation theme'
  ]
} as const
