fn is_paused(env: soroban_sdk::Env) -> bool
One-time setup. Sets admin, settlement engine, and vault factory addresses.
fn initialize(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
settlement_engine: soroban_sdk::Address,
vault_factory: soroban_sdk::Address,
collateral_vault: soroban_sdk::Address,
) -> Result<(), ProtocolError>
fn set_paused(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
paused: bool,
) -> Result<(), ProtocolError>
fn get_request(
env: soroban_sdk::Env,
request_id: u64,
) -> Result
Called by settlement engine when a request is matched to a loan.
fn mark_matched(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
request_id: u64,
) -> Result<(), OfferBookError>
Borrower cancels their own ACTIVE request. Closes the associated vault.
fn cancel_request(
env: soroban_sdk::Env,
creator: soroban_sdk::Address,
request_id: u64,
) -> Result<(), OfferBookError>
Borrower creates a fixed-term borrow request. Auto-deploys a lending vault via the factory for this request.
fn create_request(
env: soroban_sdk::Env,
creator: soroban_sdk::Address,
principal_token: soroban_sdk::Address,
principal_amount: i128,
collateral_token: soroban_sdk::Address,
collateral_amount: i128,
interest_rate_bps: u32,
duration_seconds: u64,
collateral_policy: CollateralPolicy,
) -> Result
fn get_next_request_id(env: soroban_sdk::Env) -> u64
fn is_whitelisted_token(env: soroban_sdk::Env, token: soroban_sdk::Address) -> bool
fn add_whitelisted_token(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
token: soroban_sdk::Address,
) -> Result<(), ProtocolError>
fn get_whitelisted_tokens(
env: soroban_sdk::Env,
) -> soroban_sdk::Vec
fn remove_whitelisted_token(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
token: soroban_sdk::Address,
) -> Result<(), ProtocolError>