/**
 * Cleanup Coordinator - Project-Scoped Resource Cleanup
 *
 * Manages temporary directories and ensures clean shutdown of project resources
 * with isolation between different debugging sessions.
 */
export declare class CleanupCoordinator {
    private tempBaseDirectory;
    private projectTempDirs;
    constructor(tempBaseDirectory?: string);
    /**
     * Create isolated temporary directory for a project session
     */
    createProjectTempDir(projectId: string): Promise<string>;
    /**
     * Get temporary directory for a project
     */
    getProjectTempDir(projectId: string): string | null;
    /**
     * Get specific subdirectory path for a project
     */
    getProjectSubDir(projectId: string, subDir: 'browser-data' | 'screenshots' | 'logs' | 'reports'): string | null;
    /**
     * Cleanup specific project's temporary files
     */
    cleanupProject(projectId: string): Promise<void>;
    /**
     * Emergency cleanup - remove all temporary directories
     */
    emergencyCleanup(): Promise<void>;
    /**
     * Cleanup old/abandoned temporary directories
     */
    cleanupAbandonedDirs(): Promise<string[]>;
    /**
     * Get disk usage for all project temp directories
     */
    getDiskUsage(): Promise<{
        [projectId: string]: number;
    }>;
    /**
     * Get total disk usage for all sessions
     */
    getTotalDiskUsage(): Promise<number>;
    /**
     * Cleanup projects exceeding disk quota
     */
    cleanupOverQuota(maxSizeMB: number): Promise<string[]>;
    private ensureBaseDirectory;
    private killBrowserProcesses;
    private getDirectorySize;
    private markForDeferredCleanup;
    private sleep;
    /**
     * Validate that temp directories are properly isolated
     */
    validateIsolation(): Promise<{
        isolated: boolean;
        conflicts: string[];
        recommendations: string[];
    }>;
}
//# sourceMappingURL=cleanup-coordinator.d.ts.map