Skip to main content

Overview

ManagedTvlModule contract provides a mechanism to artificially reduce or increase tvl using regular or debt tokens in the vault to reduce possible losses due to slashing events.

Key Features

  • Parameter Management: Enables setting of asset parameters used for calculating TVL.
  • TVL Calculation: Computes the TVL for the vault according to the predefined asset parameters.
  • Access Control: Ensures only authorized administrators can modify vault parameters.

Methods

  1. Parameter Management
    • setParams(address, Data[]): Sets asset parameters for a given vault.
      • vault: The address of the vault.
      • data: An array of Data structures containing asset details.
      • Event:
        • ManagedTvlModuleSetParams(address, Data[], uint256): Emitted after asset parameters are set for a vault.
          • vault: Address of the vault.
          • data: An array of Data structures.
          • timestamp: Timestamp of the parameter update.
  2. TVL Calculation
    • tvl(address): Computes the total value locked for the vault based on predefined asset parameters.
      • vault: The address of the vault.
      • Returns: An array of Data structures with details about each asset:
        • token: Address of the ERC20 token.
        • underlyingToken: Address of the base asset.
        • amount: The amount of the token held by the vault.
        • underlyingAmount: Amount translated to the base asset.