/// Single home for chrome.storage.local reads/writes done by the service /// worker. Both router files (popup-only.ts and content-callable.ts) import /// from here — the duplicated definitions in those files were lifted out as /// part of Plan C Phase 2 (P1.9). import type { DeviceSettings } from '../shared/types'; import { DEFAULT_DEVICE_SETTINGS } from '../shared/types'; export async function loadDeviceSettings(): Promise { const r = await chrome.storage.local.get('relicarioSettings'); return (r.relicarioSettings as DeviceSettings) ?? { ...DEFAULT_DEVICE_SETTINGS }; } export async function saveDeviceSettings(s: DeviceSettings): Promise { await chrome.storage.local.set({ relicarioSettings: s }); } export async function loadBlacklist(): Promise { const r = await chrome.storage.local.get('captureBlacklist'); return (r.captureBlacklist as string[]) ?? []; } export async function saveBlacklist(list: string[]): Promise { await chrome.storage.local.set({ captureBlacklist: list }); }