/** * Agents diagnostic panel data provider. * * Subscribes to agent lifecycle events via the RuntimeEventBus and maintains * a bounded buffer of AgentEntry records. Provides filtered snapshots * for the agents/cohorts diagnostics panel. * * Tracks state, ownership, blockers, and completion status for each agent. */ import type { RuntimeEventBus } from '../../events/index.js'; import { type AgentEntry, type DiagnosticFilter, type ComponentConfig } from '../types.js'; /** * AgentsPanel, diagnostic data provider for agent lifecycle telemetry. * * Active agents are tracked in a live map; terminal agents are moved * to the history buffer for filtering and display. */ export declare class AgentsPanel { private readonly _config; private readonly _eventBus; /** Active agents keyed by agentId. */ private readonly _active; /** Completed agent history (oldest first). */ private readonly _history; /** Registered change notification callbacks. */ private readonly _subscribers; /** Unsubscribe function from the event bus. */ private _unsub; constructor(eventBus: RuntimeEventBus, config?: ComponentConfig); private _start; private _handleEnvelope; private _finalize; /** * Return a filtered snapshot combining active agents and completed history. * Ordered most-recent first. * * @param filter - Optional filter to restrict entries. */ getSnapshot(filter?: DiagnosticFilter): AgentEntry[]; /** * Register a callback invoked whenever the data changes. * @returns An unsubscribe function. */ subscribe(callback: () => void): () => void; /** * Release all event bus subscriptions and clear internal state. */ dispose(): void; private _notify; } //# sourceMappingURL=agents.d.ts.map