Skip to main content

StakingPoolV1Interface

type StakingPoolV1Interface

A typed view of a `0x3::staking_pool::StakingPoolV1` embedded in a validator.

type StakingPoolV1Interface interface {
// The epoch at which this pool became active. `None` while pre-active;
// `Some(epoch)` once active or inactive.
ActivationEpoch() *uint64
// The epoch at which this pool ceased to be active. `None` while
// pre-active or active; `Some(epoch)` once inactive.
DeactivationEpoch() *uint64
// Object ID of the `Table` holding the exchange-rate history, keyed by
// epoch.
ExchangeRatesId() *ObjectId
// Number of exchange-rate history entries. The entries themselves are
// stored in dynamic fields and are not part of this struct's contents.
ExchangeRatesSize() uint64
// Object ID of the `Bag` holding fields added to this struct after its
// current on-chain layout was set.
ExtraFieldsId() *ObjectId
Id() *ObjectId
// The total number of IOTA tokens in this pool, including the rewards
// and the principal of every `StakedIota`, in nanos; updated at epoch
// boundaries.
IotaBalance() uint64
// Pending pool tokens withdrawn during the current epoch, emptied at
// epoch boundaries.
PendingPoolTokenWithdraw() uint64
// Pending stake amount for this epoch, emptied at epoch boundaries.
PendingStake() uint64
// Pending stake withdrawn during the current epoch, including both
// principal and rewards; emptied at epoch boundaries.
PendingTotalIotaWithdraw() uint64
// Total number of pool tokens issued by the pool.
PoolTokenBalance() uint64
// Epoch stake rewards accumulated in the pool, in nanos.
RewardsPool() uint64
}