/**
 * 废弃
 */
export type UiTemplateType =
  | 'TEMPLATE_DICTATION_HINT' // 汉字听写-提示 (jiu)
  | 'TEMPLATE_DICTATION_HOMOPHONE' // 汉字听写-同音 (tang)
  | 'TEMPLATE_COMPONENT_ADD' // 汉字加一加 (车)
  | 'TEMPLATE_WORD_DICTATION' // 词语听写 (zhi re)
  | 'TEMPLATE_IDIOM_TEXT_REQ' // 成语-文字要求 (反义字)
  | 'TEMPLATE_IDIOM_IMAGE' // 成语-看图
  | 'TEMPLATE_POETRY_MULTIPLE_CHOICE' // 诗词理解-选择题

/**
 * 题库类型
 */
export type QuestionCategoryName =
  | 'ChineseCharacterDictation' // 汉字听写-提示 (jiu)
  | 'CharacterRadicalAddition' // 汉字加一加 (车)
  | 'WordDictation' // 词语听写 (zhi re)
  | 'IdiomWriting' // 成语-文字要求 (反义字)
  // | 'TEMPLATE_IDIOM_IMAGE' // 成语-看图
  | 'PoetryComprehension' // 诗词理解-选择题

export interface QuestionOption {
  label: string // A, B, C
  text: string // 选项文本/值
  image?: string // 选项图片
  renderType?: 'text' | 'image' | 'tianzige' | 'mixed' // 关键字段：控制选项渲染样式
}

export interface QuestionContent {
  // 核心标准字段 (对应数据库列)
  title: string // 题干/主要内容 (原 word, questionText, mainText, pinyin, requirement, component)
  titleImage?: string // 题干图片 (原 image)
  titleAudio?: string // 题干音频 (原 soundUrl)
  options?: QuestionOption[] // 选项列表

  // 扩展元数据 (对应数据库 JSON 字段)
  meta?: {
    hint?: string // 提示
    example?: string // 示例
    pinyin?: string // 如果 title 是汉字，这里存拼音；反之亦然
    definition?: string // 释义
    strokeCount?: number // 笔画数
    radicals?: string // 部首
    [key: string]: any
  }
}

export interface Question {
  id: string
  content: QuestionContent
  answer: string[]
}

export interface NodeConfig {
  timeLimit: number
  questionCount: number
  scorePerQuestion: number
}

export interface ActivityNode {
  nodeId: string
  roundTitle: string
  moduleName: string
  batchName: string
  description: string
  uiTemplate: UiTemplateType
  config: NodeConfig
  questions: Question[]
}

export interface CompetitionData {
  activityInfo: {
    name: string
  }
  nodes: ActivityNode[]
}
