import * as SecureStore from 'expo-secure-store'; import { Platform } from 'react-native'; const TOKEN_KEY = 'taskteam_token'; const USER_KEY = 'taskteam_user'; export async function getToken(): Promise { if (Platform.OS === 'web') { return localStorage.getItem(TOKEN_KEY); } return SecureStore.getItemAsync(TOKEN_KEY); } export async function setToken(token: string): Promise { if (Platform.OS === 'web') { localStorage.setItem(TOKEN_KEY, token); return; } await SecureStore.setItemAsync(TOKEN_KEY, token); } export async function removeToken(): Promise { if (Platform.OS === 'web') { localStorage.removeItem(TOKEN_KEY); return; } await SecureStore.deleteItemAsync(TOKEN_KEY); } export async function getUser(): Promise { let raw: string | null; if (Platform.OS === 'web') { raw = localStorage.getItem(USER_KEY); } else { raw = await SecureStore.getItemAsync(USER_KEY); } if (!raw) return null; try { return JSON.parse(raw); } catch { return null; } } export async function setUser(user: any): Promise { const raw = JSON.stringify(user); if (Platform.OS === 'web') { localStorage.setItem(USER_KEY, raw); return; } await SecureStore.setItemAsync(USER_KEY, raw); } export async function removeUser(): Promise { if (Platform.OS === 'web') { localStorage.removeItem(USER_KEY); return; } await SecureStore.deleteItemAsync(USER_KEY); }