import { AxiosResponse } from 'axios'; import { interceptorsResponseFailTypes, interceptorsResponseSuccessTypes, interceptorsRequestFailTypes, interceptorsRequestSuccessTypes } from '../core'; import { priority } from '../constants'; import { customConfiguration } from '../instance'; export declare enum interceptorsKey { interceptorsRequestSuccess = "interceptorsRequestSuccess", interceptorsRequestFail = "interceptorsRequestFail", responseSuccess = "responseSuccess", responseFail = "responseFail" } export declare enum decisionInstaller { installReqSuc = "installReqSuc", installReqFail = "installReqFail", installResSuc = "installResSuc", installResFail = "installResFail" } export declare enum executionPhase { checkTheInstallerStage = "checkTheInstallerStage", executeTheInstallerPhase = "executeTheInstallerPhase", checkTheInterceptorPhase = "checkTheInterceptorPhase", executeTheTnterceptorPhase = "executeTheTnterceptorPhase" } export declare type instanceConfig = Partial<{ config?: customConfiguration; interceptor: { request: { successCb?: interceptorsRequestSuccessTypes; failCb?: interceptorsRequestFailTypes; }; response: { successCb?: interceptorsResponseSuccessTypes; failCb?: interceptorsResponseFailTypes; }; }; }>; export declare type interceptorCollectionTypes = interceptorsResponseFailTypes | interceptorsResponseSuccessTypes | interceptorsRequestFailTypes | interceptorsRequestSuccessTypes; export declare type installerCollectionTypes = mergeErrorInstaller | mergeSuccessfulInstaller> | mergeSuccessfulInstaller; export declare type mergeErrorInstaller = (err: any) => boolean; export declare type mergeSuccessfulInstaller = (conf: T) => boolean; export declare type checkDynamicModuleSuccessInstallType = T extends decisionInstaller.installReqSuc ? mergeSuccessfulInstaller> : mergeSuccessfulInstaller; export declare type dynamicPluginConfig = Partial<{ priority: number | keyof typeof priority; displayName?: string; interceptor: instanceConfig['interceptor']; installer: { [decisionInstaller.installReqSuc]?: mergeSuccessfulInstaller>; [decisionInstaller.installReqFail]?: mergeErrorInstaller; [decisionInstaller.installResSuc]?: mergeSuccessfulInstaller; [decisionInstaller.installResFail]?: mergeErrorInstaller; }; }>; export declare type moduleConfiguration = { priorityList: object[]; };