export type ToolCallEvent = { toolCallId: string; toolName: string; toolInfo?: string; phase: "start"; input: string; } | { toolCallId: string; toolName: string; phase: "end"; durationMs: number; output: string | null; error: string | null; }; export type ToolCallEventSink = (event: ToolCallEvent) => void; export declare function createToolCallTracker(params: { emit: ToolCallEventSink; toolCallId?: string; toolName: string; toolInfo?: string; input?: Record; startedAt?: number; }): { start(): void; finishSuccess(output: unknown): void; finishError(error: unknown): void; };