/** * @license * Copyright 2025 Vybestack LLC * SPDX-License-Identifier: Apache-2.0 */ import { type TodoToolCall } from '../tools/todo-schemas.js'; interface TodoToolCalls { executing: Map; completed: TodoToolCall[]; } /** * Service to track tool calls and associate them with active todos */ export declare class ToolCallTrackerService { /** * Starts tracking an executing tool call */ static startTrackingToolCall(sessionId: string, toolName: string, parameters: Record, agentId?: string): string | null; /** * Marks a tool call as completed and moves it to the completed array */ static completeToolCallTracking(sessionId: string, toolCallId: string, agentId?: string): Promise; /** * Marks a tool call as failed */ static failToolCallTracking(sessionId: string, toolCallId: string, agentId?: string): void; /** * Gets all tool calls (executing and completed) for a specific todo */ static getAllToolCalls(sessionId: string, todoId: string, agentId?: string): TodoToolCall[]; /** * Subscribes to tool call updates */ static subscribeToUpdates(sessionId: string, callback: () => void, agentId?: string): () => void; /** * Gets all tool calls for testing and debugging purposes */ static getAllToolCallsForSession(sessionId: string, agentId?: string): Map; /** * Clears all tool calls for a session (for testing purposes) */ static clearToolCallsForSession(sessionId: string, agentId?: string): void; /** * Generates a unique ID for tool calls */ private static generateId; /** * Notifies all subscribers of updates */ private static notifySubscribers; /** * Resolve an agent identifier, defaulting when missing. */ private static getScopedAgentId; } export {};