pol staking contracts
PolygonVault: POL Validator Delegation Vault
PolygonVault manages deposits of POL into a Polygon validator delegation contract.
View Functions
Section titled âView FunctionsâReturns the address of the staking token (POL).
function token() public view returns (address)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| token | address | POL token address |
vaultController
Section titled âvaultControllerâReturns the address of the strategy that controls this vault.
function vaultController() public view returns (address)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| vaultController | address | Vault controller address |
stakeManager
Section titled âstakeManagerâReturns the address of the Polygon stake manager contract.
function stakeManager() public view returns (address)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| stakeManager | address | Stake manager address |
validatorPool
Section titled âvalidatorPoolâReturns the address of the Polygon validator delegation contract.
function validatorPool() public view returns (address)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| validatorPool | address | Validator pool address |
getTotalDeposits
Section titled âgetTotalDepositsâReturns the total balance of this contract (principal, rewards, queued withdrawals, and tokens held).
function getTotalDeposits() public view returns (uint256)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| totalDeposits | uint256 | Total balance |
getPrincipalDeposits
Section titled âgetPrincipalDepositsâReturns the principal balance of this contract in the validator pool.
function getPrincipalDeposits() public view returns (uint256)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| principalDeposits | uint256 | Principal balance |
getRewards
Section titled âgetRewardsâReturns the claimable rewards balance of this contract in the validator pool.
function getRewards() public view returns (uint256)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| rewards | uint256 | Claimable rewards |
getQueuedWithdrawals
Section titled âgetQueuedWithdrawalsâReturns the amount of queued withdrawals for this contract in the validator pool.
function getQueuedWithdrawals() public view returns (uint256)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| queuedWithdrawals | uint256 | Queued withdrawals |
isWithdrawable
Section titled âisWithdrawableâReturns whether deposits can be withdrawn from the validator pool.
function isWithdrawable() external view returns (bool)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| withdrawable | bool | true if withdrawable, false otherwise |
isUnbonding
Section titled âisUnbondingâReturns whether this vault is currently unbonding.
function isUnbonding() external view returns (bool)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| unbonding | bool | true if unbonding, false otherwise |
minRewardClaimAmount
Section titled âminRewardClaimAmountâReturns the minimum amount of rewards that can be claimed/restaked.
function minRewardClaimAmount() external view returns (uint256)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| minAmount | uint256 | Minimum claimable |
Write Functions
Section titled âWrite Functionsâdeposit
Section titled âdepositâDeposits tokens from the vault controller into the validator pool.
function deposit(uint256 _amount) externalParameters
Section titled âParametersâ| Name | Type | Description |
|---|---|---|
| _amount | uint256 | Amount to deposit |
withdraw
Section titled âwithdrawâWithdraws tokens from the validator pool and sends them to the vault controller.
function withdraw() external returns (uint256)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| amount | uint256 | Amount withdrawn |
Queues tokens for withdrawal in the validator pool.
function unbond(uint256 _amount) externalParameters
Section titled âParametersâ| Name | Type | Description |
|---|---|---|
| _amount | uint256 | Amount to unbond |
restakeRewards
Section titled ârestakeRewardsâRestakes rewards in the validator pool.
function restakeRewards() externalwithdrawRewards
Section titled âwithdrawRewardsâWithdraws rewards from the validator pool.
function withdrawRewards() external