// TypeScript Version: 3.0 export type AxiosRequestHeaders = Record; export type AxiosResponseHeaders = Record & { "set-cookie"?: string[] }; export interface AxiosRequestTransformer { (data: any, headers?: AxiosRequestHeaders): any; } export interface AxiosResponseTransformer { (data: any, headers?: AxiosResponseHeaders): any; } export interface AxiosAdapter { (config: AxiosRequestConfig): AxiosPromise; } export interface AxiosBasicCredentials { username: string; password: string; } export interface AxiosProxyConfig { host: string; port: number; auth?: { username: string; password: string; }; protocol?: string; } export type Method = | 'get' | 'GET' | 'delete' | 'DELETE' | 'head' | 'HEAD' | 'options' | 'OPTIONS' | 'post' | 'POST' | 'put' | 'PUT' | 'patch' | 'PATCH' | 'purge' | 'PURGE' | 'link' | 'LINK' | 'unlink' | 'UNLINK'; export type ResponseType = | 'arraybuffer' | 'blob' | 'document' | 'json' | 'text' | 'stream'; export interface TransitionalOptions { silentJSONParsing?: boolean; forcedJSONParsing?: boolean; clarifyTimeoutError?: boolean; } export interface AxiosRequestConfig { url?: string; method?: Method; baseURL?: string; transformRequest?: AxiosRequestTransformer | AxiosRequestTransformer[]; transformResponse?: AxiosResponseTransformer | AxiosResponseTransformer[]; headers?: AxiosRequestHeaders; params?: any; paramsSerializer?: (params: any) => string; data?: D; timeout?: number; timeoutErrorMessage?: string; withCredentials?: boolean; adapter?: AxiosAdapter; auth?: AxiosBasicCredentials; responseType?: ResponseType; xsrfCookieName?: string; xsrfHeaderName?: string; onUploadProgress?: (progressEvent: any) => void; onDownloadProgress?: (progressEvent: any) => void; maxContentLength?: number; validateStatus?: ((status: number) => boolean) | null; maxBodyLength?: number; maxRedirects?: number; socketPath?: string | null; httpAgent?: any; httpsAgent?: any; proxy?: AxiosProxyConfig | false; cancelToken?: CancelToken; decompress?: boolean; transitional?: TransitionalOptions; signal?: AbortSignal; insecureHTTPParser?: boolean; } export interface HeadersDefaults { common: AxiosRequestHeaders; delete: AxiosRequestHeaders; get: AxiosRequestHeaders; head: AxiosRequestHeaders; post: AxiosRequestHeaders; put: AxiosRequestHeaders; patch: AxiosRequestHeaders; options?: AxiosRequestHeaders; purge?: AxiosRequestHeaders; link?: AxiosRequestHeaders; unlink?: AxiosRequestHeaders; } export interface AxiosDefaults extends Omit, 'headers'> { headers: HeadersDefaults; } export interface AxiosResponse { data: T; status: number; statusText: string; headers: AxiosResponseHeaders; config: AxiosRequestConfig; request?: any; } export interface AxiosError extends Error { config: AxiosRequestConfig; code?: string; request?: any; response?: AxiosResponse; isAxiosError: boolean; toJSON: () => object; } export interface AxiosPromise extends Promise> { } export interface CancelStatic { new (message?: string): Cancel; } export interface Cancel { message: string; } export interface Canceler { (message?: string): void; } export interface CancelTokenStatic { new (executor: (cancel: Canceler) => void): CancelToken; source(): CancelTokenSource; } export interface CancelToken { promise: Promise; reason?: Cancel; throwIfRequested(): void; } export interface CancelTokenSource { token: CancelToken; cancel: Canceler; } export interface AxiosInterceptorManager { use(onFulfilled?: (value: V) => T | Promise, onRejected?: (error: any) => any): number; eject(id: number): void; } export class Axios { constructor(config?: AxiosRequestConfig); defaults: AxiosDefaults; interceptors: { request: AxiosInterceptorManager; response: AxiosInterceptorManager; }; getUri(config?: AxiosRequestConfig): string; request, D = any>(config: AxiosRequestConfig): Promise; get, D = any>(url: string, config?: AxiosRequestConfig): Promise; delete, D = any>(url: string, config?: AxiosRequestConfig): Promise; head, D = any>(url: string, config?: AxiosRequestConfig): Promise; options, D = any>(url: string, config?: AxiosRequestConfig): Promise; post, D = any>(url: string, data?: D, config?: AxiosRequestConfig): Promise; put, D = any>(url: string, data?: D, config?: AxiosRequestConfig): Promise; patch, D = any>(url: string, data?: D, config?: AxiosRequestConfig): Promise; } export interface AxiosInstance extends Axios { (config: AxiosRequestConfig): AxiosPromise; (url: string, config?: AxiosRequestConfig): AxiosPromise; } export interface AxiosStatic extends AxiosInstance { create(config?: AxiosRequestConfig): AxiosInstance; Cancel: CancelStatic; CancelToken: CancelTokenStatic; Axios: typeof Axios; readonly VERSION: string; isCancel(value: any): boolean; all(values: Array>): Promise; spread(callback: (...args: T[]) => R): (array: T[]) => R; isAxiosError(payload: any): payload is AxiosError; } declare const axios: AxiosStatic; export default axios;