Community Vault

CommunityVault is a vault contract used for depositing LINK into the Chainlink staking contract as a community staker.

View Functions

token

Returns the address of the staking token

function token() external view returns (address)

Return Values

Name
Type
Description

token

address

address of token

vaultController

Returns the address of the vault controller

function vaultController() external view returns (address)

Return Values

Name
Type
Description

vaultController

address

address of vault controller

stakeController

Returns the address of the Chainlink staking contract

function stakeController() external view returns (address)

Return Values

Name
Type
Description

stakeController

address

address of staking contract

rewardsController

Returns the address of the Chainlink staking rewards contract

function rewardsController() external view returns (address)

Return Values

Name
Type
Description

rewardsController

address

address of rewards contract

delegateRegistry

Returns the address of the delegate registry

function delegateRegistry() external view returns (address)

Return Values

Name
Type
Description

delegateRegistry

address

address of delegate registry

getTotalDeposits

Returns the total balance of this contract in the Chainlink staking contract

function getTotalDeposits() public view returns (uint256)

Return Values

Name
Type
Description

totalDeposits

uint256

Total deposit balance

getPrincipalDeposits

Returns the principal balance of this contract in the Chainlink staking contract

function getPrincipalDeposits() public view returns (uint256)

Return Values

Name
Type
Description

principalDeposits

uint256

Principal deposit balance

getRewards

Returns the claimable rewards balance of this contract in the Chainlink staking rewards contract

function getRewards() public view returns (uint256)

Return Values

Name
Type
Description

rewards

uint256

Claimable rewards

claimPeriodActive

Returns whether the claim period is active for this contract in the Chainlink staking contract

function claimPeriodActive() external view returns (bool)

Return Values

Name
Type
Description

active

bool

true if active, false otherwise

getDelegations

Returns all enabled delegations this vault has given out

function getDelegations() external view returns (IDelegateRegistry.Delegation[] memory)

Return Values

Name
Type
Description

delegations

IDelegateRegistry.Delegation[]

list of delegations

Write Functions

deposit

Deposits tokens from the vaultController into the Chainlink staking contract

function deposit(uint256 _amount) external

Parameters

Name
Type
Description

_amount

uint256

Amount to deposit

withdraw

Withdraws tokens from the Chainlink staking contract and sends them to the vault controller

function withdraw(uint256 _amount) external

Parameters

Name
Type
Description

_amount

uint256

Amount to withdraw

unbond

Unbonds tokens in the Chainlink staking contract

function unbond() external

delegate

Delegates to an address for this vault

function delegate(address _to, bytes32 _rights, bool _enable) external

Parameters

Name
Type
Description

_to

address

address to delegate to

_rights

bytes32

rights to grant

_enable

bool

whether to enable or revoke delegation

withdrawTokenRewards

Withdraws any non-LINK token rewards sitting in this vault

function withdrawTokenRewards(address[] calldata _tokens) external

Parameters

Name
Type
Description

_tokens

address[]

list of tokens to withdraw

setDelegateRegistry

Sets the delegate registry

function setDelegateRegistry(address _delegateRegistry) external

Parameters

Name
Type
Description

_delegateRegistry

address

address of delegate registry

claimRewards

Claims rewards from the Chainlink staking contract

function claimRewards(uint256 _minRewards, address _rewardsReceiver) external

Parameters

Name
Type
Description

_minRewards

uint256

Min amount of rewards to claim

_rewardsReceiver

address

Address to receive claimed rewards

Last updated