/**
 * 模板相关类型定义
 */

/**
 * 模板信息
 */
export interface TemplateInfo {
  name: string
  description: string
  created_at: string
  stats: {
    row_count: number
    col_count: number
  }
  source_image_size: {
    width: number
    height: number
  }
  path?: string  // 后端可能返回模板文件路径
}

/**
 * 文件对信息
 */
export interface FilePair {
  index: number
  image_path: string
  image_name: string
  json_path: string
  json_name: string
  has_structure: boolean
  structure_path: string | null
}

/**
 * 目录项
 */
export interface DirectoryItem {
  name: string
  path: string
  is_dir: boolean
  size: number | null
}

/**
 * 数据源配置
 */
export interface DataSourceConfig {
  filename: string  // 配置文件名（不含 .yaml 扩展名），作为唯一标识符
  name: string  // 数据源名称（可能重名，仅用于显示）
  description: string
  json_format: 'mineru' | 'ppstructure'
  base_dir: string
  json_dir: string
  image_dir: string
  json_pattern?: string
  image_pattern?: string
  sort_key?: string
  output: {
    directory: string
    structure_suffix: string
    image_suffix: string
  }
  batch?: {
    enabled: boolean
    template_name?: string
    auto_apply: boolean
    parallel_workers: number
  }
}
