/** * Tasks diagnostic panel data provider. * * Subscribes to task lifecycle events via the RuntimeEventBus and maintains * a bounded buffer of TaskEntry records. Provides filtered snapshots * for the tasks diagnostics panel. * * Covers all task kinds: exec, agent, acp, scheduler, daemon, mcp, plugin, integration. */ import type { RuntimeEventBus } from '../../events/index.js'; import { type TaskEntry, type DiagnosticFilter, type ComponentConfig } from '../types.js'; /** * TasksPanel, diagnostic data provider for runtime task telemetry. * * Active tasks are tracked in a live map; terminal tasks are moved * to the history buffer for filtering and display. */ export declare class TasksPanel { private readonly _config; private readonly _eventBus; /** Active tasks keyed by taskId. */ private readonly _active; /** Completed task 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 tasks and completed history. * Ordered most-recent first. * * @param filter - Optional filter to restrict entries. */ getSnapshot(filter?: DiagnosticFilter): TaskEntry[]; /** * 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=tasks.d.ts.map