Interfaces

This section provides an overview of the core interfaces used in the vault system. Each interface defines the standard methods for interacting with key components of the architecture.

Core Interfaces

DepositPipe

Interface for deposit operations. Each DepositPipe handles deposits for a specific asset type and implements ERC4626 compatibility.

Use Cases:

  • User deposits from same chain (hub)

  • Cross-chain deposits via LayerZero

  • Integration with DeFi protocols


RedemptionPipe

Interface for redemption operations. Handles instant and standard redemptions with liquidity management.

Use Cases:

  • User redemptions on hub chain

  • Cross-chain redemptions

  • Liquidity provider integrations


ShareManager

Interface for managing vault shares. Tracks total supply on all chains and enforces limits on deposits, supply, and withdrawals.

Use Cases:

  • Share minting/burning operations

  • Limit enforcement

  • Cross-chain share transfers

  • Security controls


Interface for Net Asset Value (NAV) management. Tracks the total value of assets in the vault and provides controlled mechanisms for updating it.

Use Cases:

  • NAV tracking for share pricing

  • Deposit/redemption NAV updates

  • External valuation integrations


Standard Interfaces

The system also implements standard ERC interfaces:

  • ERC20: ShareManager implements standard ERC20 for share tokens

  • OFT: xTokens Share implements the LayerZero OFT standard

  • ERC4626: DepositPipe and RedemptionPipe implements ERC4626 and ERC7545 vault standard


Decimal Handling

  • Shares: Always 18 decimals

  • NAV: Always 18 decimals (normalized internally)

  • Deposit Assets: Native decimals (USDC = 6, USDT = 6, USDe = 18)

Last updated