import { RequestRacerParams, ParseResponseParams, IRequestParams, FormattedEndpointParams, IResponse, IJSONPRCRequestParams, GetIsomorphicFetchParamsType, GetIsomorphicFetchReturnsType, GetFetchBodyParamsType, GetPreparedResponseDataParams, FormatResponseParamsType, AbortListenersParamsType, GetFormattedHeadersParamsType, GetFilteredDefaultErrorMessageParamsType, SetResponseTrackOptions, TraceBaseRequestParamsType, SetResponsePersistentParamsOptions, GetMiddlewareCombinedResponseParamsType, MiddlewareParams, GetTimeoutExceptionParamsType, ICache, SetResponseFromCacheParamsType, GetResponseFromCacheParamsType, GetFetchParamsType } from "../types"; import { requestProtocolsMap } from "../constants"; interface IBaseRequest { makeFetch: (values: IRequestParams & IJSONPRCRequestParams & { requestProtocol: keyof typeof requestProtocolsMap; } & { method: Pick; }) => Promise; requestRacer: (params: RequestRacerParams) => Promise; parseResponseData: (data: ParseResponseParams) => any; getIsomorphicFetch: (params: GetIsomorphicFetchParamsType) => GetIsomorphicFetchReturnsType; addAbortListenerToRequest: (params: AbortListenersParamsType) => void; getFormattedEndpoint: (params: FormattedEndpointParams) => string; getFetchBody: (params: GetFetchBodyParamsType) => any; getFormattedHeaders: (options: GetFormattedHeadersParamsType) => Record | undefined; } export declare class BaseRequest implements IBaseRequest { abortRequestListener: any; response: Response | null; parsedResponseData: any; statusCode: number; fetchParams?: RequestInit & Pick & { endpoint: string; }; validationError: boolean; cookie: string; responseHeaders: Record; static dependencies: Record; static persistentOptionsGetters: Array; static responseTrackCallbacks: Array; static middlewares: Array; static cache?: ICache; parseResponseData: ({ response, parseType, isResponseStatusSuccess, isStatusEmpty, isNotFound, progressOptions, requestProtocol }: ParseResponseParams) => Promise; addAbortListenerToRequest: ({ fetchController, abortRequestId }: AbortListenersParamsType) => void; removeAbortListenerFromRequest: () => void; getFetchParams: ({ proxyPersistentOptionsAreDisabled, params }: GetFetchParamsType) => RequestInit; getIsomorphicFetch: ({ endpoint, fetchParams, abortRequestId, proxyPersistentOptionsAreDisabled }: GetIsomorphicFetchParamsType) => GetIsomorphicFetchReturnsType; getFormattedEndpoint: ({ endpoint, queryParams, arrayFormat }: FormattedEndpointParams) => string; getFilteredDefaultErrorMessage: ({ response, isErrorTextStraightToOutput }: GetFilteredDefaultErrorMessageParamsType) => string; getMiddlewareCombinedResponse: ({ middlewaresAreDisabled, response, ...middlewareParams }: GetMiddlewareCombinedResponseParamsType) => Promise; getFetchBody: ({ requestProtocol, body, method, version, id, isBatchRequest }: GetFetchBodyParamsType) => any; getFormattedHeaders: ({ body, headers, isPureFileRequest }: GetFormattedHeadersParamsType) => Record; getPreparedResponseData: ({ response, translateFunction, protocol, isErrorTextStraightToOutput, statusCode, responseHeaders, parseType, isBatchRequest, responseSchema, body, isNotFound, isPureFileRequest, ignoreResponseIdCompare }: GetPreparedResponseDataParams) => FormatResponseParamsType; traceBaseRequest: ({ traceRequestCallback, response, requestError, validationError, responseError, requestCookies, requestBody, requestHeaders, responseBody, formattedResponse, endpoint, method, code, tracingDisabled, }: TraceBaseRequestParamsType) => void; getResponseFromCache: ({ endpoint, method, requestBody, requestHeaders, requestCookies, cacheIsDisabled, cacheNoStore, requestCache, fullEndpoint }: GetResponseFromCacheParamsType) => Promise, Record> | null | undefined>; setResponseToCache: ({ endpoint, method, requestBody, requestHeaders, requestCookies, cacheIsDisabled, cacheNoStore, requestCache, response, fullEndpoint }: SetResponseFromCacheParamsType) => void; makeFetch: & { requestProtocol: keyof typeof requestProtocolsMap; } & { method: Pick; }>(mainParams: MakeFetchType) => Promise; getTimeoutException: ({ translateFunction, isErrorTextStraightToOutput, fetchController, customTimeout, }: GetTimeoutExceptionParamsType) => Promise; requestRacer: ({ request, fetchController, translateFunction, isErrorTextStraightToOutput, customTimeout }: RequestRacerParams) => Promise; } export {};