export type ToolPairStatus = 'completed' | 'cancelled' | 'in_progress' | 'validation_failed'; export interface ToolRequestRecord { requestId: string; name: string; args: unknown; startedAt: number; } export interface ToolResponseRecord { requestId: string; status: ToolPairStatus; result?: unknown; error?: string; finishedAt: number; } export interface ToolCallPair { request: ToolRequestRecord; response: ToolResponseRecord; } export interface CancelledToolResult { __tool_status: 'CANCELLED'; requestId: string; name: string; } export interface InProgressToolResult { __tool_status: 'IN_PROGRESS'; requestId: string; name: string; interim?: string; } export declare function cancelledPlaceholder(requestId: string, name: string): CancelledToolResult; export declare function inProgressPlaceholder(requestId: string, name: string, interim?: string): InProgressToolResult; export declare class PairingTracker { private pairs; openRequest(name: string, args: unknown, requestId?: string): string; closePair(requestId: string, status: ToolPairStatus, result?: unknown, error?: string): ToolCallPair; getPair(requestId: string): ToolCallPair | undefined; getAllPairs(): ToolCallPair[]; hasDanglingRequests(): boolean; }