import AsyncStorage from '@react-native-async-storage/async-storage'; const TOKEN_KEY = 'token'; const ADMIN_TOKEN_KEY = 'admin_token'; const USERNAME_KEY = 'username'; const ADMIN_USERNAME_KEY = 'admin_username'; const ROLE_KEY = 'user_role'; // Client token export const getToken = () => AsyncStorage.getItem(TOKEN_KEY); export const setToken = (token: string) => AsyncStorage.setItem(TOKEN_KEY, token); export const removeToken = () => AsyncStorage.removeItem(TOKEN_KEY); // Admin/Cabine/Livreur token export const getAdminToken = () => AsyncStorage.getItem(ADMIN_TOKEN_KEY); export const setAdminToken = (token: string) => AsyncStorage.setItem(ADMIN_TOKEN_KEY, token); export const removeAdminToken = () => AsyncStorage.removeItem(ADMIN_TOKEN_KEY); // Username export const getUsername = () => AsyncStorage.getItem(USERNAME_KEY); export const setUsername = (username: string) => AsyncStorage.setItem(USERNAME_KEY, username); export const removeUsername = () => AsyncStorage.removeItem(USERNAME_KEY); // Admin username export const getAdminUsername = () => AsyncStorage.getItem(ADMIN_USERNAME_KEY); export const setAdminUsername = (username: string) => AsyncStorage.setItem(ADMIN_USERNAME_KEY, username); export const removeAdminUsername = () => AsyncStorage.removeItem(ADMIN_USERNAME_KEY); // Role export const getRole = () => AsyncStorage.getItem(ROLE_KEY); export const setRole = (role: string) => AsyncStorage.setItem(ROLE_KEY, role); export const removeRole = () => AsyncStorage.removeItem(ROLE_KEY); // Clear all auth data export const clearAllAuth = async () => { await AsyncStorage.multiRemove([ TOKEN_KEY, ADMIN_TOKEN_KEY, USERNAME_KEY, ADMIN_USERNAME_KEY, ROLE_KEY, ]); };