import { Persistent, BasicKeys } from '/@/utils/cache/persistent'; import { CacheTypeEnum } from '/@/enums/cacheEnum'; import projectSetting from '/@/settings/projectSetting'; import { TOKEN_KEY } from '/@/enums/cacheEnum'; const { permissionCacheType } = projectSetting; const isLocal = permissionCacheType === CacheTypeEnum.LOCAL; export function getToken() { return getAuthCache(TOKEN_KEY); } export function getAuthCache(key: BasicKeys) { const fn = isLocal ? Persistent.getLocal : Persistent.getSession; return fn(key) as T; } export function setAuthCache(key: BasicKeys, value) { const fn = isLocal ? Persistent.setLocal : Persistent.setSession; return fn(key, value, true); } export function clearAuthCache(immediate = true) { const fn = isLocal ? Persistent.clearLocal : Persistent.clearSession; return fn(immediate); }