Contract fb2290fd584838d1d00a2bc897433cd0bab8a242cfb82f679068820c778c8249

← Back to Index 📥 Download WASM

Meta

cliver 23.4.1#a152ec2488c25136808ad28277c24b3a0765ffd4
rssdkver 23.4.0#673d6c4f2368d282d25da29bda55c21b8be69ca6
rsver 1.90.0

Interface

fn upgrade(env: soroban_sdk::Env, new_wasm_hash: soroban_sdk::BytesN<32>)
fn submit_requests_batch(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    requests: soroban_sdk::Vec,
    referrer: Option,
) -> Result<(), MCError>
fn get_global_state(env: soroban_sdk::Env) -> GlobalState
fn update_market(
    env: soroban_sdk::Env,
    new_max_positions: u32,
    new_min_collateral_value_cents: i128,
) -> Result<(), MCError>
fn update_market_status(env: soroban_sdk::Env, new_status: u32) -> Result<(), MCError>
fn fund_update_market_status(
    env: soroban_sdk::Env,
    new_status: u32,
) -> Result<(), MCError>
fn initialize_pool(
    env: soroban_sdk::Env,
    token_address: soroban_sdk::Address,
    salt: Option>,
    pool_config: Option,
) -> Result
fn initialize_multiply_pair(
    env: soroban_sdk::Env,
    deposit_pool_address: soroban_sdk::Address,
    borrow_pool_address: soroban_sdk::Address,
) -> Result<(), MCError>
fn queue_in_pool_config_update(
    env: soroban_sdk::Env,
    pool_address: soroban_sdk::Address,
    new_pool_config: PoolConfig,
) -> Result<(), MCError>
fn cancel_pool_config_update(
    env: soroban_sdk::Env,
    pool_address: soroban_sdk::Address,
) -> Result<(), MCError>
fn apply_pool_config_update(
    env: soroban_sdk::Env,
    pool_address: soroban_sdk::Address,
) -> Result<(), MCError>
fn get_pool_config_queued_in_update(
    env: soroban_sdk::Env,
    pool_address: soroban_sdk::Address,
) -> Result
fn set_take_rate_fees_beneficiaries(
    env: soroban_sdk::Env,
    pool_address: soroban_sdk::Address,
    beneficiaries: soroban_sdk::Map,
) -> Result<(), MCError>
fn set_operation_fees_beneficiaries(
    env: soroban_sdk::Env,
    pool_address: soroban_sdk::Address,
    beneficiaries: soroban_sdk::Map,
) -> Result<(), MCError>
fn bootstrap_pool(
    env: soroban_sdk::Env,
    pool_address: soroban_sdk::Address,
    sponsor: soroban_sdk::Address,
    amount: i128,
    start_period: u64,
    end_period: u64,
) -> Result<(), MCError>
fn deposit(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    pool_address: soroban_sdk::Address,
    amount: i128,
    referrer: Option,
) -> Result<(), MCError>
fn deposit_earn(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    pool_address: soroban_sdk::Address,
    amount: i128,
    referrer: Option,
) -> Result<(), MCError>
fn borrow(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    pool_address: soroban_sdk::Address,
    amount: i128,
    referrer: Option,
) -> Result<(), MCError>
fn swap(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    token_in: soroban_sdk::Address,
    token_out: soroban_sdk::Address,
    amount_in: i128,
) -> Result
fn donate(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    pool_address: soroban_sdk::Address,
    amount: i128,
) -> Result<(), MCError>
fn add_collateral(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    pool_address: soroban_sdk::Address,
    amount: i128,
    referrer: Option,
) -> Result<(), MCError>
fn remove_collateral(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    pool_address: soroban_sdk::Address,
    amount: i128,
    referrer: Option,
) -> Result<(), MCError>
fn repay(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    pool_address: soroban_sdk::Address,
    amount: i128,
    referrer: Option,
) -> Result<(), MCError>
fn liquidate(
    env: soroban_sdk::Env,
    liquidator: soroban_sdk::Address,
    borrower: soroban_sdk::Address,
    borrower_obligation_seed: Option>,
    borrow_pool_address: soroban_sdk::Address,
    collateral_pool_address: soroban_sdk::Address,
    repay_amount: i128,
    min_demanded_collateral_amount: i128,
) -> Result<(), MCError>
fn withdraw(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    pool_address: soroban_sdk::Address,
    amount: i128,
    referrer: Option,
) -> Result<(), MCError>
fn simulate_withdraw(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    pool_address: soroban_sdk::Address,
    amount: i128,
    referrer: Option,
) -> Result
fn simulate_earn_withdraw(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    pool_address: soroban_sdk::Address,
    amount: i128,
    referrer: Option,
) -> Result
fn withdraw_earn(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    pool_address: soroban_sdk::Address,
    amount: i128,
    referrer: Option,
) -> Result<(), MCError>
fn flash_loan(
    env: soroban_sdk::Env,
    contract: soroban_sdk::Address,
    caller: soroban_sdk::Address,
    pool_address: soroban_sdk::Address,
    amount: i128,
) -> Result<(), MCError>
fn deposit_with_leverage(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    deposit_pool_address: soroban_sdk::Address,
    borrow_pool_address: soroban_sdk::Address,
    deposit_as_margin: bool,
    amount: i128,
    leverage_multiplier: u32,
    referrer: Option,
) -> Result<(), MCError>
fn withdraw_from_leveraged(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    deposit_pool_address: soroban_sdk::Address,
    borrow_pool_address: soroban_sdk::Address,
    amount: i128,
    referrer: Option,
) -> Result<(), MCError>
fn issue_cover_bad_debt(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
) -> Result<(), MCError>
fn issue_cover_bad_debt_pair(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    deposit_pool_address: soroban_sdk::Address,
    borrow_pool_address: soroban_sdk::Address,
) -> Result<(), MCError>
fn claim_cover_bad_debt_results(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
) -> Result<(), MCError>
fn claim_cover_bad_debt_result_pair(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    deposit_pool_address: soroban_sdk::Address,
    borrow_pool_address: soroban_sdk::Address,
) -> Result<(), MCError>
fn distribute_pool_fees(
    env: soroban_sdk::Env,
    pool_address: soroban_sdk::Address,
) -> Result<(), MCError>
fn distribute_all_pools_fees(env: soroban_sdk::Env) -> Result<(), MCError>
fn get_asset_decimals(env: soroban_sdk::Env) -> u32
fn get_oracle_price_decimals(env: soroban_sdk::Env) -> u32
fn get_pool_asset_oracle_price(
    env: soroban_sdk::Env,
    pool_address: soroban_sdk::Address,
) -> Result
fn get_user_obligation(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
) -> Result
fn refresh_obligation(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
) -> Result<(), MCError>
fn refresh_earn_obligation(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
) -> Result<(), MCError>
fn refresh_multiply_pair_obligation(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    deposit_pool_address: soroban_sdk::Address,
    borrow_pool_address: soroban_sdk::Address,
) -> Result<(), MCError>
fn refresh_pool(
    env: soroban_sdk::Env,
    pool_address: soroban_sdk::Address,
) -> Result<(), MCError>
fn get_earn_user_obligation(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
) -> Result
fn get_multiply_pair_obligation(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    deposit_pool_address: soroban_sdk::Address,
    borrow_pool_address: soroban_sdk::Address,
) -> Result
fn get_pool(
    env: soroban_sdk::Env,
    pool_address: soroban_sdk::Address,
) -> Result
fn get_all_pools(env: soroban_sdk::Env) -> soroban_sdk::Vec
fn get_market_data(env: soroban_sdk::Env) -> Result
fn get_all_obligations(env: soroban_sdk::Env) -> soroban_sdk::Vec
fn get_multiply_pair(
    env: soroban_sdk::Env,
    deposit_pool_address: soroban_sdk::Address,
    borrow_pool_address: soroban_sdk::Address,
) -> Result
fn get_all_multiply_pairs(env: soroban_sdk::Env) -> soroban_sdk::Vec
fn get_pool_data(
    env: soroban_sdk::Env,
    pool_address: soroban_sdk::Address,
) -> Result
fn set_farms_contract(
    env: soroban_sdk::Env,
    farms_contract: soroban_sdk::Address,
) -> Result<(), MCError>
fn clear_farms_contract(env: soroban_sdk::Env) -> Result<(), MCError>
fn get_farms_contract(env: soroban_sdk::Env) -> Option
fn set_pool_supply_farm(
    env: soroban_sdk::Env,
    pool_address: soroban_sdk::Address,
    farm_id: soroban_sdk::BytesN<32>,
) -> Result<(), MCError>
fn set_pool_debt_farm(
    env: soroban_sdk::Env,
    pool_address: soroban_sdk::Address,
    farm_id: soroban_sdk::BytesN<32>,
) -> Result<(), MCError>
fn clear_pool_farms(
    env: soroban_sdk::Env,
    pool_address: soroban_sdk::Address,
) -> Result<(), MCError>
fn refresh_obligation_farms(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
) -> Result<(), MCError>
fn refresh_earn_obligation_farms(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
) -> Result<(), MCError>
fn refresh_multiply_pair_farms(
    env: soroban_sdk::Env,
    user: soroban_sdk::Address,
    deposit_pool_address: soroban_sdk::Address,
    borrow_pool_address: soroban_sdk::Address,
) -> Result<(), MCError>
fn reset_storage(env: soroban_sdk::Env)
fn __constructor(
    env: soroban_sdk::Env,
    name: soroban_sdk::String,
    admin: soroban_sdk::Address,
    oracle: soroban_sdk::Address,
    insurance_fund: soroban_sdk::Address,
    deployer: soroban_sdk::Address,
    max_positions: u32,
    min_collateral_value_cents: i128,
    insolvency_ltv_bps: i128,
    update_in_queue_period: Option,
) -> Result<(), MCError>
fn update_pool_status(
    env: soroban_sdk::Env,
    pool_address: soroban_sdk::Address,
    new_status_flags: u32,
) -> Result<(), MCError>
fn propose_new_admin(
    env: soroban_sdk::Env,
    new_admin: soroban_sdk::Address,
) -> Result<(), MCError>
fn accept_proposed_admin(env: soroban_sdk::Env) -> Result<(), MCError>

Imports

WebAssembly Text (WAT) ▶