# StakingFacet

Git Source

Inherits: Modifiers

# Functions

# vTokenId

function vTokenId(bytes32 _tokenId, uint64 _interval) external pure returns (bytes32);

# currentInterval

function currentInterval(bytes32 _entityId) external view returns (uint64);

# getStakingConfig

function getStakingConfig(bytes32 _entityId) external view returns (StakingConfig memory);

# initStaking

function initStaking(bytes32 _entityId, StakingConfig calldata _config)
    external
    assertPrivilege(LibAdmin._getSystemId(), LC.GROUP_SYSTEM_ADMINS);

# stake

function stake(bytes32 _entityId, uint256 _amount) external notLocked(msg.sig);

# unstake

function unstake(bytes32 _entityId) external notLocked(msg.sig);

# lastCollectedInterval

function lastCollectedInterval(bytes32 _entityId, bytes32 _stakerId) external view returns (uint64);

# lastIntervalPaid

function lastIntervalPaid(bytes32 _entityId) external view returns (uint64);

# calculateStartTimeOfInterval

function calculateStartTimeOfInterval(bytes32 _entityId, uint64 _interval) external view returns (uint256);

# calculateStartTimeOfCurrentInterval

function calculateStartTimeOfCurrentInterval(bytes32 _entityId) external view returns (uint256);

# getRewardsBalance

function getRewardsBalance(bytes32 _stakerId, bytes32 _entityId)
    external
    view
    returns (bytes32[] memory rewardCurrencies_, uint256[] memory rewardAmounts_);

# collectRewards

function collectRewards(bytes32 _entityId) external notLocked(msg.sig);

# getStakingState

function getStakingState(bytes32 _stakerId, bytes32 _entityId) external view returns (StakingState memory);

# payReward

function payReward(bytes32 _stakingRewardId, bytes32 _entityId, bytes32 _rewardTokenId, uint256 _amount)
    external
    notLocked(msg.sig)
    assertPrivilege(_entityId, LC.GROUP_ENTITY_ADMINS);

# getStakingAmounts

function getStakingAmounts(bytes32 _stakerId, bytes32 _entityId)
    external
    view
    returns (uint256 stakedAmount_, uint256 boostedAmount_);