export interface RequestStartContext { url: string; method: string; startTime: number; type: 'fetch' | 'xmlhttprequest'; } export interface RequestEndContextSuccess { endTime: number; status: number; state: 'success'; } export interface RequestEndContextError { endTime: number; state: 'error'; error?: Error; } export type RequestEndContext = RequestEndContextSuccess | RequestEndContextError; export type RequestStartCallback = (context: RequestStartContext) => { onRequestEnd?: RequestEndCallback; extraRequestHeaders?: Record; } | undefined; export type RequestEndCallback = (context: RequestEndContext) => void; export declare class RequestTracker { private callbacks; onStart(startCallback: RequestStartCallback): void; start(context: RequestStartContext): { onRequestEnd: (endContext: RequestEndContext) => void; extraRequestHeaders: Record[]; }; } //# sourceMappingURL=request-tracker.d.ts.map