/** * Queue Orchestrator * * Centralized management of all queue systems in the API package. * Provides unified control, monitoring, and coordination between different queues. */ import { DebuggerQueueManager, OperationTracker } from '../debugger/queue'; import { EventQueueManager, ConfigUpdateQueueManager } from '../events/queue'; import type { OrchestratorConfig, QueueHealth, QueueStats } from '@plyaz/types/api'; /** * Unified queue orchestrator */ export declare class QueueOrchestrator { private static instance; private readonly config; private healthCheckTimer?; private readonly registeredQueues; private constructor(); /** * Initialize configuration with defaults */ private initializeConfig; /** * Register all core queues */ private registerCoreQueues; /** * Get singleton instance */ static getInstance(config?: OrchestratorConfig): QueueOrchestrator; /** * Initialize all queues */ initialize(): void; /** * Register a queue for orchestration */ registerQueue(name: string, queueManager: DebuggerQueueManager | EventQueueManager | ConfigUpdateQueueManager | OperationTracker): void; /** * Get all queue statistics */ getAllStats(): Record; /** * Check queue size health */ private checkQueueSizeHealth; /** * Check failure rate health */ private checkFailureRateHealth; /** * Check throughput health */ private checkThroughputHealth; /** * Get queue health status */ getQueueHealth(): QueueHealth[]; /** * Start health monitoring */ private startHealthMonitoring; /** * Auto-scale a queue based on load */ private autoScaleQueue; /** * Stop health monitoring */ stopHealthMonitoring(): void; /** * Reset all queues */ resetAll(): void; /** * Destroy the orchestrator */ destroy(): void; /** * Get performance metrics */ getPerformanceMetrics(): { totalQueued: number; totalProcessed: number; totalFailed: number; avgProcessingTime: number; avgThroughput: number; }; } //# sourceMappingURL=QueueOrchestrator.d.ts.map