import * as SecureStore from "expo-secure-store"; export interface TokenCache { getToken: (key: string) => Promise; saveToken: (key: string, token: string) => Promise; clearToken?: (key: string) => void; } export const tokenCache = { async getToken(key: string) { try { const item = await SecureStore.getItemAsync(key); if (item) { console.log(`${key} was used 🔐 \n`); } else { console.log("No values stored under key: " + key); } return item; } catch (error) { console.error("SecureStore get item error: ", error); await SecureStore.deleteItemAsync(key); return null; } }, async saveToken(key: string, value: string) { try { return SecureStore.setItemAsync(key, value); } catch (err) { console.error("TOKEN_CACHE: ", err); return; } }, };