Contract ab325aaafe8ae3e043c7a5f54d2df8dd0007ad64b8154982dcbe6d488c1e11d1

← Back to Index 📥 Download WASM

Meta

cliver 25.2.0#28484880988199233a7e8e87c97cb12dac323cb3
rssdkver 25.3.1#e50d95af029c83196dd122f0154bac3f1302394b
rsver 1.94.1

Instances

  • CADPIOJI3KJSTRDHNHPPQXV6FTM6IUHX677SCQ6NY7RYGXVI2L3YINSZ
  • CATBSCEN73MFGD4LCCC6SFJHGNEHC2QLSSXFZXFCW3NK45BBPGEYDXOC
  • CBYIJ4M2VYKRAAFPUX4IU437FFV7Z7HPPUFOBTNJRHENGFL3HHHSOVOI
  • CCMYQHC3IMROZKFD2KSW6XRQVST7OAI3OW7IQLTUFHMNTORUOKDFHEZO

Interface

fn admin(env: soroban_sdk::Env) -> soroban_sdk::Address

Upgrade contract WASM (admin only)

fn upgrade(
    env: soroban_sdk::Env,
    new_wasm_hash: soroban_sdk::BytesN<32>,
) -> Result<(), KineticRouterError>
fn version(env: soroban_sdk::Env) -> u32

Accept admin role (two-step transfer, step 2). Only the pending admin can call this to finalize the transfer.

fn accept_admin(
    env: soroban_sdk::Env,
    caller: soroban_sdk::Address,
) -> Result<(), KineticRouterError>
fn __constructor(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    base_variable_borrow_rate: u128,
    variable_rate_slope1: u128,
    variable_rate_slope2: u128,
    optimal_utilization_rate: u128,
) -> Result<(), KineticRouterError>

Propose a new admin address (two-step transfer, step 1). Only the current admin can propose a new admin. The proposed admin must call accept_admin to complete the transfer.

fn propose_admin(
    env: soroban_sdk::Env,
    caller: soroban_sdk::Address,
    pending_admin: soroban_sdk::Address,
) -> Result<(), KineticRouterError>

Get the pending admin address, if any.

fn get_pending_admin(
    env: soroban_sdk::Env,
) -> Result
fn get_params_version(
    env: soroban_sdk::Env,
    asset: soroban_sdk::Address,
) -> Result
fn get_params_metadata(
    env: soroban_sdk::Env,
    asset: soroban_sdk::Address,
) -> Result<(u64, u64), KineticRouterError>

Cancel a pending admin proposal. Only the current admin can cancel a pending proposal.

fn cancel_admin_proposal(
    env: soroban_sdk::Env,
    caller: soroban_sdk::Address,
) -> Result<(), KineticRouterError>
fn get_params_last_updated(
    env: soroban_sdk::Env,
    asset: soroban_sdk::Address,
) -> Result

Calculate interest rates with the current effective parameters.

fn calculate_interest_rates(
    env: soroban_sdk::Env,
    asset: soroban_sdk::Address,
    available_liquidity: u128,
    total_variable_debt: u128,
    reserve_factor: u128,
) -> Result
fn get_next_params_metadata(
    env: soroban_sdk::Env,
    asset: soroban_sdk::Address,
    after_version: u64,
) -> Result, KineticRouterError>
fn get_variable_rate_slope1(env: soroban_sdk::Env) -> u128
fn get_variable_rate_slope2(env: soroban_sdk::Env) -> u128
fn calculate_rates_at_version(
    env: soroban_sdk::Env,
    asset: soroban_sdk::Address,
    version: u64,
    available_liquidity: u128,
    total_variable_debt: u128,
    reserve_factor: u128,
) -> Result

Update interest rate parameters (admin only)

fn update_interest_rate_params(
    env: soroban_sdk::Env,
    caller: soroban_sdk::Address,
    base_variable_borrow_rate: u128,
    variable_rate_slope1: u128,
    variable_rate_slope2: u128,
    optimal_utilization_rate: u128,
) -> Result<(), KineticRouterError>
fn get_optimal_utilization_rate(env: soroban_sdk::Env) -> u128
fn get_base_variable_borrow_rate(env: soroban_sdk::Env) -> u128
fn get_asset_interest_rate_params(
    env: soroban_sdk::Env,
    asset: soroban_sdk::Address,
) -> Option

Set interest rate parameters for a specific asset

fn set_asset_interest_rate_params(
    env: soroban_sdk::Env,
    caller: soroban_sdk::Address,
    asset: soroban_sdk::Address,
    base_variable_borrow_rate: u128,
    variable_rate_slope1: u128,
    variable_rate_slope2: u128,
    optimal_utilization_rate: u128,
) -> Result<(), KineticRouterError>

Imports

WebAssembly Text (WAT) ▶