fn burn(env: soroban_sdk::Env, from: soroban_sdk::Address, token_id: u32)
Mint the NFT (only 1 can exist)
fn mint(env: soroban_sdk::Env, to: soroban_sdk::Address) -> u32
fn name(env: soroban_sdk::Env) -> soroban_sdk::String
fn pause(env: soroban_sdk::Env)
Get price in KPOP tokens
fn price(env: soroban_sdk::Env) -> i128
fn paused(env: soroban_sdk::Env) -> bool
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 unpause(env: soroban_sdk::Env)
Upgrade the contract code
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,
)
Get the on-chain image data URI Returns the full "data:image/jpeg;base64,..." string
fn get_image(env: soroban_sdk::Env) -> soroban_sdk::String
fn get_owner(env: soroban_sdk::Env) -> Option
Update the image (owner only)
fn set_image(env: soroban_sdk::Env, image_data_uri: soroban_sdk::String)
fn token_uri(env: soroban_sdk::Env, token_id: u32) -> soroban_sdk::String
Get max supply (1 for this 1/1 NFT)
fn max_supply(env: soroban_sdk::Env) -> u32
fn get_approved(env: soroban_sdk::Env, token_id: u32) -> Option
Get royalty info for a token sale
fn royalty_info(
env: soroban_sdk::Env,
token_id: u32,
sale_price: i128,
) -> (soroban_sdk::Address, i128)
Get total minted
fn total_minted(env: soroban_sdk::Env) -> u32
Initialize the 100% on-chain NFT
owner - Admin addressimage_data_uri - Full base64 data URI (e.g., "data:image/jpeg;base64,...")royalty_recipient - Address to receive royaltiesfn __constructor(
env: soroban_sdk::Env,
owner: soroban_sdk::Address,
image_data_uri: soroban_sdk::String,
royalty_recipient: soroban_sdk::Address,
)
fn transfer_from(
env: soroban_sdk::Env,
spender: soroban_sdk::Address,
from: soroban_sdk::Address,
to: soroban_sdk::Address,
token_id: u32,
)
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)
Get token metadata (returns on-chain image)
fn get_token_metadata(env: soroban_sdk::Env, token_id: u32) -> soroban_sdk::String
fn renounce_ownership(env: soroban_sdk::Env)
fn transfer_ownership(
env: soroban_sdk::Env,
new_owner: soroban_sdk::Address,
live_until_ledger: u32,
)
fn is_approved_for_all(
env: soroban_sdk::Env,
owner: soroban_sdk::Address,
operator: soroban_sdk::Address,
) -> bool
Update royalty recipient
fn set_royalty_recipient(env: soroban_sdk::Env, recipient: soroban_sdk::Address)