fn pause(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn deposit(
env: soroban_sdk::Env,
token: soroban_sdk::Address,
amount: u64,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn unpause(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn upgrade(
env: soroban_sdk::Env,
new_wasm_hash: soroban_sdk::BytesN<32>,
operator: soroban_sdk::Address,
)
fn has_role(
env: soroban_sdk::Env,
account: soroban_sdk::Address,
role: soroban_sdk::Symbol,
) -> Option
fn withdraw(
env: soroban_sdk::Env,
token: soroban_sdk::Address,
amount: u64,
to: soroban_sdk::Address,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn get_admin(env: soroban_sdk::Env) -> Option
fn get_proxy(env: soroban_sdk::Env) -> soroban_sdk::Address
fn is_paused(env: soroban_sdk::Env) -> bool
fn grant_role(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
account: soroban_sdk::Address,
role: soroban_sdk::Symbol,
)
fn initialize(
env: soroban_sdk::Env,
config: EscrowInitConfig,
limits: EscrowInitLimits,
) -> Result<(), AssetManagerEscrowError>
fn force_pause(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn get_adapter(
env: soroban_sdk::Env,
adapter: soroban_sdk::Address,
) -> Option
fn revoke_role(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
account: soroban_sdk::Address,
role: soroban_sdk::Symbol,
)
fn execute_swap(
env: soroban_sdk::Env,
token_in: soroban_sdk::Address,
amount_in: u64,
token_out: soroban_sdk::Address,
amount_out_min: u64,
distribution: soroban_sdk::Vec,
caller: soroban_sdk::Address,
) -> Result
fn accept_limits(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn cancel_limits(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn force_unpause(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn renounce_role(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
role: soroban_sdk::Symbol,
)
Burn USDC on Stellar and initiate cross-chain transfer via CCTPv2.
Calls TokenMessengerMinterV2::deposit_for_burn which:
Note: Stellar USDC uses 7 decimals. The TokenMessengerMinter handles the decimal conversion internally (strips the 7th decimal as "dust").
fn send_via_cctp(
env: soroban_sdk::Env,
amount: u64,
destination_domain: u32,
mint_recipient: soroban_sdk::BytesN<32>,
destination_caller: soroban_sdk::BytesN<32>,
max_fee: i128,
min_finality_threshold: u32,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn accept_adapter(
env: soroban_sdk::Env,
adapter: soroban_sdk::Address,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn accept_manager(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn cancel_manager(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn enable_adapter(
env: soroban_sdk::Env,
adapter: soroban_sdk::Address,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn get_aggregator(env: soroban_sdk::Env) -> Option
fn get_role_admin(
env: soroban_sdk::Env,
role: soroban_sdk::Symbol,
) -> Option
fn propose_limits(
env: soroban_sdk::Env,
new_processor_daily_limit: Option,
new_processor_max_per_tx: Option,
new_processor_cooldown: Option,
new_emergency_cooldown: Option,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn remove_adapter(
env: soroban_sdk::Env,
adapter: soroban_sdk::Address,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn renounce_admin(env: soroban_sdk::Env)
fn set_role_admin(
env: soroban_sdk::Env,
role: soroban_sdk::Symbol,
admin_role: soroban_sdk::Symbol,
)
fn disable_adapter(
env: soroban_sdk::Env,
adapter: soroban_sdk::Address,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn emergency_sweep(
env: soroban_sdk::Env,
amount: u64,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn execute_adapter(
env: soroban_sdk::Env,
adapter: soroban_sdk::Address,
action: u32,
params: soroban_sdk::Val,
caller: soroban_sdk::Address,
) -> Result
fn get_role_member(
env: soroban_sdk::Env,
role: soroban_sdk::Symbol,
index: u32,
) -> soroban_sdk::Address
fn is_force_paused(env: soroban_sdk::Env) -> bool
fn propose_adapter(
env: soroban_sdk::Env,
adapter: soroban_sdk::Address,
native_asset_mint: soroban_sdk::Address,
supports_pending_withdrawals: bool,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn propose_manager(
env: soroban_sdk::Env,
new_manager: soroban_sdk::Address,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn return_to_proxy(
env: soroban_sdk::Env,
amount: u64,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn accept_processor(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn cancel_processor(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn is_token_allowed(env: soroban_sdk::Env, token: soroban_sdk::Address) -> bool
fn push_and_execute(
env: soroban_sdk::Env,
adapter: soroban_sdk::Address,
token: soroban_sdk::Address,
amount: u64,
action: u32,
params: soroban_sdk::Val,
caller: soroban_sdk::Address,
) -> Result
fn accept_aggregator(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn get_adapter_count(env: soroban_sdk::Env) -> u32
fn propose_processor(
env: soroban_sdk::Env,
new_processor: soroban_sdk::Address,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn set_allowed_token(
env: soroban_sdk::Env,
token: soroban_sdk::Address,
allowed: bool,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn get_cctp_messenger(env: soroban_sdk::Env) -> Option
fn propose_aggregator(
env: soroban_sdk::Env,
new_address: soroban_sdk::Address,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn transfer_admin_role(
env: soroban_sdk::Env,
new_admin: soroban_sdk::Address,
live_until_ledger: u32,
)
fn get_cctp_destination(env: soroban_sdk::Env, domain: u32) -> Option
fn get_processor_limits(env: soroban_sdk::Env) -> (u64, u64, u64)
fn get_underlying_asset(env: soroban_sdk::Env) -> soroban_sdk::Address
fn set_cctp_destination(
env: soroban_sdk::Env,
domain: u32,
recipient: soroban_sdk::BytesN<32>,
allowed: bool,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn accept_admin_transfer(env: soroban_sdk::Env)
fn accept_cctp_messenger(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>
fn get_role_member_count(env: soroban_sdk::Env, role: soroban_sdk::Symbol) -> u32
fn propose_cctp_messenger(
env: soroban_sdk::Env,
new_address: soroban_sdk::Address,
caller: soroban_sdk::Address,
) -> Result<(), AssetManagerEscrowError>