/** * Schema Loader - Load Excel import schemas from various sources * * Supports loading schemas from: * - .f5/schemas/ directory (project-level) * - Built-in schemas (bundled with CLI) * - URL (remote schemas) */ import { ExcelImportSchema } from '../../types/excel-schema.js'; /** * Built-in schema for Japanese issue tracking Excel files (問題管理表) */ export declare const BUILTIN_JAPANESE_ISSUES_SCHEMA: ExcelImportSchema; /** * Built-in schema for Vietnamese issue tracking */ export declare const BUILTIN_VIETNAMESE_ISSUES_SCHEMA: ExcelImportSchema; /** * Built-in schema for standard English issue tracking */ export declare const BUILTIN_ENGLISH_ISSUES_SCHEMA: ExcelImportSchema; export declare class SchemaLoader { private projectSchemaDir; private cache; constructor(projectRoot?: string); /** * Load a schema by name from various sources * * Resolution order: * 1. Cache (if already loaded) * 2. Project schemas (.f5/schemas/) * 3. Built-in schemas * 4. URL (if name starts with http) */ load(name: string): Promise; /** * Load schema from project .f5/schemas directory */ loadFromProject(name: string): Promise; /** * Load schema from a file path */ loadFromFile(filePath: string): Promise; /** * Load schema from URL */ loadFromUrl(url: string): Promise; /** * Load built-in schema by name */ loadBuiltin(name: string): ExcelImportSchema | null; /** * Get all available schemas (built-in + project) */ getAvailableSchemas(): Promise>; /** * Save a schema to the project */ saveToProject(schema: ExcelImportSchema): Promise; /** * Delete a project schema */ deleteFromProject(name: string): Promise; /** * Clear the schema cache */ clearCache(): void; /** * Validate schema structure */ private validateSchema; /** * Auto-detect best schema for an Excel file */ detectBestSchema(sheetNames: string[], headers: string[]): Promise; } export declare function getSchemaLoader(projectRoot?: string): SchemaLoader;