import { ILoadbalance } from '@nestcloud/common'; import { Interceptor } from './interfaces/interceptor.interface'; import { AxiosInstance, AxiosRequestConfig, AxiosResponse } from 'axios'; import { HttpOptions } from './interfaces/http-options.interface'; import { Brakes, Fallback } from '@nestcloud/brakes'; export declare class HttpClient { private readonly http; private readonly options; private lb; private brakes; private fallback; private interceptors; private readonly service; constructor(http: AxiosInstance, options: HttpOptions); create(options?: HttpOptions): HttpClient; useLb(lb: ILoadbalance): this; useInterceptors(...interceptors: Interceptor[]): this; useBrakes(brakes: Brakes, fallback?: Fallback): void; get(url: string, config?: AxiosRequestConfig): Promise; delete(url: string, config?: AxiosRequestConfig): Promise; head(url: string, config?: AxiosRequestConfig): Promise; post(url: string, data?: any, config?: AxiosRequestConfig): Promise; put(url: string, data?: any, config?: AxiosRequestConfig): Promise; patch(url: string, data?: any, config?: AxiosRequestConfig): Promise; request(options: AxiosRequestConfig): Promise; private requestWithBrakes; doRequest(options: AxiosRequestConfig): Promise; private registerInterceptors; private send; }