import { HttpRequestOptions } from './HttpRequestOptions.js'; import { HttpResponse } from './HttpResponse.js'; export interface IHttpRequest { getSupportedTarget(): IHttpRequest.Target; sendRequest(options: HttpRequestOptions): Promise; getStatusCode(response: HttpResponse): number; handleResponse(response: HttpResponse): Promise; isSuccessfulResponse(response: HttpResponse): boolean; isJsonResponse(response: HttpResponse): boolean; decodeJsonFromResponse(response: HttpResponse, failIfNotJson: boolean): Promise; receiveDataAsString(response: HttpResponse): Promise; receiveRawData(response: HttpResponse): Promise; checkWwwAuthenticateResponseHeader(response: HttpResponse): void; needsToRefreshToken(response: HttpResponse): boolean; getFileNameFromContentDispositionHeader(response: HttpResponse): string; getFileNameFromContentDispositionHeaderString(contentDisposition: string): string; parseWwwAuthenticateResonseHeaderString(wwwAuthenticate: string): object; } export declare namespace IHttpRequest { enum Target { Node = 0, Browser = 1 } }