Nnextop / app

useSecureStore

Encrypted key/value storage for secrets (tokens, etc.), backed by Electron safeStorage (OS keychain). Values are encrypted at rest in userData/nextop-secure-store.json; plaintext is never written.

const { isAvailable, setItem, getItem, removeItem, hasItem, clear } = useSecureStore()
MemberTypeNotes
isAvailable() => Promise<boolean>Whether OS encryption is available (e.g. false if a Linux keyring is missing).
setItem(key: string, value: string) => Promise<boolean>Rejects if encryption is unavailable (won't store plaintext).
getItem(key: string) => Promise<string | null>null if the key is absent.
removeItem(key: string) => Promise<boolean>
hasItem(key: string) => Promise<boolean>
clear() => Promise<boolean>Wipes the whole store.
import { useSecureStore } from 'nextop-app'
const store = useSecureStore()
if (await store.isAvailable()) {
await store.setItem('apiToken', 'secret-value')
const token = await store.getItem('apiToken')
}

This protects per-user/local secrets at rest. It does not make it safe to embed shared/central DB master credentials in app code — see the Security Model.