fn swap(
env: soroban_sdk::Env,
user: soroban_sdk::Address,
token_in: soroban_sdk::Address,
token_out: soroban_sdk::Address,
amount_in: i128,
min_out: i128,
) -> i128
fn create_pool(
env: soroban_sdk::Env,
token_a: soroban_sdk::Address,
token_b: soroban_sdk::Address,
fee_rate: u32,
)
fn get_reserves(
env: soroban_sdk::Env,
token_a: soroban_sdk::Address,
token_b: soroban_sdk::Address,
) -> (i128, i128)
fn add_liquidity(
env: soroban_sdk::Env,
provider: soroban_sdk::Address,
token_a: soroban_sdk::Address,
token_b: soroban_sdk::Address,
amount_a: i128,
amount_b: i128,
) -> i128
fn get_swap_output(
env: soroban_sdk::Env,
token_in: soroban_sdk::Address,
token_out: soroban_sdk::Address,
amount_in: i128,
) -> i128
fn remove_liquidity(
env: soroban_sdk::Env,
provider: soroban_sdk::Address,
token_a: soroban_sdk::Address,
token_b: soroban_sdk::Address,
lp_amount: i128,
) -> (i128, i128)