diff --git a/index.d.ts b/index.d.ts index dc03f4f..4f398be 100644 --- a/index.d.ts +++ b/index.d.ts @@ -343,7 +343,7 @@ export interface AxiosInterceptorOptions { } export interface AxiosInterceptorManager { - use(onFulfilled?: (value: V) => T | Promise, onRejected?: (error: any) => any, options?: AxiosInterceptorOptions): number; + use(onFulfilled?: (value: V) => V | Promise, onRejected?: (error: any) => any, options?: AxiosInterceptorOptions): number; eject(id: number): void; } diff --git a/test/typescript/axios.ts b/test/typescript/axios.ts index 4ff50cb..eddf2bc 100644 --- a/test/typescript/axios.ts +++ b/test/typescript/axios.ts @@ -300,6 +300,19 @@ axios.interceptors.response.use( (error: any) => Promise.reject(error) ); +const voidRequestInterceptorId = axios.interceptors.request.use( + // @ts-expect-error -- Must return an AxiosRequestConfig (or throw) + (_response) => {}, + (error: any) => Promise.reject(error) +); +const voidResponseInterceptorId = axios.interceptors.response.use( + // @ts-expect-error -- Must return an AxiosResponse (or throw) + (_response) => {}, + (error: any) => Promise.reject(error) +); +axios.interceptors.request.eject(voidRequestInterceptorId); +axios.interceptors.response.eject(voidResponseInterceptorId); + axios.interceptors.response.use((response: AxiosResponse) => response); axios.interceptors.response.use((response: AxiosResponse) => Promise.resolve(response));