Mangrove
Developper
Developper
  • Welcome
  • Protocol
    • Introduction
    • Technical References
      • Overview
      • Ticks, ratios, and prices
      • Offer-list
        • Views on offers
      • Market-order
        • Delegation
      • Creating & Updating offers
        • Maker contract
        • Offer provisions
        • Gas requirement
        • Public data structures
        • Executing offers
      • Cleaning offers
      • Governance-parameters
        • Global variables
        • Local variables
        • Data structures and views
      • Periphery Contracts
        • MgvReader
        • MgvOracle
      • Literate Source Code
    • Background
      • Taking available liquidity
      • Making liquidity available
      • Reneging on offers
  • Strat Lib
    • What is the Strat Library?
    • Getting-started
      • Set Up Your Local Environment
      • Post a Smart Offer
    • Guides
      • Unlocking liquidity
      • Reposting an offer in the posthook
      • Using last look to renege trades
      • Determining gas requirements
      • Creating a Direct contract
      • Deploying your contract
      • Testing a maker contract
      • Safe offer logic guidelines
      • Approvals
    • Technical references
      • Principal hooks
      • Liquidity routing
      • API preferences
        • Core
          • SRC
            • IMangrove
        • Strats
          • SRC
            • Strategies
              • MangroveOffer
              • MangroveOrder
              • Integrations
                • AaveV3Borrower
                • AaveV3BorrowerImplementation
                • AaveV3BorrowerStorage
                • AaveV3Lender
                • CompoundModule
              • Interfaces
                • IForwarder
                • ILiquidityProvider
                • IOfferLogic
                • IOrderLogic
              • Offer_forwarder
                • Abstract
                  • Forwarder
              • Offer_maker
                • Abstract
                  • Direct
                • Market_making
                  • Kandel
                    • AaveKandel
                    • AaveKandelSeeder
                    • KandelSeeder
                    • Abstract
                      • AbstractKandelSeeder
                      • CoreKandel
                      • DirectWithBidsAndAsksDistribution
                      • GeometricKandel
                      • HasIndexedBidsAndAsks
                      • KandelLib
                      • TradesBaseQuotePair
              • Routeurs
                • SimpleRouter
                • Abstract
                  • AbstractRouter
                • Integrations
                  • AavePooledRouter
                  • HasAaveBalanceMemoizer
              • Utils
                • AccessControlled
              • Vendor
                • AAVE
                  • V3
                    • Contracts
                      • Dependencies
                        • Oppenzeppelin
                          • Contracts
                            • IERC20
                      • Interfaces
                        • IAToken
                        • IAaveIncentivesController
                        • IAaveOracle
                        • ICreditDelegationToken
                        • IInitializableAToken
                        • IPool
                        • IPoolAddressesProvider
                        • IPriceOracleGetter
                        • IScaledBalanceToken
                      • Protocol
                        • Libraries
                          • Configurations
                            • ReserveConfiguration
                          • Helpers
                            • Errors
                          • Types
                            • DataTypes
                    • Periphery
                      • Contracts
                        • MISC
                          • Interfaces
                            • IEACAggregatorProxy
                        • Rewards
                          • Interfaces
                            • IRewardsController
                            • IRewardsDistributor
                            • ITransferStrategyBase
                          • Libraries
                            • RewardsDataTypes
                • Compound
                  • CarefulMath
                  • Exponential
                  • ExponentialNoError
                  • ICompound
    • Background
      • Building Blocks
        • MangroveOffer
        • Direct
        • Forwarder
  • Vaults
    • Understanding vaults
      • Oracles
    • Managing a vault (CLI)
      • Deploying an oracle
      • Creating a vault
      • Monitoring the vault
      • Setting the vault position
      • Setting the fee data
      • Rebalancing
      • Adding or removing liquidity
    • Custom interactions
      • Oracles
      • Vault Factory
      • Managing a vault
        • Setting the position
        • Rebalancing
        • Setting a manager
        • Setting fee
  • Keeper Bots
    • Keeper Bots
    • Guides
      • Using borrowed funds for cleaning
    • Backgroud
      • The role of cleaning bots in Mangrove
      • The role of gas price updater bots in Mangrove
  • Adresses
    • Deployment Addresses
  • Quick Links
    • Glossary
    • Website
    • Whitepaper
Powered by GitBook
On this page
  • Mint
  • Parameters
  • Burn
  • Parameters
  • scaledBalanceOf
  • Parameters
  • Return Values
  • getScaledUserBalanceAndSupply
  • Parameters
  • Return Values
  • scaledTotalSupply
  • Return Values
  • getPreviousIndex
  • Parameters
  • Return Values
  1. Strat Lib
  2. Technical references
  3. API preferences
  4. Strats
  5. SRC
  6. Strategies
  7. Vendor
  8. AAVE
  9. V3
  10. Contracts
  11. Interfaces

IScaledBalanceToken

Defines the basic interface for a scaled-balance token.

Mint

event Mint(address caller, address onBehalfOf, uint256 value, uint256 balanceIncrease, uint256 index)

Emitted after the mint action

Parameters

Name
Type
Description

caller

address

The address performing the mint

onBehalfOf

address

The address of the user that will receive the minted tokens

value

uint256

The scaled-up amount being minted (based on user entered amount and balance increase from interest)

balanceIncrease

uint256

The increase in scaled-up balance since the last action of 'onBehalfOf'

index

uint256

The next liquidity index of the reserve

Burn

event Burn(address from, address target, uint256 value, uint256 balanceIncrease, uint256 index)

Emitted after the burn action If the burn function does not involve a transfer of the underlying asset, the target defaults to zero address

Parameters

Name
Type
Description

from

address

The address from which the tokens will be burned

target

address

The address that will receive the underlying, if any

value

uint256

The scaled-up amount being burned (user entered amount - balance increase from interest)

balanceIncrease

uint256

The increase in scaled-up balance since the last action of 'from'

index

uint256

The next liquidity index of the reserve

scaledBalanceOf

function scaledBalanceOf(address user) external view returns (uint256)

Returns the scaled balance of the user.

The scaled balance is the sum of all the updated stored balance divided by the reserve's liquidity index at the moment of the update

Parameters

Name
Type
Description

user

address

The user whose balance is calculated

Return Values

Name
Type
Description

[0]

uint256

The scaled balance of the user

getScaledUserBalanceAndSupply

function getScaledUserBalanceAndSupply(address user) external view returns (uint256, uint256)

Returns the scaled balance of the user and the scaled total supply.

Parameters

Name
Type
Description

user

address

The address of the user

Return Values

Name
Type
Description

[0]

uint256

The scaled balance of the user

[1]

uint256

The scaled total supply

scaledTotalSupply

function scaledTotalSupply() external view returns (uint256)

Returns the scaled total supply of the scaled balance token. Represents sum(debt/index)

Return Values

Name
Type
Description

[0]

uint256

The scaled total supply

getPreviousIndex

function getPreviousIndex(address user) external view returns (uint256)

Returns last index interest was accrued to the user's balance

Parameters

Name
Type
Description

user

address

The address of the user

Return Values

Name
Type
Description

[0]

uint256

The last index interest was accrued to the user's balance, expressed in ray

PreviousIPriceOracleGetterNextProtocol