Withdrawal Pool
Last updated
Last updated
The WithdrawalPool
allows users to queue LST withdrawals if there is insufficient liquidity in the PriorityPool
to satisfy the withdrawal amount. LST withdrawals will be added to a FIFO queue and will be fulfilled as the PriorityPool
receives new deposits and/or as funds become available for withdrawal within the StakingPool
.
Returns the address of the token this pool handles
Name | Type | Description |
---|---|---|
Returns the address of the liquid staking token this pool handles
Name | Type | Description |
---|---|---|
Returns the address of the priority pool
Returns the index of the withdrawal that's at the front of the queue
Returns the index where all batches before have had all withdrawal requests fully withdrawn
Returns the index where all requests before have been fully withdrawn
Returns the min amount of LSTs that can be queued for withdrawal
Returns the min amount of time between execution of withdrawals
Returns the time of last execution of withdrawals
Returns the total amount of liquid staking tokens queued for withdrawal
Returns a list of withdrawals
Returns batch ids for a list of withdrawals
Returns a list of withdrawal ids owned by an account
Returns a list of finalized and partially finalized withdrawal ids owned by an account
These withdrawals have funds available for the owner to withdraw
Returns whether withdrawals should be executed based on available withdrawal space
Executes a group of fully and/or partially finalized withdrawals owned by the sender
Queues a withdrawal of liquid staking tokens for an account
Deposits asset tokens in exchange for liquid staking tokens, finalizing withdrawals starting from the front of the queue
Executes withdrawals if there is sufficient available withdrawal space
Updates the withdrawalBatchIdCutoff
This value is used to more efficiently return data in getBatchIds by skipping old withdrawal batches
Sets the minimum amount of liquid staking tokens that can be queued for withdrawal
Sets the minimum amount of of time between calls to performUpkeep to finalize withdrawals
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
token
address
address of token
lst
address
address of lst
priorityPool
address
address of Priority Pool
indexOfNextwithdrawal
uint256
index of withdrawal at front of queue
withdrawalBatchIdCutoff
uint128
batch id cutoff
withdrawalIdCutoff
uint128
withdrawal id cutoff
minWithdrawalAmount
uint256
min withdrawal amount
minTimeBetweenwithdrawals
uint64
min time between withdrawals
timeOfLastWithdrawal
uint64
time of last withdrawal
totalQueuedWithdrawals
uint256
total amount queued for withdrawal
_withdrawalIds
uint256[]
list of withdrawal ids
withdrawals
struct WithdrawalPool.Withdrawal[]
list of withdrawals corresponding to withdrawal ids
_withdrawalIds
uint256[]
list of withrawal ids
batchIds
uint256[]
list of batch ids corresponding to withdrawal ids
_account
address
address of account
withdrawalIds
uint256[]
list of withdrawal ids
_account
address
address of account
withdrawalIds
uint256[]
list of withdrawal ids
withdrawable
uint256
total withdrawable across all account's withdrawals
upkeepNeeded
bool
true if withdrawal should be executed, false otherwise
bytes
_withdrawalIds
uint256[]
list of withdrawal ids to execute
_batchIds
uint256[]
list of batch ids corresponding to withdrawal ids
_account
address
address of account
_amount
uint256
amount of LST
_amount
uint256
amount of tokens to deposit
_performData
bytes
encoded list of withdrawal data passed to staking pool strategies
_minWithdrawalAmount
uint256
minimum token amount
_minTimeBetweenWithdrawals
uint64
minimum time