| Crates.io | bvs-vault-bank-tokenized |
| lib.rs | bvs-vault-bank-tokenized |
| version | 2.4.0 |
| created_at | 2025-05-27 02:59:34.764887+00 |
| updated_at | 2025-09-08 06:41:16.306561+00 |
| description | SatLayer Bitcoin Validated Service |
| homepage | https://satlayer.xyz/ |
| repository | https://github.com/satlayer/satlayer-bvs.git |
| max_upload_size | |
| id | 1690555 |
| size | 80,038 |
The BVS Vault Bank Tokenized is a specialized vault contract designed to support native bank tokens (denoms) as the underlying asset in the SatLayer ecosystem. It extends the functionality of the standard BVS Vault Bank by implementing a tokenized vault that issues receipt tokens (CW20 tokens) to represent shares in the vault.
The Vault Bank Tokenized implements the ERC-4626 tokenized vault standard, providing a standardized interface for yield-bearing vaults. It manages the relationship between deposited native tokens and receipt tokens (shares), allowing for efficient tracking of user deposits and their corresponding value.
DepositFor: Deposit native tokens into the vault for a recipient, who receives receipt tokensQueueWithdrawalTo: Queue a withdrawal request for later processingRedeemWithdrawalTo: Process a queued withdrawal requestSlashLocked: Move assets from the vault to the router contract (part of Programmable Slashing)Transfer, Send, etc.: Standard CW20 operations for the receipt tokensShares: Get the number of shares (receipt tokens) owned by a stakerAssets: Get the asset value of shares owned by a stakerConvertToAssets: Convert a share amount to its asset valueConvertToShares: Convert an asset amount to its share valueTotalShares: Get the total number of shares (receipt tokens) in the vaultTotalAssets: Get the total asset value in the vaultQueuedWithdrawal: Get information about a queued withdrawalVaultInfo: Get general information about the vaultThe Vault Bank Tokenized manages deposits and withdrawals through a tokenized share-based system:
The vault implements a withdrawal queue to handle situations where immediate withdrawals are not possible:
QueueWithdrawalToRedeemWithdrawalToBVS Vault Bank Tokenized integrates with the following BVS contracts:
bvs-pauser: Contract for pausing functionalitybvs-registry: Contract for registry functionalitybvs-vault-router: Contract for routing between different vaultsbvs-vault-base: Base functionality for all vault contractsbvs-vault-bank: Underlying functionality for bank vaults