Mint exactly 1 SBT to to. Only the admin may call this.
Fails if to already holds an active token.
fn mint(
env: soroban_sdk::Env,
to: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
Returns the token name.
fn name(env: soroban_sdk::Env) -> soroban_sdk::String
Revoke (burn) an SBT from holder. Only the admin may call this.
Fails if holder does not hold a token.
fn revoke(
env: soroban_sdk::Env,
holder: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
Returns the token symbol.
fn symbol(env: soroban_sdk::Env) -> soroban_sdk::String
Returns token decimals. Always 0 since SBTs are indivisible.
fn decimals(env: soroban_sdk::Env) -> u32
Returns 1 if the holder has an active and valid (not expired) SBT, 0 otherwise.
fn balance_of(env: soroban_sdk::Env, holder: soroban_sdk::Address) -> u64
Get the expiration timestamp of a holder's compliance SBT.
fn expires_at(env: soroban_sdk::Env, holder: soroban_sdk::Address) -> u64
Initialize the SBT contract.
admin – the address authorized to mint and revoke (should be the
registry contract address).name – human-readable token name, e.g. "Luminar Compliance SBT".symbol – token ticker symbol, e.g. "LSBT".fn initialize(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
name: soroban_sdk::String,
symbol: soroban_sdk::String,
) -> Result<(), soroban_sdk::Error>
Returns the total number of active SBTs.
fn total_supply(env: soroban_sdk::Env) -> u64