import { AxiosRequestConfig } from 'axios'; import { TokenService } from '../../resources/token'; import { AccessToken } from '../../resources/token/types'; import { ApiErrorResponse, ApiSuccessResponse } from '../types/api'; import { AnyType } from '../types/utility'; export declare const HEADERS: Readonly>; export declare class ApiClient { private instance; private tokenService; private _accessToken?; private _debugMode; get accessToken(): AccessToken | undefined; constructor(tokenService: TokenService, debugMode?: boolean); private get http(); private initToken; private initHttp; private isTokenValid; request(url: URL, config?: AxiosRequestConfig): Promise | ApiErrorResponse>; get(url: URL, config?: AxiosRequestConfig): Promise | ApiErrorResponse>; post(url: URL, data?: T, config?: AxiosRequestConfig): Promise | ApiErrorResponse>; put(url: URL, data?: T, config?: AxiosRequestConfig): Promise | ApiErrorResponse>; delete(url: URL, config?: AxiosRequestConfig): Promise | ApiErrorResponse>; }