IWithdrawalManager
Inherits: IWithdrawalManagerStorage
Functions
initialize
Initializes the Withdrawal Manager.
Function is invoked by the proxy contract when the Withdrawal Manager Contract is added to the PoolAddressesProvider of the market.
Parameters
provider_
IPoolAddressesProvider
The address of the PoolAddressesProvider.
cycleDuration_
uint256
The total duration of a withdrawal cycle.
windowDuration_
uint256
The duration of the withdrawal window.
setExitConfig
Pool admin sets a new configuration for the withdrawal manager.
Parameters
cycleDuration_
uint256
The total duration of a withdrawal cycle.
windowDuration_
uint256
The total duration of a withdrawal window.
addShares
Add more shares for withdrawal.
Parameters
shares_
uint256
The amount of shares to add.
owner_
address
The owner of the shares.
removeShares
Remove shares from withdrawal.
Parameters
shares_
uint256
The amount of shares to remove from withdrawal.
owner_
address
The owner of the shares.
processExit
Process the exit of requested shares of a owner.
Parameters
requestedShares_
uint256
The amount of shares to redeem.
owner_
address
The owner of the shares.
Returns
redeemableShares_
uint256
The amount of redeemable shares.
resultingAssets_
uint256
The corresponding amount of assets with the redeemable shares.
isInExitWindow
Checks if the owner has a withdrawal request in the exit window.
Parameters
owner_
address
The owner address to check.
Returns
isInExitWindow_
bool
True if the owner has a withdrawal request in the exit window.
lockedLiquidity
Gets the total amount of liquidity locked in the current cycle.
Returns
lockedLiquidity_
uint256
The total amount of liquidity locked in the current cycle.
previewRedeem
Previews the amount of shares and assets that can be redeemed.
Parameters
owner_
address
The owner of the shares.
shares_
uint256
The amount of shares to redeem.
Returns
redeemableShares_
uint256
The amount of redeemable shares.
resultingAssets_
uint256
The corresponding amount of assets with the redeemable shares.
getCycleConfig
Gets the configuration of a config id.
Parameters
configId_
uint256
The id of the config.
Returns
config_
WithdrawalManager.CycleConfig
The config.
getConfigAtId
Gets the configuration of a given cycle id.
Parameters
cycleId_
uint256
The cycle id.
Returns
config_
WithdrawalManager.CycleConfig
The configuration used at the cycle id.
getCurrentConfig
Gets the configuration of the current cycle id.
Returns
config_
WithdrawalManager.CycleConfig
The configuration used at the current cycle id.
getCurrentCycleId
Gets the current cycle id.
Returns
cycleId_
uint256
The id of the current cycle.
getWindowStart
Gets the starting time of a window for a given cycle id.
Parameters
cycleId_
uint256
The id of the cycle.
Returns
windowStart_
uint64
The starting time of the window.
getWindowAtId
Gets the start and end time of a window for a given cycle id.
Parameters
cycleId_
uint256
The id of the cycle.
Returns
windowStart_
uint64
The starting time of the window.
windowEnd_
uint64
The ending time of the window.
getRedeemableAmounts
Gets the redeemable amount of an owner based in the current cycle.
Parameters
lockedShares_
uint256
The amount of locked shares under the owner.
owner_
address
The address of the owner.
Returns
redeemableShares_
uint256
The amount of redeemable shares.
resultingAssets_
uint256
The corresponding amount of assets with the redeemable shares.
Events
Initialized
Emitted when a withdrawal manager is initialized.
Parameters
poolAddressesProvider_
address
The address of the PoolAddressesProvider.
cycleDuration_
uint256
The duration of a withdrawal cycle.
windowDuration_
uint256
The duration of the withdrawal window.
ConfigurationUpdated
Emitted when the configuration of the withdrawal manager is updated.
Parameters
configId_
uint256
The id of the configuration.
initialCycleId_
uint64
The id of the initial cycle.
initialCycleTime_
uint64
The starting time of the initial cycle.
cycleDuration_
uint64
The duration of a withdrawal cycle.
windowDuration_
uint64
The duration of the withdrawal window.
WithdrawalCancelled
Emitted when a withdrawal is cancelled.
Parameters
account_
address
The account whose withdrawal is cancelled.
WithdrawalProcessed
Emitted when a withdrawal is processed.
Parameters
account_
address
The account whose withdrawal is processed.
sharesToRedeem_
uint256
The amount of shares to redeem.
assetsToWithdraw_
uint256
The amount of assets to withdraw.
WithdrawalUpdated
Emitted when a withdrawal is updated.
Parameters
account_
address
The account whose withdrawal is updated.
lockedShares_
uint256
The new amount of locked shares.
windowStart_
uint64
The new starting time of the withdrawal window.
windowEnd_
uint64
The new ending time of the withdrawal window.
Last updated