Skip to main content

Module bridge::treasury

Struct BridgeTreasury

public struct BridgeTreasury has store

Struct BridgeTokenMetadata

public struct BridgeTokenMetadata has copy, drop, store
Click to open
Fields
id: u8
decimal_multiplier: u64
notional_value: u64
native_token: bool

Struct ForeignTokenRegistration

public struct ForeignTokenRegistration has store
Click to open
Fields

Struct UpdateTokenPriceEvent

public struct UpdateTokenPriceEvent has copy, drop
Click to open
Fields
token_id: u8
new_price: u64

Struct NewTokenEvent

public struct NewTokenEvent has copy, drop
Click to open
Fields
token_id: u8
type_name: std::type_name::TypeName
native_token: bool
decimal_multiplier: u64
notional_value: u64

Struct TokenRegistrationEvent

public struct TokenRegistrationEvent has copy, drop
Click to open
Fields
type_name: std::type_name::TypeName
decimal: u8
native_token: bool

Constants

const EUnsupportedTokenType: u64 = 1;
const EInvalidUpgradeCap: u64 = 2;
const ETokenSupplyNonZero: u64 = 3;
const EInvalidNotionalValue: u64 = 4;

Function token_id

public fun token_id<T>(self: &bridge::treasury::BridgeTreasury): u8

Function decimal_multiplier

Function notional_value

Function register_foreign_token

Function add_new_token

public(package) fun add_new_token(self: &mut bridge::treasury::BridgeTreasury, token_name: std::ascii::String, token_id: u8, native_token: bool, notional_value: u64)

Function create

Function burn

public(package) fun burn<T>(self: &mut bridge::treasury::BridgeTreasury, token: sui::coin::Coin<T>)

Function mint

public(package) fun mint<T>(self: &mut bridge::treasury::BridgeTreasury, amount: u64, ctx: &mut sui::tx_context::TxContext): sui::coin::Coin<T>

Function update_asset_notional_price

public(package) fun update_asset_notional_price(self: &mut bridge::treasury::BridgeTreasury, token_id: u8, new_usd_price: u64)

Function get_token_metadata