export interface AppSettings { desktop: boolean popup: boolean composePopup: boolean } const KEY = 'mailclient.notifySettings' const DEFAULTS: AppSettings = { desktop: true, popup: true, composePopup: false } export function loadAppSettings(): AppSettings { try { const raw = localStorage.getItem(KEY) if (!raw) return DEFAULTS const parsed = JSON.parse(raw) as Partial return { desktop: parsed.desktop ?? DEFAULTS.desktop, popup: parsed.popup ?? DEFAULTS.popup, composePopup: parsed.composePopup ?? DEFAULTS.composePopup, } } catch { return DEFAULTS } } export function saveAppSettings(v: AppSettings) { localStorage.setItem(KEY, JSON.stringify(v)) }