/** * Tool Calls diagnostic panel data provider. * * Subscribes to tool lifecycle events via the RuntimeEventBus and maintains * a bounded buffer of ToolCallEntry records. Provides filtered snapshots * for the tool-calls diagnostics panel. * * Phase timeline tracking allows the panel to render latency breakdowns * and highlight failures at any lifecycle phase. */ import type { RuntimeEventBus } from '../../events/index.js'; import { type ToolCallEntry, type DiagnosticFilter, type ComponentConfig } from '../types.js'; /** * ToolCallsPanel, diagnostic data provider for tool call telemetry. * * Listens to all tool domain events and builds a per-call timeline. * Completed calls are transferred to a bounded history buffer. */ export declare class ToolCallsPanel { private readonly _config; private readonly _eventBus; /** Active calls keyed by callId. */ private readonly _active; /** Completed call history (oldest first). */ private readonly _history; /** Registered change notification callbacks. */ private readonly _subscribers; /** Unsubscribe function returned by the event bus. */ private _unsub; constructor(eventBus: RuntimeEventBus, config?: ComponentConfig); /** * Subscribe to the tool domain and wire up event handlers. */ private _start; /** * Handle a tool domain envelope, routing to the appropriate update method. */ private _handleEnvelope; /** * Move a completed record from active to history. */ private _finalize; /** * Return a filtered snapshot of tool call entries. * Active calls are included as their current in-progress state. * History is ordered most-recent first. * * @param filter - Optional filter to restrict entries. */ getSnapshot(filter?: DiagnosticFilter): ToolCallEntry[]; /** * 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. * After disposal the panel will no longer receive new events. */ dispose(): void; private _notify; } //# sourceMappingURL=tool-calls.d.ts.map