fn init(
env: soroban_sdk::Env,
token_a: soroban_sdk::Address,
token_b: soroban_sdk::Address,
initial_a: i128,
initial_b: i128,
admin: soroban_sdk::Address,
)
fn pause(env: soroban_sdk::Env, caller: soroban_sdk::Address)
fn unpause(env: soroban_sdk::Env, caller: soroban_sdk::Address)
fn exchange(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
token_in: soroban_sdk::Address,
amount_in: i128,
min_out: i128,
) -> i128
fn get_admin(env: soroban_sdk::Env) -> soroban_sdk::Address
fn is_paused(env: soroban_sdk::Env) -> bool
fn get_token_a(env: soroban_sdk::Env) -> soroban_sdk::Address
fn get_token_b(env: soroban_sdk::Env) -> soroban_sdk::Address
fn get_balances(env: soroban_sdk::Env) -> (i128, i128)
fn add_liquidity(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
desired_a: i128,
desired_b: i128,
min_shares: i128,
) -> i128
fn get_user_shares(env: soroban_sdk::Env, user: soroban_sdk::Address) -> i128
fn get_total_shares(env: soroban_sdk::Env) -> i128
fn remove_liquidity(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
shares_to_burn: i128,
min_a: i128,
min_b: i128,
) -> (i128, i128)