Search by name, SuiNS, address, digest, object ID, coin type or checkpoint.

API

staking_pool

Module0x0000…0003
Move path
0x0000…0003::staking_pool
Functions
4219 public, 2 entry
Structs
7
staking_pool

Declarations

Rebuilt from the module interface. No verified source is published, and function bodies are only available as bytecode.

module staking_pool;
struct FungibleStakedSui has store, key {
id: UID,
pool_id: ID,
value: u64,
}
struct FungibleStakedSuiData has store, key {
id: UID,
total_supply: u64,
principal: Balance<SUI>,
}
struct FungibleStakedSuiDataKey has copy, drop, store {
dummy_field: bool,
}
struct PoolTokenExchangeRate has copy, drop, store {
sui_amount: u64,
pool_token_amount: u64,
}
struct StakedSui has store, key {
id: UID,
pool_id: ID,
stake_activation_epoch: u64,
principal: Balance<SUI>,
}
struct StakingPool has store, key {
id: UID,
activation_epoch: Option<u64>,
deactivation_epoch: Option<u64>,
sui_balance: u64,
rewards_pool: Balance<SUI>,
pool_token_balance: u64,
exchange_rates: Table<u64, PoolTokenExchangeRate>,
pending_stake: u64,
pending_total_sui_withdraw: u64,
pending_pool_token_withdraw: u64,
extra_fields: Bag,
}
struct UnderflowSuiBalance has copy, drop, store {
dummy_field: bool,
}
public(package) fun activate_staking_pool(&mut StakingPool,u64)
public(package) fun activation_epoch(&StakingPool): Option<u64>
fun calculate_fungible_staked_sui_withdraw_amount(PoolTokenExchangeRate,u64,u64,u64): (u64, u64)
public(package) fun calculate_rewards(&StakingPool,&StakedSui,u64): u64
fun check_balance_invariants(&StakingPool,u64)
public(package) fun convert_to_fungible_staked_sui(&mut StakingPool,StakedSui): FungibleStakedSui
public(package) fun deactivate_staking_pool(&mut StakingPool,u64)
public(package) fun deposit_rewards(&mut StakingPool,Balance<SUI>)
public(package) fun exchange_rates(&StakingPool): &Table<u64, PoolTokenExchangeRate>
public fun fungible_staked_sui_pool_id(&FungibleStakedSui): ID
public fun fungible_staked_sui_value(&FungibleStakedSui): u64
fun get_sui_amount(&PoolTokenExchangeRate,u64): u64
fun get_token_amount(&PoolTokenExchangeRate,u64): u64
fun initial_exchange_rate(): PoolTokenExchangeRate
public fun is_equal_staking_metadata(&StakedSui,&StakedSui): bool
public fun is_inactive(&StakingPool): bool
public fun is_preactive(&StakingPool): bool
fun is_preactive_at_epoch(&StakingPool,u64): bool
public fun join_fungible_staked_sui(&mut FungibleStakedSui,FungibleStakedSui)
public entry fun join_staked_sui(&mut StakedSui,StakedSui)
public(package) fun new(): StakingPool
public fun pending_stake_amount(&StakingPool): u64
public fun pending_stake_withdraw_amount(&StakingPool): u64
public fun pool_id(&StakedSui): ID
public fun pool_token_amount(&PoolTokenExchangeRate): u64
public fun pool_token_exchange_rate_at_epoch(&StakingPool,u64): PoolTokenExchangeRate
public(package) fun process_pending_stake(&mut StakingPool)
fun process_pending_stake_withdraw(&mut StakingPool)
public(package) fun process_pending_stakes_and_withdraws(&mut StakingPool)
public(package) fun redeem_fungible_staked_sui(&mut StakingPool,FungibleStakedSui): Balance<SUI>
public(package) fun request_add_stake(&mut StakingPool,Balance<SUI>,u64): StakedSui
public(package) fun request_withdraw_stake(&mut StakingPool,StakedSui): Balance<SUI>
public fun split(&mut StakedSui,u64): StakedSui
public fun split_fungible_staked_sui(&mut FungibleStakedSui,u64): FungibleStakedSui
public entry fun split_staked_sui(&mut StakedSui,u64)
public fun stake_activation_epoch(&StakedSui): u64
public fun staked_sui_amount(&StakedSui): u64
public fun sui_amount(&PoolTokenExchangeRate): u64
public fun sui_balance(&StakingPool): u64
fun unwrap_staked_sui(StakedSui): Balance<SUI>
public(package) fun withdraw_from_principal(&StakingPool,StakedSui): (u64, Balance<SUI>)
fun withdraw_rewards(&mut StakingPool,u64,u64,u64): Balance<SUI>