/**
 * V2 Advanced Stability Monitor - Revolutionary HTTP-First Architecture
 *
 * Comprehensive stability monitoring for V2 stateless architecture with:
 * - Circuit breaker integration for tool reliability
 * - HTTP request health monitoring
 * - Real-time resource tracking and alerting
 * - Automatic recovery and degradation handling
 * - Performance trend analysis and prediction
 * - Multi-session coordination stability
 */
import { EventEmitter } from 'events';
import { V2SessionRegistry } from '../session/v2-session-registry.js';
import { AdvancedMemoryManager } from '../utils/advanced-memory-manager.js';
import { V2StabilityConfig, V2StabilityMetrics, V2HealthReport, V2SystemHealth } from './v2-stability-types.js';
export declare class V2StabilityMonitor extends EventEmitter {
    private config;
    private sessionRegistry;
    private memoryManager;
    private circuitBreakers;
    private metrics;
    private events;
    private monitoringInterval?;
    private healthCheckInterval?;
    private performanceTrends;
    private lastHealthReport?;
    private alertHistory;
    constructor(sessionRegistry: V2SessionRegistry, memoryManager: AdvancedMemoryManager, config?: Partial<V2StabilityConfig>);
    /**
     * Initialize baseline metrics
     */
    private initializeMetrics;
    /**
     * Initialize circuit breakers for critical system components
     */
    private initializeCircuitBreakers;
    /**
     * Start comprehensive monitoring
     */
    private startMonitoring;
    /**
     * Core monitoring cycle - HTTP-optimized
     */
    private performMonitoringCycle;
    /**
     * Comprehensive health check with recovery recommendations
     */
    private performHealthCheck;
    /**
     * Record component success for circuit breaker
     */
    recordComponentSuccess(component: string, responseTime?: number): void;
    /**
     * Record component failure for circuit breaker
     */
    recordComponentFailure(component: string, error: string): void;
    /**
     * Check if component can be executed (circuit is not open)
     */
    canExecuteComponent(component: string): {
        allowed: boolean;
        reason?: string;
    };
    /**
     * Get current stability metrics
     */
    getStabilityMetrics(): V2StabilityMetrics;
    /**
     * Get latest health report
     */
    getHealthReport(): V2HealthReport | undefined;
    /**
     * Get system health overview
     */
    getSystemHealthOverview(): V2SystemHealth;
    /**
     * Force emergency recovery
     */
    emergencyRecovery(reason?: string): Promise<void>;
    private updateSystemMetrics;
    private updateHttpTransportMetrics;
    private updateSessionHealthMetrics;
    private updateToolReliabilityMetrics;
    private calculatePerformanceIndicators;
    /**
     * Calculate availability based on circuit breaker states
     * This gives a true measure of service availability
     */
    private calculateCircuitBreakerAvailability;
    /**
     * Robust circuit breaker availability calculation that considers startup state
     * Only counts actual failures, not components that simply haven't been tested yet
     */
    private calculateRobustCircuitBreakerAvailability;
    private checkForAlerts;
    /**
     * Alert throttling to prevent spam
     */
    private alertThrottleMap;
    private readonly ALERT_THROTTLE_MS;
    private shouldEmitAlert;
    private recordPerformanceTrend;
    private assessSystemHealth;
    private assessComponentHealth;
    private analyzeTrends;
    private calculateTrend;
    private generateRecommendations;
    private generateRecoverySuggestions;
    private triggerAutoRecovery;
    private resetCircuitBreaker;
    private calculateCpuUsage;
    private calculateDiskUsage;
    private measureNetworkLatency;
    private getMetricsSnapshot;
    private emitStabilityEvent;
    private emitAlert;
    private handleMonitoringError;
    /**
     * Graceful shutdown
     */
    shutdown(): Promise<void>;
}
//# sourceMappingURL=v2-stability-monitor.d.ts.map