fn get_pool(env: soroban_sdk::Env, token: soroban_sdk::Address) -> PoolState
fn get_claim(env: soroban_sdk::Env, position_id: u64) -> ClaimRecord
fn extend_ttl(env: soroban_sdk::Env)
fn initialize(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
treasury: soroban_sdk::Address,
)
fn pay_keeper(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
token: soroban_sdk::Address,
keeper: soroban_sdk::Address,
action: soroban_sdk::Symbol,
action_id: u64,
amount: i128,
) -> bool
fn set_partner(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
partner: soroban_sdk::Address,
approved: bool,
)
fn accept_admin(env: soroban_sdk::Env, pending_admin: soroban_sdk::Address)
fn claim_payout(
env: soroban_sdk::Env,
engine: soroban_sdk::Address,
owner: soroban_sdk::Address,
position_id: u64,
) -> i128
fn get_treasury(env: soroban_sdk::Env) -> soroban_sdk::Address
fn quote_shares(
env: soroban_sdk::Env,
token: soroban_sdk::Address,
amount: i128,
) -> i128
fn set_treasury(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
treasury: soroban_sdk::Address,
)
fn propose_admin(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
pending_admin: soroban_sdk::Address,
)
fn get_withdrawal(env: soroban_sdk::Env, request_id: u64) -> WithdrawalRequest
fn cancel_withdraw(
env: soroban_sdk::Env,
provider: soroban_sdk::Address,
request_id: u64,
)
fn deposit_reserve(
env: soroban_sdk::Env,
provider: soroban_sdk::Address,
token: soroban_sdk::Address,
amount: i128,
min_shares: i128,
) -> i128
fn fund_automation(
env: soroban_sdk::Env,
funder: soroban_sdk::Address,
token: soroban_sdk::Address,
amount: i128,
)
fn settle_position(
env: soroban_sdk::Env,
engine: soroban_sdk::Address,
owner: soroban_sdk::Address,
position_id: u64,
payout: i128,
)
fn execute_withdraw(
env: soroban_sdk::Env,
provider: soroban_sdk::Address,
request_id: u64,
min_amount: i128,
) -> i128
fn get_provider_nav(env: soroban_sdk::Env, token: soroban_sdk::Address) -> i128
fn request_withdraw(
env: soroban_sdk::Env,
provider: soroban_sdk::Address,
token: soroban_sdk::Address,
shares: i128,
) -> u64
fn configure_protocol(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
engine: soroban_sdk::Address,
oracle: soroban_sdk::Address,
)
fn get_provider_shares(
env: soroban_sdk::Env,
provider: soroban_sdk::Address,
token: soroban_sdk::Address,
) -> i128
fn get_utilization_bps(env: soroban_sdk::Env, token: soroban_sdk::Address) -> u32
fn collect_premium_from(
env: soroban_sdk::Env,
engine: soroban_sdk::Address,
user: soroban_sdk::Address,
token: soroban_sdk::Address,
risk_premium: i128,
automation_fee: i128,
position_id: u64,
partner: Option,
)
fn get_protocol_fee_bps(env: soroban_sdk::Env) -> i128
fn lock_payout_capacity(
env: soroban_sdk::Env,
engine: soroban_sdk::Address,
protected_asset: soroban_sdk::Address,
payout_token: soroban_sdk::Address,
position_id: u64,
amount: i128,
)
fn set_protocol_fee_bps(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
fee_bps: i128,
)
fn get_available_liquidity(env: soroban_sdk::Env, token: soroban_sdk::Address) -> i128
fn get_locked_for_position(env: soroban_sdk::Env, position_id: u64) -> i128
fn get_market_concentration_bps(
env: soroban_sdk::Env,
protected_asset: soroban_sdk::Address,
payout_token: soroban_sdk::Address,
) -> u32
fn get_projected_utilization_bps(
env: soroban_sdk::Env,
token: soroban_sdk::Address,
additional: i128,
) -> u32
fn get_projected_concentration_bps(
env: soroban_sdk::Env,
protected_asset: soroban_sdk::Address,
payout_token: soroban_sdk::Address,
additional: i128,
) -> u32