fn get_pool(
env: soroban_sdk::Env,
pool_id: soroban_sdk::Bytes,
) -> Option
fn get_config(env: soroban_sdk::Env) -> Result
fn initialize(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
staking_contract: soroban_sdk::Address,
rewards_contract: soroban_sdk::Address,
treasury_address: soroban_sdk::Address,
min_liquidity: i128,
default_fee_rate: i128,
max_pools: u32,
) -> Result<(), LiquidityError>
fn toggle_pool(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
pool_id: soroban_sdk::Bytes,
active: bool,
) -> Result<(), LiquidityError>
fn register_pool(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
pool_id: soroban_sdk::Bytes,
token_a: soroban_sdk::Address,
token_b: soroban_sdk::Address,
initial_a: i128,
initial_b: i128,
fee_rate: Option,
) -> Result<(), LiquidityError>
fn get_daily_fees(env: soroban_sdk::Env, pool_id: soroban_sdk::Bytes, day: u64) -> i128
fn get_pool_count(env: soroban_sdk::Env) -> u32
fn get_user_pools(
env: soroban_sdk::Env,
user: soroban_sdk::Address,
) -> soroban_sdk::Vec
fn get_global_stats(env: soroban_sdk::Env) -> Option
fn set_emergency_pause(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
paused: bool,
) -> Result<(), LiquidityError>
fn get_user_lp_position(
env: soroban_sdk::Env,
user: soroban_sdk::Address,
pool_id: soroban_sdk::Bytes,
) -> Option
fn update_pool_fee_rate(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
pool_id: soroban_sdk::Bytes,
new_fee_rate: i128,
) -> Result<(), LiquidityError>
fn record_fees_collected(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
pool_id: soroban_sdk::Bytes,
total_fees: i128,
) -> Result<(), LiquidityError>
fn calculate_user_fee_share(
env: soroban_sdk::Env,
user: soroban_sdk::Address,
pool_id: soroban_sdk::Bytes,
) -> Result
fn record_liquidity_removal(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
user: soroban_sdk::Address,
pool_id: soroban_sdk::Bytes,
lp_tokens_burned: i128,
amount_a_returned: i128,
amount_b_returned: i128,
) -> Result<(), LiquidityError>
fn record_liquidity_addition(
env: soroban_sdk::Env,
admin: soroban_sdk::Address,
user: soroban_sdk::Address,
pool_id: soroban_sdk::Bytes,
amount_a: i128,
amount_b: i128,
lp_tokens_minted: i128,
) -> Result<(), LiquidityError>