LST Rewards Splitter Controller

The LSTRewardsSplitterController manages multiple LSTRewardsSplitter contracts.

View Functions

splitters

Returns the splitter corresponding to an account

function splitters(address _account) external view returns (address)

Parameters

NameTypeDescription

account

address

address of account

Return Values

NameTypeDescription

splitter

address

address of splitter corresponding to account

lst

Returns the min amount of new rewards required to split

function lst() external view returns (address)

Return Values

NameTypeDescription

lst

address

address of LST

rewardThreshold

Returns the address of the liquid staking token handled by this contract

function rewardThreshold() external view returns (uint256)

Return Values

NameTypeDescription

rewardThreshold

uint256

reward threshold

getAccounts

Returns a list of all accounts that have splitters

function getAccounts() external view returns (address[])

Return Values

NameTypeDescription

accounts

address[]

list of accounts

checkUpkeep

Returns whether a call should be made to performUpkeep to split new rewards

function checkUpkeep(bytes) external view returns (bool, bytes)

Return Values

NameTypeDescription

upkeepNeeded

bool

true if performUpkeep should be called, false otherwise

performData

bytes

abi encoded list of splitters to call

Write Functions

onTokenTransfer

ERC677 implementation to receive an LST deposit

function onTokenTransfer(address _sender, uint256 _value, bytes) external

Parameters

NameTypeDescription

_sender

address

address of sender

_value

uint256

value of transfer

withdraw

Withdraws tokens

function withdraw(uint256 _amount) external

Parameters

NameTypeDescription

_amount

uint256

amount to withdraw

performUpkeep

Splits new rewards between receivers

function performUpkeep(bytes _performData) external

Parameters

NameTypeDescription

_performData

bytes

abi encoded list of splitters to call

addSplitter

Deploys a new splitter

function addSplitter(address _account, struct LSTRewardsSplitter.Fee[] _fees) external

Parameters

NameTypeDescription

_account

address

address of account to deploy splitter for

_fees

struct LSTRewardsSplitter.Fee[]

list of splitter fees

removeSplitter

Removes an account's splitter

function removeSplitter(address _account) external

Parameters

NameTypeDescription

_account

address

address of account

setRewardThreshold

Sets the min amount of new rewards required to split

function setRewardThreshold(uint256 _rewardThreshold) external

Parameters

NameTypeDescription

_rewardThreshold

uint256

min amount of new rewards required to split

Last updated