/**
 * 🧹 Cleanup Analyzer - Digital Marie Kondo for Your Codebase
 * ==========================================================
 *
 * This analyzer helps identify "loose" files that may need cleanup - those files
 * that accumulate over time like digital dust bunnies. It uses intelligent pattern
 * recognition and context awareness to suggest potential cleanup candidates.
 *
 * Categories of files detected:
 * - Scattered documentation (README_old.md, NOTES.md in wrong places)
 * - Test artifacts and temporary test files
 * - Backup files (*.bak, *_backup.*, file_copy.*)
 * - Editor temporary files (.swp, ~, .DS_Store)
 * - Version iteration files (v1, v2, final_final)
 * - Build artifacts in wrong locations
 * - Log files outside designated directories
 * - Development experiments (scratch.*, playground.*)
 * - Screenshots and media files in wrong places
 *
 * The analyzer is respectful and cautious - it only suggests, never deletes.
 * It understands that one person's clutter might be another's treasure.
 */
export interface CleanupIssue {
    file: string;
    reason: string;
    category: CleanupCategory;
    severity: 'high' | 'medium' | 'low';
    suggestion: string;
    relatedFiles?: string[];
    properLocation?: string;
    safeToDelete: boolean;
    lastModified: Date;
    size: number;
}
export interface CleanupAnalysisResult {
    score: number;
    issues: CleanupIssue[];
    totalSizeWasted: number;
    categorySummary: Map<CleanupCategory, number>;
    recommendations: string[];
    safeCleanupCommands: string[];
}
export declare enum CleanupCategory {
    SCATTERED_DOCS = "scattered_documentation",
    TEST_ARTIFACTS = "test_artifacts",
    BACKUP_FILES = "backup_files",
    TEMP_FILES = "temporary_files",
    VERSION_ITERATIONS = "version_iterations",
    EDITOR_FILES = "editor_files",
    BUILD_ARTIFACTS = "build_artifacts_misplaced",
    LOG_FILES = "log_files_misplaced",
    EXPERIMENTS = "development_experiments",
    MEDIA_FILES = "media_files_misplaced",
    ARCHIVE_FILES = "archive_files",
    DUPLICATE_CONFIGS = "duplicate_configurations",
    ABANDONED_FILES = "abandoned_files",
    EMPTY_FILES = "empty_files"
}
export declare class CleanupAnalyzer {
    private projectRoot;
    private projectStructure;
    private issues;
    private readonly patterns;
    constructor(projectRoot: string);
    analyze(): Promise<CleanupAnalysisResult>;
    private analyzeProjectStructure;
    private analyzeProjectStructureAsync;
    private getAllFiles;
    private analyzeFile;
    private matchesPattern;
    private isGitIgnored;
    private isPackageRoot;
    private generateSuggestion;
    private isSafeToDelete;
    private suggestProperLocation;
    private findRelatedFiles;
    private findEmptyFiles;
    private findAbandonedFiles;
    private findDuplicateConfigs;
    private calculateResults;
    private generateRecommendations;
    private generateCleanupCommands;
    quickScan(): Promise<CleanupAnalysisResult>;
}
//# sourceMappingURL=CleanupAnalyzer.d.ts.map