export interface Credentials { server: string; authMode?: "token" | "password" | "apikey"; username?: string; token?: string; salt?: string; password?: string; apiKey?: string; } const credentialsStorageKey = "tinysub_credentials"; export const getStoredCredentials = (): Credentials | null => { if (typeof localStorage === "undefined") return null; const raw = localStorage.getItem(credentialsStorageKey); if (!raw) return null; try { const parsed: unknown = JSON.parse(raw); return parsed && typeof parsed === "object" && "server" in parsed && typeof parsed.server === "string" && parsed.server ? (parsed as Credentials) : null; } catch (err) { console.error("failed to parse stored credentials:", err); return null; } };