/**
 * DiffProcessor - Central utility for intelligent diff compression and processing
 *
 * Handles large diffs by applying smart reduction strategies while preserving
 * semantic meaning for AI analysis.
 */
export declare class DiffProcessor {
    [key: string]: any;
    constructor(options?: Record<string, any>);
    getDefaultMaxSize(): any;
    getDefaultPriorityFiles(): any;
    /**
     * Process a collection of files with diffs, applying intelligent compression
     */
    processFiles(files: any, _options?: Record<string, any>): {
        processedFiles: any[];
        totalSize: number;
        patterns: Record<string, any>;
        filesProcessed: number;
        filesSkipped: number;
    };
    /**
     * Process a single file's diff with intelligent compression
     */
    processFileDiff(file: any, options?: Record<string, any>): any;
    /**
     * Prioritize files by importance for analysis
     */
    prioritizeFiles(files: any): any[];
    /**
     * Calculate file importance score
     */
    calculateFileImportance(file: any): number;
    /**
     * Detect bulk change patterns across files
     */
    detectChangePatterns(files: any): Record<string, any>;
    /**
     * Check if a file matches a bulk pattern
     */
    matchesBulkPattern(file: any, patterns: any): any;
    /**
     * Apply diff filtering to remove noise
     */
    applyDiffFiltering(diff: any, _file: any): any;
    /**
     * Check if a file appears to be mostly formatting changes
     */
    isLikelyFormattingChange(file: any): boolean;
    /**
     * Apply intelligent truncation that preserves structure
     */
    intelligentTruncation(diff: any, budget: any, options?: Record<string, any>): any;
    /**
     * Generate fallback description for files without diffs
     */
    generateFallbackDescription(file: any): string;
    /**
     * Get file type description
     */
    getFileTypeDescription(filePath: any): "JSON configuration" | "JavaScript/TypeScript file" | "documentation file" | "file" | "package configuration" | "test file";
    /**
     * Create summary for remaining files that weren't processed
     */
    createRemainingFilesSummary(remainingFiles: any, _patterns: any): {
        path: string;
        status: string;
        diff: string;
        processed: boolean;
        compressionApplied: boolean;
        isSummary: boolean;
    };
    /**
     * Categorize a file for summary purposes
     */
    categorizeFile(file: any): "build" | "configuration" | "documentation" | "other" | "test";
    /**
     * Estimate size of processed content
     */
    estimateSize(content: any): any;
}
export default DiffProcessor;
