export interface IChangeParserConfigRequestBody {
  pages?: number[][];
  chunk_token_num?: number;
  layout_recognize?: string;
  task_page_size?: number;
  delimiter?: string;
  auto_keywords?: number;
  auto_questions?: number;
  html4excel?: boolean;
  toc_extraction?: boolean;
  image_table_context_window?: number;
  image_context_size?: number;
  table_context_size?: number;
  raptor?: {
    use_raptor?: boolean;
    prompt?: string;
    max_token?: number;
    threshold?: number;
    max_cluster?: number;
    random_seed?: number;
    scope?: string;
    clustering_method?: 'gmm' | 'ahc';
    tree_builder?: 'raptor' | 'psi';
  };
  compilation_template_group_id?: string[];
  // Metadata fields
  metadata?: Array<{
    key?: string;
    description?: string;
    enum?: string[];
  }>;
  built_in_metadata?: Array<{
    key?: string;
    description?: string;
    enum?: string[];
  }>;
  enable_metadata?: boolean;
}

export interface IChangeParserRequestBody {
  parser_id: string;
  pipeline_id?: string;
  // 1 = BuiltIn (parser_id), 2 = Pipeline (pipeline_id); omitted = unspecified.
  parseType?: number;
  doc_id?: string;
  parser_config: IChangeParserConfigRequestBody;
}

export interface IDocumentMetaRequestBody {
  documentId: string;
  meta: string; // json format string
}
