@libertasinception/vault
v0.1.0
Published
Vault management client — secure asset storage, multi-sig operations, and time-locked withdrawals
Maintainers
Readme
@libertasinception/vault
Vault management client — secure asset storage, multi-sig operations, and time-locked withdrawals
Installation
npm install @libertasinception/vaultQuick Start
import { VaultClient } from "@libertasinception/vault";
const vault = new VaultClient(httpClient);
await vault.store({ key: "api-key", value: "secret-value", encryption: "aes-256-gcm" });
const entry = await vault.retrieve({ key: "api-key" });
const shares = await vault.shamirSplit({ secret: "master-key", totalShares: 5, threshold: 3 });
await vault.setDeadManSwitch({
beneficiary: "n1a1...",
checkInterval: 30 * 24 * 3600,
assets: [{ denom: "uphi", amount: "1000000000" }],
});Features
- Encrypted secret storage (AES-256-GCM)
- Shamir secret splitting (M-of-N)
- Dead man's switch with configurable intervals
- Time-locked withdrawals
- Multi-sig vault operations
API Reference
Classes
VaultClient
Types
VaultEntryVaultStoreParamsVaultRetrieveParamsShamirSplitParamsShamirShareDeadManSwitchConfigDeadManSwitchStatus
Dependencies
@libertasinception/corezod
Requirements
- Node.js >= 18.0.0
- TypeScript >= 5.7 (recommended)
Links
License
MIT - see LICENSE for details.
