UNPKG

1.56 kBTypeScriptView Raw
1import { AxiosError, AxiosPromise, AxiosRequestConfig, AxiosResponse } from 'axios';
2import { Dictionary } from '@brandingbrand/fsfoundation';
3export { AxiosPromise, AxiosRequestConfig, AxiosResponse };
4export declare type FSNetworkError = AxiosError;
5export interface FSNetworkRequestConfig extends AxiosRequestConfig {
6 responseIntercept?: (response: AxiosResponse) => AxiosResponse;
7 responseError?: (error: any) => any;
8}
9export declare type FSNetworkPromise<T = any> = AxiosPromise<T>;
10export declare type FSNetworkResponse<T = any> = AxiosResponse<T>;
11export declare type FSNetworkRequestData = ArrayBuffer | ArrayBufferView | Dictionary | string | URLSearchParams;
12export default class FSNetwork {
13 private instance;
14 private interceptor?;
15 constructor(config?: FSNetworkRequestConfig);
16 removeInterceptor(): void;
17 setInterceptor(config?: FSNetworkRequestConfig): void;
18 request<T = any>(config: FSNetworkRequestConfig): FSNetworkPromise<T>;
19 get<T = any>(uri: string, config?: FSNetworkRequestConfig): FSNetworkPromise<T>;
20 delete(uri: string, config?: FSNetworkRequestConfig): FSNetworkPromise;
21 head(uri: string, config?: FSNetworkRequestConfig): FSNetworkPromise;
22 post<T = any>(uri: string, data?: FSNetworkRequestData, config?: FSNetworkRequestConfig): FSNetworkPromise<T>;
23 put<T = any>(uri: string, data?: FSNetworkRequestData, config?: FSNetworkRequestConfig): FSNetworkPromise<T>;
24 patch<T = any>(uri: string, data?: FSNetworkRequestData, config?: FSNetworkRequestConfig): FSNetworkPromise<T>;
25}