Skip to content

rewards pool contracts

RewardsPoolWSD Contract: Rebasing Token Rewards

RewardsPoolWSD is similar to RewardsPool but it handles a single rebasing token minted by a StakingPool by wrapping the tokens when they’re received for distribution and unwrapping them when a user claims their rewards.

Returns the address of the rewards token this pool distributes

function token() external view returns (address)
Name Type Description
token address Address of rewards token

Returns the address of the wrapped version of the token this pool distributes

function wsdToken() external view returns (address)
Name Type Description
wrappedToken address Address of wrapped rewards token

Returns an account’s total unwrapped unclaimed rewards

function withdrawableRewards(address _account) public view returns (uint256)
Name Type Description
_account address Address of account
Name Type Description
rewards uint256 Total unclaimed rewards (unwrapped)

Returns an account’s total wrapped unclaimed rewards

function withdrawableRewardsWrapped(address _account) public view returns (uint256)
Name Type Description
_account address Address of account
Name Type Description
rewards uint256 Total unclaimed rewards (wrapped)

Withdraws the sender’s unclaimed rewards

function withdraw() external

Withdraws an account’s unclaimed rewards

function withdraw(address _account) external
Name Type Description
_account address Account to withdraw for

ERC677 implementation that receives rewards and distributes them

function onTokenTransfer(address, uint256, bytes) external

Distributes new rewards that have been deposited

function distributeRewards() public

Updates an account’s principal reward balance

function updateReward(address _account) public
Name Type Description
_account address Address of account