Burn tokens after energy has been consumed by the receiver. Permanently removes tokens from circulation.
fn burn(env: soroban_sdk::Env, from: soroban_sdk::Address, amount: i128)
Mint new energy tokens when a donor discharges energy. Only callable by the oracle/admin backend.
fn mint(env: soroban_sdk::Env, to: soroban_sdk::Address, amount: i128)
Transfer tokens between wallets (used during marketplace settlement).
fn transfer(
env: soroban_sdk::Env,
from: soroban_sdk::Address,
to: soroban_sdk::Address,
amount: i128,
)
fn initialize(env: soroban_sdk::Env, admin: soroban_sdk::Address)
fn get_balance(env: soroban_sdk::Env, user: soroban_sdk::Address) -> i128
fn total_burned(env: soroban_sdk::Env) -> i128
fn total_supply(env: soroban_sdk::Env) -> i128