Search by name, SuiNS, address, digest, object ID, coin type or checkpoint.

API

agent_session

Module0xb90f…78ac
Move path
0xb205…d9b0::agent_session
Functions
3831 public, 0 entry
Structs
13
Friend modules
None
agent_session

Declarations

Rebuilt from the module interface. No verified source is published, and function bodies are only available as bytecode.

module agent_session;
struct AgentSession has key {
id: UID,
owner: address,
session_address: address,
escrow: Balance<SUI>,
spent: u64,
spend_cap: u64,
expiry_ms: u64,
revoked: bool,
lifetime_spent: u64,
lifetime_cap: u64,
version: u64,
}
struct LifetimeCapChanged has copy, drop {
session_id: ID,
old_cap: u64,
new_cap: u64,
}
struct SessionAttested has copy, drop {
session_id: ID,
session_address: address,
registry_id: ID,
}
struct SessionBuy has copy, drop {
session_id: ID,
sui_spent: u64,
spent_total: u64,
}
struct SessionBuyV2 has copy, drop {
session_id: ID,
sui_spent: u64,
spent_total: u64,
escrow_after: u64,
universal: bool,
}
struct SessionClosed has copy, drop {
session_id: ID,
refunded: u64,
}
struct SessionMigrated has copy, drop {
session_id: ID,
from_version: u64,
to_version: u64,
}
struct SessionOpened has copy, drop {
session_id: ID,
owner: address,
session_address: address,
deposit: u64,
spend_cap: u64,
expiry_ms: u64,
lifetime_cap: u64,
}
struct SessionSell has copy, drop {
session_id: ID,
sui_received: u64,
new_escrow: u64,
}
struct SessionSellV2 has copy, drop {
session_id: ID,
sui_received: u64,
spent_total: u64,
escrow_after: u64,
universal: bool,
}
struct SessionToppedUp has copy, drop {
session_id: ID,
amount: u64,
new_escrow: u64,
}
struct TradeTicket {
session_id: ID,
borrowed: u64,
kind: u8,
}
struct UniversalTradingToggled has copy, drop {
session_id: ID,
enabled: bool,
}
fun assert_can_trade(&AgentSession,&Clock)
fun assert_session_version(&AgentSession)
fun assert_spend_allowed(&AgentSession,u64)
public fun borrow_for_buy(&mut AgentSession,u64,&Clock): (Coin<SUI>, TradeTicket)
public fun borrow_tokens_for_sell<T0>(&mut AgentSession,u64,&Clock): (Coin<T0>, TradeTicket)
public fun buy_with_session<T0>(&mut AgentSession,&mut bonding_curve::Curve<T0>,u64,u64,&bonding_curve::PriceConfig,&Clock)
public fun close_session(&mut AgentSession): Coin<SUI>
fun credit_spent(&mut AgentSession,u64)
public fun current_version(): u64
fun default_lifetime_cap(u64): u64
public fun disable_universal_trading(&mut AgentSession)
public fun enable_universal_trading(&mut AgentSession)
public fun escrow_value(&AgentSession): u64
public fun expire_refund(&mut AgentSession,&Clock)
public fun expiry_ms(&AgentSession): u64
public fun is_closed(&AgentSession): bool
public fun lifetime_cap(&AgentSession): u64
public fun lifetime_spent(&AgentSession): u64
public fun migrate_session(&mut AgentSession)
public fun open_and_share(Coin<SUI>,address,u64,u64,u64,&Clock)
public fun open_and_share_attested(Coin<SUI>,address,u64,u64,u64,&enclave_registry::EnclaveRegistry,&Clock)
fun open_session(Coin<SUI>,address,u64,u64,u64,&Clock): AgentSession
public fun owner(&AgentSession): address
fun park_tokens<T0>(&mut AgentSession,Coin<T0>)
public fun parked_balance<T0>(&AgentSession): u64
public fun revoke_session(&mut AgentSession)
public fun revoked(&AgentSession): bool
public fun sell_with_session<T0>(&mut AgentSession,&mut bonding_curve::Curve<T0>,u64,u64,&Clock)
public fun session_address(&AgentSession): address
public fun set_lifetime_cap(&mut AgentSession,u64)
public fun settle_buy<T0>(&mut AgentSession,TradeTicket,Coin<SUI>,Coin<T0>)
public fun settle_sell<T0>(&mut AgentSession,TradeTicket,Coin<SUI>,Coin<T0>)
public fun spend_cap(&AgentSession): u64
public fun spent(&AgentSession): u64
public fun sweep_token<T0>(&mut AgentSession)
public fun top_up_session(&mut AgentSession,Coin<SUI>,&Clock)
public fun universal_trading_enabled(&AgentSession): bool
public fun version(&AgentSession): u64