<!-- Click "Preview" for a more readable version --

Please read and follow the instructions before submitting an issue:

- Read all our documentation, especially the [README](https://github.com/axios/axios/blob/master/README.md). It may contain information that helps you solve your issue.
- Ensure your issue isn't already [reported](https://github.com/axios/axios/issues?utf8=%E2%9C%93&q=is%3Aissue).
- If you aren't sure that the issue is caused by Axios or you just need help, please use [Stack Overflow](https://stackoverflow.com/questions/tagged/axios) or [our chat](https://gitter.im/mzabriskie/axios).
- If you're reporting a bug, ensure it isn't already fixed in the latest Axios version.
- Don't remove any title of the issue template, or it will be treated as invalid by the bot.

⚠️👆 Feel free to these instructions before submitting the issue 👆⚠️
-->

#### Is your feature request related to a problem? Please describe.
I was using `interceptors` like
```js
axios.interceptors.response.use(function (
  response: AxiosResponse<YApiResponseBody>
): YApiResponseBody {
  return response.data
},
```
However, I got the error

> Argument of type '(response: AxiosResponse<YApiResponseBody>) => YApiResponseBody' is not assignable to parameter of type '(value: AxiosResponse<any>) => AxiosResponse<any> | Promise<AxiosResponse<any>>'.

Yeah, I know the error means, however, I just want to return the `response.data` directly. How can I accomplish that?

#### Describe the solution you'd like


#### Describe alternatives you've considered
I was thinking if `AxiosInterceptorManager` can accept `any` in `onFulfilled`. In that case, the error won't appear again.

```diff
export interface AxiosInterceptorManager<V> {
- use(onFulfilled?: (value: V) =>V | Promise<V>, onRejected?: (error: any) => any): number;
+ use(onFulfilled?: (value: V) =>any , onRejected?: (error: any) => any): number;
  eject(id: number): void;
}
export interface AxiosInstance {
  (config: AxiosRequestConfig): AxiosPromise;
  (url: string, config?: AxiosRequestConfig): AxiosPromise;
  defaults: AxiosRequestConfig;
  interceptors: {
    request: AxiosInterceptorManager<AxiosRequestConfig>;
    response: AxiosInterceptorManager<AxiosResponse>;
  };
//...
}
```
I have seen https://github.com/axios/axios/issues/1510 and https://github.com/axios/axios/pull/1605. I didn't find a solution.

#### Additional context


index.d.ts
data?: any, config?: AxiosRequestConfig): Promise<R>;
}
export interface AxiosStatic extends AxiosInstance {
  create(config?: AxiosRequestConfig): AxiosInstance;
  Cancel: CancelStatic;
  CancelToken: CancelTokenStatic;
  isCancel(value: any): boolean;
  all<T>(values: (T | Promise<T>)[]): Promise<T[]>;
  spread<T, R>(callback: (...args: T[]) => R): (array: T[]) => R;
  isAxiosError(payload: any): payload is AxiosError;
}
declare const axios: AxiosStatic;
export default axios;
