import { AxiosError, AxiosPromise, AxiosRequestConfig, AxiosResponse } from 'axios'; import { Dictionary } from '@brandingbrand/fsfoundation'; export { AxiosPromise, AxiosRequestConfig, AxiosResponse }; export declare type FSNetworkError = AxiosError; export interface FSNetworkRequestConfig extends AxiosRequestConfig { responseIntercept?: (response: AxiosResponse) => AxiosResponse; responseError?: (error: any) => any; } export declare type FSNetworkPromise = AxiosPromise; export declare type FSNetworkResponse = AxiosResponse; export declare type FSNetworkRequestData = ArrayBuffer | ArrayBufferView | Dictionary | string | URLSearchParams; export default class FSNetwork { private instance; private interceptor?; constructor(config?: FSNetworkRequestConfig); removeInterceptor(): void; setInterceptor(config?: FSNetworkRequestConfig): void; request(config: FSNetworkRequestConfig): FSNetworkPromise; get(uri: string, config?: FSNetworkRequestConfig): FSNetworkPromise; delete(uri: string, config?: FSNetworkRequestConfig): FSNetworkPromise; head(uri: string, config?: FSNetworkRequestConfig): FSNetworkPromise; post(uri: string, data?: FSNetworkRequestData, config?: FSNetworkRequestConfig): FSNetworkPromise; put(uri: string, data?: FSNetworkRequestData, config?: FSNetworkRequestConfig): FSNetworkPromise; patch(uri: string, data?: FSNetworkRequestData, config?: FSNetworkRequestConfig): FSNetworkPromise; }