Files
2026-02-24 07:04:01 +01:00

29 lines
1.1 KiB
TypeScript

import { AxiosError, AxiosInstance, AxiosRequestConfig } from 'axios';
export interface AxiosAuthRefreshOptions {
statusCodes?: Array<number>;
/**
* Determine whether to refresh, if "shouldRefresh" is configured, The "statusCodes" logic will be ignored
* @param error AxiosError
* @returns boolean
*/
shouldRefresh?(error: AxiosError): boolean;
retryInstance?: AxiosInstance;
interceptNetworkError?: boolean;
pauseInstanceWhileRefreshing?: boolean;
onRetry?: (requestConfig: AxiosRequestConfig) => AxiosRequestConfig | Promise<AxiosRequestConfig>;
/**
* @deprecated
* This flag has been deprecated in favor of `pauseInstanceWhileRefreshing` flag.
* Use `pauseInstanceWhileRefreshing` instead.
*/
skipWhileRefreshing?: boolean;
}
export interface AxiosAuthRefreshCache {
skipInstances: AxiosInstance[];
refreshCall: Promise<any> | undefined;
requestQueueInterceptorId: number | undefined;
}
export interface AxiosAuthRefreshRequestConfig extends AxiosRequestConfig {
skipAuthRefresh?: boolean;
}