Mellow Protocol
  • 💡Welcome to Mellow
  • Mellow Vaults Overview
  • Security
  • User Tutorials
    • Deposit guide
    • Withdrawal guide
  • 🔳Simple LRT
    • Overview
  • Architecture
  • Deployments
  • 🍱MultiVault
    • Overview
    • Architecture
  • Deployments
  • 💧DVstETH vault
    • Overview
    • Architecture
    • Contracts specs
      • 🏦Vault
      • 🔧VaultConfigurator
      • ⚖️Validators
        • ManagedValidator
        • ERC20SwapValidator
        • DefaultBondValidator
        • AllowAllValidator
      • 🧬Strategies
        • DefaultBondStrategy
        • SimpleDVTStakingStrategy
      • 🔎Oracles
        • ChainlinkOracle
        • ManagedRatiosOracle
      • 🧱Modules
        • DelegateModules
          • ERC20SwapModule
          • DefaultBondModule
          • StakingModule
        • ExternalModules
        • TvlModules
          • DefaultBondTvlModule
          • ERC20TvlModule
          • ManagedTvlModule
      • 🪛Utils
        • DepositWrapper
        • DefaultAccessControl
      • 🔐Security
        • AdminProxy
  • Deployment
    • Emergency withdrawal guide (advanced)
  • 🖇️Interoperable vaults
    • Overview
    • Architecture
    • Deployments
  • 🤖MELLOW ALM
    • Mellow Permissionless Vaults
      • Core
      • Contracts API
      • Strategies
        • Fearless Gearbox strategy
        • LStrategy
        • Uni V3 Boosted strategy
        • Pulse strategy
        • Pulse strategy V2
        • Tamper strategy
      • Governance parameters
      • Contracts specs
      • Tutorials
        • Contracts deployments
        • Deploy your own strategy
        • wstETH strategies deposit guide
      • Mellow contracts addresses
        • Mellow Protocol Addresses (Polygon)
        • Mellow Protocol Addresses (Mainnet)
        • Gearbox Fearless Strategy
        • Tamper Strategy
        • UniV3 Pulse wstETH-USDC
        • UniV3 Pulse V2 wstETH-USDC
        • Velodrome CL strategies
        • Aerodrome CL strategies
      • Glossary
      • FAQ
    • Mellow ALM Toolkit
      • 📘Domain objects
      • 🧩Components
      • 🍜Processes
      • 💎Core
      • 🔮Oracles
        • VeloOracle
      • 🎯Strategy
        • PulseStrategyModule
      • 🔌AMM Adapters
        • VeloAmmModule
      • 🚙Utility contracts
        • AmmDepositWithdrawModule
        • Counter
        • LpWrapper
        • VeloDeployFactory
    • Mellow Backtesting SDK
  • 📍Points
    • Overview
    • Points in Symbiotic pre-deposit contracts
    • DeFi points integration instructions
  • 🗄️Resources
    • API
    • Media kit
    • Twitter
    • Discord
Powered by GitBook
On this page
  • Overview
  • Key Features
  • Methods
  1. DVstETH vault
  2. Contracts specs
  3. Modules
  4. DelegateModules

DefaultBondModule

Overview

DefaultBondModule contract handles deposits and withdrawals for bonds in the symbiotic module system.

Key Features

  • Bond Deposits: Facilitates deposits into bonds, managing token allowances securely.

  • Bond Withdrawals: Enables secure withdrawals from bonds.

  • Allowance Management: Uses safeIncreaseAllowance to ensure the appropriate token allowances are set.

Methods

  1. Bond Deposit

    • deposit(address, uint256): Deposits tokens into a specified bond.

      • bond: The address of the bond.

      • amount: The amount of tokens to deposit.

      • Returns: The deposited amount.

      • Errors: Returns 0 if the amount is zero.

      • Event:

        • DefaultBondModuleDeposit(address, uint256, uint256): Emitted after a successful deposit.

          • bond: Address of the bond.

          • amount: Amount deposited.

          • timestamp: Timestamp of the deposit.

  2. Bond Withdrawal

    • withdraw(address, uint256): Withdraws tokens from a specified bond.

      • bond: The address of the bond.

      • amount: The amount of tokens to withdraw.

      • Returns: The amount withdrawn.

      • Errors:

        • Returns 0 if the amount is zero or the bond balance is insufficient.

      • Event:

        • DefaultBondModuleWithdraw(address, uint256): Emitted after a successful withdrawal.

          • bond: Address of the bond.

          • amount: Amount withdrawn.

PreviousERC20SwapModuleNextStakingModule
💧
🧱