fn burn(env: soroban_sdk::Env, from: soroban_sdk::Address, amount: i128)
fn mint(env: soroban_sdk::Env, to: soroban_sdk::Address, amount: i128)
fn name(env: soroban_sdk::Env) -> soroban_sdk::String
fn symbol(env: soroban_sdk::Env) -> soroban_sdk::String
Approve a spender on behalf of owner
fn approve(
env: soroban_sdk::Env,
from: soroban_sdk::Address,
spender: soroban_sdk::Address,
amount: i128,
expiration_ledger: u32,
)
fn balance(env: soroban_sdk::Env, id: soroban_sdk::Address) -> i128
Replace this contract's Wasm in place. Instance and persistent storage are preserved. Authorised by the stored admin.
fn upgrade(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
new_wasm_hash: soroban_sdk::BytesN<32>,
)
Regulatory clawback — admin can recover from any frozen account
fn clawback(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
from: soroban_sdk::Address,
amount: i128,
)
fn decimals(env: soroban_sdk::Env) -> u32
Transfer tokens between accounts
fn transfer(
env: soroban_sdk::Env,
from: soroban_sdk::Address,
to: soroban_sdk::Address,
amount: i128,
)
fn allowance(
env: soroban_sdk::Env,
from: soroban_sdk::Address,
spender: soroban_sdk::Address,
) -> i128
fn burn_from(
env: soroban_sdk::Env,
spender: soroban_sdk::Address,
from: soroban_sdk::Address,
amount: i128,
)
fn is_frozen(env: soroban_sdk::Env, account: soroban_sdk::Address) -> bool
fn is_paused(env: soroban_sdk::Env) -> bool
Transfer admin role
fn set_admin(
env: soroban_sdk::Env,
current: soroban_sdk::Address,
new_admin: soroban_sdk::Address,
)
fn initialize(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
minter: soroban_sdk::Address,
name: soroban_sdk::String,
symbol: soroban_sdk::String,
decimals: u32,
)
Freeze / unfreeze an account (regulatory compliance)
fn set_frozen(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
account: soroban_sdk::Address,
frozen: bool,
)
Update minter (e.g. after engine upgrade)
fn set_minter(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
minter: soroban_sdk::Address,
)
Emergency pause (halts all transfers/mints)
fn set_paused(env: soroban_sdk::Env, admin: soroban_sdk::Address, paused: bool)
fn total_supply(env: soroban_sdk::Env) -> i128
Transfer using an approved allowance
fn transfer_from(
env: soroban_sdk::Env,
spender: soroban_sdk::Address,
from: soroban_sdk::Address,
to: soroban_sdk::Address,
amount: i128,
)