/**
 * Smart Documentation Organizer
 *
 * Intelligently organizes large documentation folders by:
 * 1. Detecting themes from file content and titles
 * 2. Generating themed category index files for navigation
 * 3. Creating Docusaurus-compatible sidebar structures
 * 4. Auto-organizing when folder exceeds threshold (default: 30 files)
 *
 * Philosophy: Generate indexes, don't move files (preserves URLs)
 */
import { Logger } from '../utils/logger.js';
export interface ThemeDefinition {
    id: string;
    name: string;
    keywords: string[];
    icon: string;
}
export interface ThemedFile {
    path: string;
    name: string;
    title: string;
    themes: string[];
    primaryTheme: string;
    lastModified: Date;
}
export interface ThemeCategory {
    theme: ThemeDefinition;
    files: ThemedFile[];
    count: number;
}
export interface OrganizationPlan {
    folder: string;
    totalFiles: number;
    themeCategories: ThemeCategory[];
    uncategorized: ThemedFile[];
    suggestedIndexes: string[];
    needsOrganization: boolean;
}
export interface SmartDocOrganizerOptions {
    projectPath: string;
    logger?: Logger;
    thresholdForOrganization?: number;
    generateIndexes?: boolean;
    dryRun?: boolean;
}
/**
 * Smart Documentation Organizer
 */
export declare class SmartDocOrganizer {
    private projectPath;
    private logger;
    private threshold;
    private generateIndexes;
    private dryRun;
    constructor(options: SmartDocOrganizerOptions);
    /**
     * Analyze a documentation folder and create organization plan
     */
    analyzeFolder(folderPath: string): Promise<OrganizationPlan>;
    /**
     * Classify a file by detecting themes from content and filename
     */
    private classifyFile;
    /**
     * Group files by their primary theme
     */
    private groupByTheme;
    /**
     * Generate themed index files for Docusaurus navigation
     */
    generateCategoryIndexes(plan: OrganizationPlan): Promise<string[]>;
    /**
     * Generate main category index with links to themed indexes
     */
    private generateMainCategoryIndex;
    /**
     * Generate themed index with all files in that category
     */
    private generateThemeIndex;
    /**
     * Sub-group files by keyword for large categories
     */
    private subGroupByKeyword;
    /** Known acronyms to preserve in uppercase when formatting titles */
    private static readonly ACRONYMS;
    /**
     * Format string to title case, preserving known acronyms
     */
    private formatTitle;
    /**
     * Update Docusaurus sidebar configuration
     */
    updateDocusaurusSidebar(plans: OrganizationPlan[]): Promise<string>;
    /**
     * Run full organization on internal docs
     */
    organizeInternalDocs(): Promise<{
        plans: OrganizationPlan[];
        generatedFiles: string[];
        summary: string;
    }>;
    /**
     * Generate organization summary
     */
    private generateSummary;
}
/**
 * Convenience function to organize docs
 */
export declare function organizeDocumentation(projectPath: string, options?: Partial<SmartDocOrganizerOptions>): Promise<{
    plans: OrganizationPlan[];
    generatedFiles: string[];
    summary: string;
}>;
//# sourceMappingURL=smart-doc-organizer.d.ts.map