link staking contracts
OperatorVault: Node Operator LINK Staking Vault
OperatorVault is a vault contract used for depositing LINK into the Chainlink staking contract as a node operator.
View Functions
Section titled âView FunctionsâvaultController
Section titled âvaultControllerâReturns the address of the vault controller
function vaultController() external view returns (address)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| vaultController | address | address of vault controller |
stakeController
Section titled âstakeControllerâReturns the address of the Chainlink staking contract
function stakeController() external view returns (address)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| stakeController | address | address of staking contract |
rewardsController
Section titled ârewardsControllerâReturns the address of the Chainlink staking rewards contract
function rewardsController() external view returns (address)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| rewardsController | address | address of rewards contract |
delegateRegistry
Section titled âdelegateRegistryâReturns the address of the delegate registry
function delegateRegistry() external view returns (address)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| delegateRegistry | address | address of delegate registry |
rewardsReceiver
Section titled ârewardsReceiverâReturns the rewards receiver address for this vault
function rewardsReceiver() external view returns (address)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| rewardsReceiver | address | Rewards receiver address |
pfAlertsController
Section titled âpfAlertsControllerâReturns the address of the price feed alerts controller
function pfAlertsController() external view returns (address)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| pfAlertsController | address | Price feed alerts controller |
trackedTotalDeposits
Section titled âtrackedTotalDepositsâReturns the tracked total deposits for this vault
function trackedTotalDeposits() external view returns (uint128)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| trackedTotalDeposits | uint128 | Tracked total deposits |
unclaimedRewards
Section titled âunclaimedRewardsâReturns the unclaimed rewards for this vault
function unclaimedRewards() external view returns (uint128)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| unclaimedRewards | uint128 | Unclaimed rewards |
getTotalDeposits
Section titled âgetTotalDepositsâReturns the total balance of this contract in the Chainlink staking contract
function getTotalDeposits() public view returns (uint256)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| totalDeposits | uint256 | Total deposit balance |
getPrincipalDeposits
Section titled âgetPrincipalDepositsâReturns the principal balance of this contract in the Chainlink staking contract
function getPrincipalDeposits() public view returns (uint256)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| principalDeposits | uint256 | Principal deposit balance |
getRewards
Section titled âgetRewardsâReturns the claimable rewards balance of this contract in the Chainlink staking rewards contract
function getRewards() public view returns (uint256)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| rewards | uint256 | Claimable rewards |
getUnclaimedRewards
Section titled âgetUnclaimedRewardsâReturns the total unclaimed operator rewards for this vault
function getUnclaimedRewards() public view returns (uint256)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| unclaimedRewards | uint256 | Unclaimed operator rewards |
getPendingRewards
Section titled âgetPendingRewardsâReturns the amount of rewards that will be earned by this vault on the next update
function getPendingRewards() public view returns (uint256)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| unclaimedRewards | uint256 | Unclaimed operator rewards |
operator
Section titled âoperatorâReturns the operator address for this vault
function operator() external view returns (address)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| operator | address | Operator address |
claimPeriodActive
Section titled âclaimPeriodActiveâReturns whether the claim period is active for this contract in the Chainlink staking contract
function claimPeriodActive() externalReturn Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| _active | bool | true if active, false otherwise |
isRemoved
Section titled âisRemovedâReturns whether the operator for this vault has been removed from the Chainlink staking contract
function isRemoved() externalReturn Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| _isRemoved | bool | true if operator has been removed, false otherwise |
getDelegations
Section titled âgetDelegationsâReturns all enabled delegations this vault has given out
function getDelegations() external view returns (IDelegateRegistry.Delegation[] memory)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| delegations | IDelegateRegistry.Delegation[] | list of delegations |
Write Functions
Section titled âWrite Functionsâdeposit
Section titled âdepositâDeposits tokens from the vaultController into the Chainlink staking contract
function deposit(uint256 _amount) externalParameters
Section titled âParametersâ| Name | Type | Description |
|---|---|---|
| _amount | uint256 | Amount to deposit |
withdraw
Section titled âwithdrawâWithdraws tokens from the Chainlink staking contract and sends them to the vault controller
function withdraw(uint256 _amount) externalParameters
Section titled âParametersâ| Name | Type | Description |
|---|---|---|
| _amount | uint256 | Amount to withdraw |
Unbonds tokens in the Chainlink staking contract
function unbond() externalraiseAlert
Section titled âraiseAlertâRaises an alert in the Chainlink staking contract
function raiseAlert(address _feed) externalParameters
Section titled âParametersâ| Name | Type | Description |
|---|---|---|
| _feed | address | Address of Chainlink feed to raise alert for |
withdrawRewards
Section titled âwithdrawRewardsâWithdraws the unclaimed operator rewards for this vault
function withdrawRewards() externalupdateDeposits
Section titled âupdateDepositsâUpdates the deposit and reward accounting for this vault
function updateDeposits(uint256 _minRewards, address _rewardsReceiver) externalParameters
Section titled âParametersâ| Name | Type | Description |
|---|---|---|
| _minRewards | uint256 | Min amount of rewards to claim (set 0 to skip reward claiming) |
| _rewardsReceiver | address | Address to receive claimed rewards (set if _minRewards > 0) |
exitVault
Section titled âexitVaultâWithdraws tokens from the Chainlink staking contract and sends them to the vault controller
Used to withdraw remaining principal and rewards after operator has been removed. Will also send any unclaimed operator rewards to rewards receiver
function exitVault() external returns (uint256, uint256)Return Values
Section titled âReturn Valuesâ| Name | Type | Description |
|---|---|---|
| _principalWithdrawn | uint256 | Total principal withdrawn |
| _rewardsWithdrawn | uint256 | Total rewards withdrawn |
delegate
Section titled âdelegateâDelegates to an address for this vault
function delegate(address _to, bytes32 _rights, bool _enable) externalParameters
Section titled âParametersâ| Name | Type | Description |
|---|---|---|
| _to | address | address to delegate to |
| _rights | bytes32 | rights to grant |
| _enable | bool | whether to enable or revoke delegation |
withdrawTokenRewards
Section titled âwithdrawTokenRewardsâWithdraws any non-LINK token rewards sitting in this vault
function withdrawTokenRewards(address[] calldata _tokens) externalParameters
Section titled âParametersâ| Name | Type | Description |
|---|---|---|
| _tokens | address[] | list of tokens to withdraw |
setDelegateRegistry
Section titled âsetDelegateRegistryâSets the delegate registry
function setDelegateRegistry(address _delegateRegistry) externalParameters
Section titled âParametersâ| Name | Type | Description |
|---|---|---|
| _delegateRegistry | address | address of delegate registry |
setOperator
Section titled âsetOperatorâSets the operator address for this vault if not already set
function setOperator(address _operator) externalParameters
Section titled âParametersâ| Name | Type | Description |
|---|---|---|
| _operator | address | Operator address |
setRewardsReceiver
Section titled âsetRewardsReceiverâSets the address to receive operator rewards
function setRewardsReceiver(address _rewardsReceiver_) externalParameters
Section titled âParametersâ| Name | Type | Description |
|---|---|---|
| _rewardsReceiver | address | Address of rewards receiver |