Skip to content

pol staking contracts

PolygonVault: POL Validator Delegation Vault

PolygonVault manages deposits of POL into a Polygon validator delegation contract.

Returns the address of the staking token (POL).

function token() public view returns (address)
Name Type Description
token address POL token address

Returns the address of the strategy that controls this vault.

function vaultController() public view returns (address)
Name Type Description
vaultController address Vault controller address

Returns the address of the Polygon stake manager contract.

function stakeManager() public view returns (address)
Name Type Description
stakeManager address Stake manager address

Returns the address of the Polygon validator delegation contract.

function validatorPool() public view returns (address)
Name Type Description
validatorPool address Validator pool address

Returns the total balance of this contract (principal, rewards, queued withdrawals, and tokens held).

function getTotalDeposits() public view returns (uint256)
Name Type Description
totalDeposits uint256 Total balance

Returns the principal balance of this contract in the validator pool.

function getPrincipalDeposits() public view returns (uint256)
Name Type Description
principalDeposits uint256 Principal balance

Returns the claimable rewards balance of this contract in the validator pool.

function getRewards() public view returns (uint256)
Name Type Description
rewards uint256 Claimable rewards

Returns the amount of queued withdrawals for this contract in the validator pool.

function getQueuedWithdrawals() public view returns (uint256)
Name Type Description
queuedWithdrawals uint256 Queued withdrawals

Returns whether deposits can be withdrawn from the validator pool.

function isWithdrawable() external view returns (bool)
Name Type Description
withdrawable bool true if withdrawable, false otherwise

Returns whether this vault is currently unbonding.

function isUnbonding() external view returns (bool)
Name Type Description
unbonding bool true if unbonding, false otherwise

Returns the minimum amount of rewards that can be claimed/restaked.

function minRewardClaimAmount() external view returns (uint256)
Name Type Description
minAmount uint256 Minimum claimable

Deposits tokens from the vault controller into the validator pool.

function deposit(uint256 _amount) external
Name Type Description
_amount uint256 Amount to deposit

Withdraws tokens from the validator pool and sends them to the vault controller.

function withdraw() external returns (uint256)
Name Type Description
amount uint256 Amount withdrawn

Queues tokens for withdrawal in the validator pool.

function unbond(uint256 _amount) external
Name Type Description
_amount uint256 Amount to unbond

Restakes rewards in the validator pool.

function restakeRewards() external

Withdraws rewards from the validator pool.

function withdrawRewards() external