LiquidityProtectionStats

This contract aggregates the statistics of the liquidity protection mechanism.

Functions:

Function increaseTotalAmounts(address provider, contract IDSToken poolToken, contract IReserveToken reserveToken, uint256 poolAmount, uint256 reserveAmount)

increases the total amounts

can be executed only by an owner

Parameters:

  • provider: liquidity provider address

  • poolToken: pool token address

  • reserveToken: reserve token address

  • poolAmount: pool token amount

  • reserveAmount: reserve token amount

Function decreaseTotalAmounts(address provider, contract IDSToken poolToken, contract IReserveToken reserveToken, uint256 poolAmount, uint256 reserveAmount)

decreases the total amounts

can be executed only by an owner

Parameters:

  • provider: liquidity provider address

  • poolToken: pool token address

  • reserveToken: reserve token address

  • poolAmount: pool token amount

  • reserveAmount: reserve token amount

Function addProviderPool(address provider, contract IDSToken poolToken) → bool

adds a pool to the list of pools of a liquidity provider

can be executed only by an owner

Parameters:

  • provider: liquidity provider address

  • poolToken: pool token address

Function removeProviderPool(address provider, contract IDSToken poolToken) → bool

removes a pool from the list of pools of a liquidity provider

can be executed only by an owner

Parameters:

  • provider: liquidity provider address

  • poolToken: pool token address

Function totalPoolAmount(contract IDSToken poolToken) → uint256

returns the total amount of protected pool tokens

Parameters:

  • poolToken: pool token address

Return Values:

  • total amount of protected pool tokens

Function totalReserveAmount(contract IDSToken poolToken, contract IReserveToken reserveToken) → uint256

returns the total amount of protected reserve tokens

Parameters:

  • poolToken: pool token address

  • reserveToken: reserve token address

Return Values:

  • total amount of protected reserve tokens

Function totalProviderAmount(address provider, contract IDSToken poolToken, contract IReserveToken reserveToken) → uint256

returns the total amount of a liquidity provider's protected reserve tokens

Parameters:

  • provider: liquidity provider address

  • poolToken: pool token address

  • reserveToken: reserve token address

Return Values:

  • total amount of the liquidity provider's protected reserve tokens

Function providerPools(address provider) → contract IDSToken[]

returns the list of pools of a liquidity provider

Parameters:

  • provider: liquidity provider address

Return Values:

  • pool tokens

Function seedPoolAmounts(contract IDSToken[] poolTokens, uint256[] poolAmounts)

seeds the total amount of protected pool tokens

can be executed only by a seeder

Parameters:

  • poolTokens: pool token addresses

  • poolAmounts: pool token amounts

Function seedReserveAmounts(contract IDSToken[] poolTokens, contract IReserveToken[] reserveTokens, uint256[] reserveAmounts)

seeds the total amount of protected reserve tokens

can be executed only by a seeder

Parameters:

  • poolTokens: pool token addresses

  • reserveTokens: reserve token addresses

  • reserveAmounts: reserve token amounts

Function seedProviderAmounts(address[] providers, contract IDSToken[] poolTokens, contract IReserveToken[] reserveTokens, uint256[] reserveAmounts)

seeds the total amount of protected reserve tokens per liquidity provider

can be executed only by a seeder

Parameters:

  • providers: liquidity provider addresses

  • poolTokens: pool token addresses

  • reserveTokens: reserve token addresses

  • reserveAmounts: reserve token amounts

Function seedProviderPools(address[] providers, contract IDSToken[] poolTokens)

seeds the list of pools per liquidity provider

can be executed only by a seeder

Parameters:

  • providers: liquidity provider addresses

  • poolTokens: pool token addresses

Last updated