From e462973a4b23e9541efe3e64ca120ae9111a6ad8 Mon Sep 17 00:00:00 2001 From: Evgeniy Date: Thu, 7 Oct 2021 20:23:29 +0300 Subject: [PATCH] fix response headers types (#4136) * fix response headers types some keys like 'set-cookie' are arrays https://github.com/axios/axios/blob/master/lib/helpers/parseHeaders.js#L45 * split header types --- index.d.ts | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/index.d.ts b/index.d.ts index e126c02..0473e87 100644 --- a/index.d.ts +++ b/index.d.ts @@ -1,5 +1,15 @@ -export interface AxiosTransformer { - (data: any, headers?: Record): any; +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 { @@ -51,9 +61,9 @@ export interface AxiosRequestConfig { url?: string; method?: Method; baseURL?: string; - transformRequest?: AxiosTransformer | AxiosTransformer[]; - transformResponse?: AxiosTransformer | AxiosTransformer[]; - headers?: Record; + transformRequest?: AxiosRequestTransformer | AxiosRequestTransformer[]; + transformResponse?: AxiosResponseTransformer | AxiosResponseTransformer[]; + headers?: AxiosRequestHeaders; params?: any; paramsSerializer?: (params: any) => string; data?: D; @@ -85,7 +95,7 @@ export interface AxiosResponse { data: T; status: number; statusText: string; - headers: Record; + headers: AxiosResponseHeaders; config: AxiosRequestConfig; request?: any; }