Settle the auction: winner pays, domain can transfer
fn settle(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
auction_id: soroban_sdk::BytesN<32>,
) -> Result<(soroban_sdk::Address, i128), soroban_sdk::Error>
fn upgrade(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
new_wasm_hash: soroban_sdk::BytesN<32>,
) -> Result<(), soroban_sdk::Error>
fn set_admin(
env: soroban_sdk::Env,
current_admin: soroban_sdk::Address,
new_admin: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
Submit a sealed bid commitment: hash(bid_amount + salt) Phase 1: Simple hash commitment (no ZK) Phase 2: Will add ZK proof that bid >= reserve AND bidder has funds
fn commit_bid(
env: soroban_sdk::Env,
bidder: soroban_sdk::Address,
auction_id: soroban_sdk::BytesN<32>,
commitment_hash: soroban_sdk::BytesN<32>,
) -> Result, soroban_sdk::Error>
fn extend_ttl(env: soroban_sdk::Env)
fn initialize(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
usdc_token: soroban_sdk::Address,
operator_wallet: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
Reveal a sealed bid: provide the original bid_amount and salt The contract verifies hash(bid_amount + salt) matches the commitment
fn reveal_bid(
env: soroban_sdk::Env,
bidder: soroban_sdk::Address,
commit_id: soroban_sdk::BytesN<32>,
bid_amount: i128,
salt: soroban_sdk::BytesN<32>,
) -> Result<(), soroban_sdk::Error>
fn get_auction(
env: soroban_sdk::Env,
auction_id: soroban_sdk::BytesN<32>,
) -> Result
Constructor (Protocol 22+): Called atomically during CreateContractV2.
fn __constructor(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
usdc_token: soroban_sdk::Address,
operator_wallet: soroban_sdk::Address,
)
fn set_xld_token(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
xld_token: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
Create a sealed bid auction for a domain
fn create_auction(
env: soroban_sdk::Env,
seller: soroban_sdk::Address,
node: soroban_sdk::BytesN<32>,
reserve_price: i128,
commit_duration_hours: u32,
reveal_duration_hours: u32,
) -> Result, soroban_sdk::Error>
fn get_commitment(
env: soroban_sdk::Env,
commit_id: soroban_sdk::BytesN<32>,
) -> Result
fn set_vault_contract(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
vault: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
fn settle_from_router(
env: soroban_sdk::Env,
router: soroban_sdk::Address,
auction_id: soroban_sdk::BytesN<32>,
max_xld_amount: i128,
) -> Result<(soroban_sdk::Address, i128), soroban_sdk::Error>