Function reference
This is the practical ABI map for builders. Each function is grouped by user intent: create, configure, stay alive, move assets, claim, cleanup, and read state.
createVault
Creates a new vault lifecycle for msg.sender. Fails if the caller already has an existing vault.
createVault(address heir, uint256 inactivityPeriod, uint256 gracePeriod)Owner configuration
These functions are owner-only and available only before the vault is claimable or claimed.
updateHeir(address newHeir)
updateInactivityPeriod(uint256 newInactivityPeriod)
updateGracePeriod(uint256 newGracePeriod)checkIn
Refreshes the owner's liveness signal. This is the most important recurring action in the product UX.
checkIn()Native USDC movement
Native USDC is moved with payable functions and low-level native transfers. The dApp should label these as USDC, not ETH.
depositUSDC() payable
depositUSDCFor(address owner) payable
withdrawUSDC(uint256 amount)
claimUSDC(address owner, address receiver)ERC20 token movement
ERC20 token actions are separate from native USDC. Deposits require allowance. Claims are token-by-token.
depositToken(address token, uint256 amount)
withdrawToken(address token, uint256 amount)
claimToken(address owner, address token, address receiver)Inheritance activation
claimInheritance is the simple heir action: activate inheritance and claim native USDC to the heir address. Token balances can still be claimed separately.
claimInheritance(address owner)Cleanup
Disables an empty vault lifecycle. This is required before the same owner can create a new vault.
disableVault()
disableVault(address owner)View helpers
The frontend should prefer view helpers over duplicating too much lifecycle logic. UI timers can mirror the formula, but transactions should always trust contract reads.
getVaultDetails(address owner)
getVaultState(address owner)
getTrackedTokens(address owner)
isClaimable(address owner)
isInGracePeriod(address owner)
gracePeriodStartsAt(address owner)
claimableAt(address owner)
timeUntilClaimable(address owner)
nativeUSDCBalances(address owner)
tokenBalances(address owner, address token)
activeTokenCounts(address owner)