fn burn(env: soroban_sdk::Env, from: soroban_sdk::Address, token_id: u32)
fn mint(env: soroban_sdk::Env, to: soroban_sdk::Address) -> u32
fn name(env: soroban_sdk::Env) -> soroban_sdk::String
fn ping(env: soroban_sdk::Env) -> u32
Public: Claim an unclaimed token (owner == contract address).
fn claim(env: soroban_sdk::Env, token_id: u32, claimer: soroban_sdk::Address)
fn symbol(env: soroban_sdk::Env) -> soroban_sdk::String
fn approve(
env: soroban_sdk::Env,
approver: soroban_sdk::Address,
approved: soroban_sdk::Address,
token_id: u32,
live_until_ledger: u32,
)
fn balance(env: soroban_sdk::Env, account: soroban_sdk::Address) -> u32
fn upgrade(env: soroban_sdk::Env, new_wasm_hash: soroban_sdk::BytesN<32>)
fn owner_of(env: soroban_sdk::Env, token_id: u32) -> soroban_sdk::Address
fn transfer(
env: soroban_sdk::Env,
from: soroban_sdk::Address,
to: soroban_sdk::Address,
token_id: u32,
)
fn burn_from(
env: soroban_sdk::Env,
spender: soroban_sdk::Address,
from: soroban_sdk::Address,
token_id: u32,
)
fn get_image(env: soroban_sdk::Env) -> soroban_sdk::String
fn get_owner(env: soroban_sdk::Env) -> Option
fn set_image(env: soroban_sdk::Env, image_data_uri: soroban_sdk::String)
Admin-only: Force set the owner of any token. Set to contract address to mark as "unclaimed" for public claiming.
fn set_owner(env: soroban_sdk::Env, token_id: u32, new_owner: soroban_sdk::Address)
fn token_uri(env: soroban_sdk::Env, token_id: u32) -> soroban_sdk::String
fn max_supply(env: soroban_sdk::Env) -> u32
End User: Claim multiple tokens in a single transaction. Auth is checked ONCE — enables true 1-signature batch claiming. Max 10 tokens per batch (CPU budget safety).
fn batch_claim(
env: soroban_sdk::Env,
ids: soroban_sdk::Vec,
claimer: soroban_sdk::Address,
)
fn get_approved(env: soroban_sdk::Env, token_id: u32) -> Option
fn get_claimant(env: soroban_sdk::Env, token_id: u32) -> Option
Check if a token is claimable (owned by contract).
fn is_claimable(env: soroban_sdk::Env, token_id: u32) -> bool
fn royalty_info(
env: soroban_sdk::Env,
token_id: u32,
sale_price: i128,
) -> (soroban_sdk::Address, i128)
fn set_claimant(
env: soroban_sdk::Env,
token_id: u32,
claimant: Option,
)
fn total_minted(env: soroban_sdk::Env) -> u32
fn __constructor(
env: soroban_sdk::Env,
owner: soroban_sdk::Address,
image_data_uri: soroban_sdk::String,
royalty_recipient: soroban_sdk::Address,
)
fn set_claimable(
env: soroban_sdk::Env,
token_id: u32,
claimant: Option,
)
fn set_token_uri(env: soroban_sdk::Env, token_id: u32, uri: soroban_sdk::String)
fn transfer_from(
env: soroban_sdk::Env,
spender: soroban_sdk::Address,
from: soroban_sdk::Address,
to: soroban_sdk::Address,
token_id: u32,
)
Transfer multiple tokens from one address to another.
Auth checked once on from. Max 15 per batch.
fn batch_transfer(
env: soroban_sdk::Env,
from: soroban_sdk::Address,
to: soroban_sdk::Address,
ids: soroban_sdk::Vec,
)
fn approve_for_all(
env: soroban_sdk::Env,
owner: soroban_sdk::Address,
operator: soroban_sdk::Address,
live_until_ledger: u32,
)
fn accept_ownership(env: soroban_sdk::Env)
Read-only: Fetch token info for multiple tokens in a single RPC call. Returns Vec of (token_id, uri, owner, is_claimable). Max 20 per batch.
fn batch_token_info(
env: soroban_sdk::Env,
ids: soroban_sdk::Vec,
) -> soroban_sdk::Vec<(u32, soroban_sdk::String, soroban_sdk::Address, bool)>
fn batch_set_claimant(
env: soroban_sdk::Env,
token_ids: soroban_sdk::Vec,
claimants: soroban_sdk::Vec
fn renounce_ownership(env: soroban_sdk::Env)
fn transfer_ownership(
env: soroban_sdk::Env,
new_owner: soroban_sdk::Address,
live_until_ledger: u32,
)
Owner-only: Set metadata URIs for multiple tokens. Lightest batch op — 1 storage write per token. Max 20 per batch.
fn batch_set_token_uri(
env: soroban_sdk::Env,
ids: soroban_sdk::Vec,
uris: soroban_sdk::Vec,
)
fn is_approved_for_all(
env: soroban_sdk::Env,
owner: soroban_sdk::Address,
operator: soroban_sdk::Address,
) -> bool
Owner-only: Make multiple tokens claimable in one transaction. Transfers ownership to contract address + sets optional claimant. Max 8 per batch (heavy — 3 writes per token, Soroban 25-write limit).
fn batch_make_claimable(
env: soroban_sdk::Env,
ids: soroban_sdk::Vec,
claimant: Option,
)
fn set_royalty_recipient(env: soroban_sdk::Env, recipient: soroban_sdk::Address)