@debugmcp/mcp-debugger
Version:
Run-time step-through debugging for LLM agents.
46 lines (45 loc) • 1.39 kB
TypeScript
/**
* Request tracking utility for managing DAP request timeouts
*/
import { IRequestTracker, TrackedRequest } from './dap-proxy-interfaces.js';
export declare class RequestTracker implements IRequestTracker {
protected pendingRequests: Map<string, TrackedRequest>;
protected defaultTimeoutMs: number;
constructor(defaultTimeoutMs?: number);
/**
* Track a new request with timeout
*/
track(requestId: string, command: string, timeoutMs?: number): void;
/**
* Mark a request as completed and clear its timeout
*/
complete(requestId: string): void;
/**
* Clear all pending requests
*/
clear(): void;
/**
* Get all pending requests
*/
getPending(): Map<string, TrackedRequest>;
/**
* Get count of pending requests
*/
getPendingCount(): number;
/**
* Check if a specific request is pending
*/
isPending(requestId: string): boolean;
/**
* Get elapsed time for a request
*/
getElapsedTime(requestId: string): number | null;
}
/**
* Enhanced request tracker with timeout callbacks
*/
export declare class CallbackRequestTracker extends RequestTracker {
private onTimeout;
constructor(onTimeout: (requestId: string, command: string) => void, defaultTimeoutMs?: number);
track(requestId: string, command: string, timeoutMs?: number): void;
}