fn pause(env: soroban_sdk::Env) -> Result<(), BadgeError>
No-op for v1; reserved for post-upgrade state migration.
fn migrate(env: soroban_sdk::Env)
fn unpause(env: soroban_sdk::Env) -> Result<(), BadgeError>
fn version(env: soroban_sdk::Env) -> u32
fn owner_of(env: soroban_sdk::Env, token_id: u32) -> Option
Always returns an error — badges are soulbound and non-transferable.
fn transfer(
env: soroban_sdk::Env,
_from: soroban_sdk::Address,
_to: soroban_sdk::Address,
_token_id: u32,
) -> Result<(), BadgeError>
fn is_paused(env: soroban_sdk::Env) -> bool
fn mint_badge(
env: soroban_sdk::Env,
wallet: soroban_sdk::Address,
badge_type: soroban_sdk::Symbol,
cycle_id: u32,
expiry: u64,
signature: soroban_sdk::BytesN<64>,
) -> Result
Returns whether wallet has claimed badge_type for the given cycle_id.
fn has_claimed(
env: soroban_sdk::Env,
wallet: soroban_sdk::Address,
badge_type: soroban_sdk::Symbol,
cycle_id: u32,
) -> bool
fn total_supply(env: soroban_sdk::Env) -> u32
fn badge_type_of(env: soroban_sdk::Env, token_id: u32) -> Option
fn __constructor(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
signing_key: soroban_sdk::BytesN<32>,
upgrade_timelock_secs: u64,
)
fn cancel_upgrade(env: soroban_sdk::Env) -> Result<(), BadgeError>
fn execute_upgrade(env: soroban_sdk::Env) -> Result<(), BadgeError>
fn propose_upgrade(
env: soroban_sdk::Env,
new_wasm_hash: soroban_sdk::BytesN<32>,
) -> Result<(), BadgeError>
Set or update the edition cap for a badge type. Admin-only. No registration required — can be called for any badge type at any time.
fn update_edition_cap(
env: soroban_sdk::Env,
badge_type: soroban_sdk::Symbol,
new_cap: u32,
) -> Result<(), BadgeError>
fn update_signing_key(
env: soroban_sdk::Env,
new_key: soroban_sdk::BytesN<32>,
) -> Result<(), BadgeError>
fn lock_upgrades_forever(env: soroban_sdk::Env) -> Result<(), BadgeError>
fn update_upgrade_timelock_secs(
env: soroban_sdk::Env,
new_secs: u64,
) -> Result<(), BadgeError>