Initializes the contract. Must be called only once. Sets initial supply, default fee percentages (in basis points), reward rate, and assigns the owner and marketing wallet.
fn init(
env: soroban_sdk::Env,
owner: soroban_sdk::Address,
initial_supply: i128,
marketing_wallet: soroban_sdk::Address,
)
Transfer tokens from from to to, deducting fees unless either party is fee-exempt.
fn transfer(
env: soroban_sdk::Env,
from: soroban_sdk::Address,
to: soroban_sdk::Address,
amount: i128,
)
Allows an account to claim its share of accumulated reflection fees.
fn claim_reflection(env: soroban_sdk::Env, account: soroban_sdk::Address)
Stake tokens by transferring them from the account into the staking pool.
fn stake(env: soroban_sdk::Env, account: soroban_sdk::Address, amount: i128)
Unstake tokens, returning them to the account and claiming accrued staking rewards.
fn unstake(env: soroban_sdk::Env, account: soroban_sdk::Address, amount: i128)
Claim accumulated staking rewards without unstaking tokens.
fn claim_staking_reward(env: soroban_sdk::Env, account: soroban_sdk::Address)