diff --git a/axios.d.ts b/axios.d.ts index d7b6cb8..036f8c6 100644 --- a/axios.d.ts +++ b/axios.d.ts @@ -83,8 +83,8 @@ export interface AxiosStatic extends AxiosInstance { (config: AxiosRequestConfig): AxiosPromise; (url: string, config?: AxiosRequestConfig): AxiosPromise; create(config?: AxiosRequestConfig): AxiosInstance; - all(iterable: any): any; - spread(callback: any): any; + all(values: (T | Promise)[]): Promise; + spread(callback: (...args: T[]) => R): (array: T[]) => R; } declare const Axios: AxiosStatic; diff --git a/test/typescript/axios.ts b/test/typescript/axios.ts index d797451..936c3ca 100644 --- a/test/typescript/axios.ts +++ b/test/typescript/axios.ts @@ -203,3 +203,17 @@ const adapter: AxiosAdapter = (config: AxiosRequestConfig) => { }; axios.defaults.adapter = adapter; + +// axios.all + +const promises = [ + Promise.resolve(1), + Promise.resolve(2) +]; + +const promise: Promise = axios.all(promises); + +// axios.spread + +const fn1 = (a: number, b: number, c: number) => `${a}-${b}-${c}`; +const fn2: (arr: number[]) => string = axios.spread(fn1);