Contract 2d35c1155470630434b03beba361f7cb1d8fcbb3e8b0cf23a76c83de13c0b142

← Back to Index 📥 Download WASM

Meta

rssdkver 23.4.0#673d6c4f2368d282d25da29bda55c21b8be69ca6
rsver 1.92.0

Instances

  • CD6D5TPTENDXU2SURVI7SIAVXRLYOZCYKNLHI3EARHW5OCL6EFO55RBK

Interface

fn stake(env: soroban_sdk::Env, user: soroban_sdk::Address, amount: i128)

Migrate contract storage after an upgrade. Only the admin can call this function. Call this after upgrade() if storage migration is needed.

fn migrate(env: soroban_sdk::Env)
fn unstake(env: soroban_sdk::Env, user: soroban_sdk::Address)

Upgrade the contract to a new WASM binary. Only the admin can call this function.

Arguments

  • new_wasm_hash - The hash of the new WASM binary to upgrade to
fn upgrade(env: soroban_sdk::Env, new_wasm_hash: soroban_sdk::BytesN<32>)
fn is_paused(env: soroban_sdk::Env) -> bool
fn initialize(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    stake_wal: soroban_sdk::Address,
    rewardwal: soroban_sdk::Address,
    token: soroban_sdk::Address,
    token_decimals: u32,
    min_stake: Option,
    tier_configs: Option>,
)
fn get_version(env: soroban_sdk::Env) -> u32

Check if migration has already been completed. Returns true if sync_from_old_contract has been called.

fn is_migrated(env: soroban_sdk::Env) -> bool
fn update_admin(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    new_admin: soroban_sdk::Address,
)
fn claim_rewards(env: soroban_sdk::Env, user: soroban_sdk::Address)
fn get_all_tiers(env: soroban_sdk::Env) -> soroban_sdk::Vec
fn replace_tiers(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    tiers: soroban_sdk::Vec,
)
fn pause_contract(env: soroban_sdk::Env, admin: soroban_sdk::Address)
fn simulate_stake(env: soroban_sdk::Env, amount: i128) -> StakeSimulation
fn update_wallets(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    stake_wal: Option,
    rewardwal: Option,
)
fn unstake_partial(env: soroban_sdk::Env, user: soroban_sdk::Address, amount: i128)
fn get_staking_info(env: soroban_sdk::Env, user: soroban_sdk::Address) -> StakingRecord
fn get_tier_details(env: soroban_sdk::Env, tier: u32) -> Tier
fn unpause_contract(env: soroban_sdk::Env, admin: soroban_sdk::Address)
fn get_contract_stats(env: soroban_sdk::Env) -> ContractStats
fn update_tier_config(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    tier: u32,
    min_amount: Option,
    max_amount: Option,
    daily_rate: Option,
)
fn get_contract_config(env: soroban_sdk::Env) -> ContractConfig
fn get_pending_rewards(env: soroban_sdk::Env, user: soroban_sdk::Address) -> i128
fn get_tier_for_amount(env: soroban_sdk::Env, amount: i128) -> (u32, i128)
fn update_token_config(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    token: Option,
    token_decimals: Option,
    min_stake: Option,
)
fn admin_register_stakers(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    count_to_add: u32,
)
fn get_distribution_stats(env: soroban_sdk::Env) -> DistributionStats
fn get_total_value_locked(env: soroban_sdk::Env) -> i128

One-time function to sync full state from an old contract. This function can only be called once and will be permanently locked after. Only the admin can call this function.

Arguments

  • admin - The admin address (must match stored admin)
  • data - MigrationData containing all state to import
fn sync_from_old_contract(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    data: MigrationData,
)
fn get_active_staker_count(env: soroban_sdk::Env) -> u32
fn admin_distribute_rewards(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    users: soroban_sdk::Vec,
    min_reward_threshold: Option,
) -> soroban_sdk::Vec
fn preview_batch_distribution(
    env: soroban_sdk::Env,
    users: soroban_sdk::Vec,
    min_reward_threshold: Option,
) -> soroban_sdk::Vec

Imports

WebAssembly Text (WAT) ▶