/** * Agentic QE v3 - Worker Manager Implementation * ADR-014: Background Workers for QE Monitoring * * Manages the lifecycle and scheduling of all background workers. * Provides centralized control for starting, stopping, and monitoring workers. */ import { Worker, WorkerManager as IWorkerManager, WorkerManagerHealth, WorkerResult, WorkerEventBus, WorkerMemory, WorkerDomainAccess, WorkerEvent } from './interfaces'; import { DomainName } from '../shared/types'; /** * Reference interface for kernel (to avoid circular dependency) */ interface KernelReference { getDomainAPI(domain: DomainName): T | undefined; getHealth(): { domains: Record; }; } /** * Worker Manager implementation */ export declare class WorkerManagerImpl implements IWorkerManager { private workers; private timers; private abortControllers; private eventBus; private memory; private domainAccess; private running; private kernelRef; constructor(options?: { eventBus?: WorkerEventBus; memory?: WorkerMemory; domainAccess?: WorkerDomainAccess; kernel?: KernelReference; }); /** * Set or update the kernel reference * Allows late binding of kernel after construction */ setKernel(kernel: KernelReference): void; /** * Register a worker */ register(worker: Worker): void; /** * Unregister a worker */ unregister(workerId: string): void; /** * Get a worker by ID */ get(workerId: string): Worker | undefined; /** * List all registered workers */ list(): Worker[]; /** * Start all enabled workers */ startAll(): Promise; /** * Stop all workers */ stopAll(): Promise; /** * Run a specific worker immediately */ runNow(workerId: string): Promise; /** * Get manager health status */ getHealth(): WorkerManagerHealth; /** * Subscribe to worker events */ onWorkerEvent(handler: (event: WorkerEvent) => void): () => void; private startWorker; private stopWorker; private scheduleNextRun; private createContext; } export {}; //# sourceMappingURL=worker-manager.d.ts.map