Module-level declarations

Types

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
object state
Link copied to clipboard
entity token
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
struct token_data
Link copied to clipboard

Properties

Link copied to clipboard
val pool_account_type: text = "TOKEN_CHAIN_POOL"
Link copied to clipboard
val token_chain_account_creation_op_name: text = "create_token_chain_account"
Link copied to clipboard
val token_chain_governance_account_type: text = "TOKEN_CHAIN_GOVERNANCE"
Link copied to clipboard
val token_chain_governance_voter_set: text = "Token chain governance"

Functions

Link copied to clipboard
function apply_ras_iccf_action(account: account, strategy_params_gtv: gtv)
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
@extend(strategy) function (): map<text, _strategy>
Link copied to clipboard
@extend(auth_handler) function (): map<text, _auth_handler>
Link copied to clipboard
Link copied to clipboard
@extend(auth_handler) function (): map<text, _auth_handler>
Link copied to clipboard
@extend(auth_handler) function (): map<text, _auth_handler>
Link copied to clipboard
@extend(auth_handler) function (): map<text, _auth_handler>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
@extend(auth_handler) function (): map<text, _auth_handler>
Link copied to clipboard
@extend(auth_handler) function (): map<text, _auth_handler>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
function get_asset(): asset
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
@extend(receive_icmf_message) function icmf_message_receive(sender: byte_array, topic: text, body: gtv)
Link copied to clipboard
function refund_proposal(account: account, amount: integer)
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
function require_token(asset: asset): token
Link copied to clipboard
function validate_tc_proposal(proposal_details: pending_tc_constants)

Queries

Link copied to clipboard
Link copied to clipboard

Return details of a pending constants proposal.

Link copied to clipboard
query get_token_chain_constants(): (listing_fee: integer, bridge_fee: integer)
Link copied to clipboard
Link copied to clipboard

Operations

Link copied to clipboard
operation init_token_chain()

Initializes the token chain

Link copied to clipboard
operation mint_token(asset_id: byte_array, amount: big_integer)

Mints new tokens to account. Must be allowed by the token minting policy.

Link copied to clipboard
operation propose_constants(listing_fee: integer?, bridge_fee: integer?)

Propose a change Token chain values such as fees.

Link copied to clipboard
operation propose_token(name: text, symbol: text, decimals: integer, icon: text, minting_policy: list<minting_policy>, account_creation_brids: list<byte_array>)

Anyone can propose a new token on token chain. The listing fee will be deducted upon proposing the new token and refunded in case it is not accepted.

Link copied to clipboard
operation propose_token_bridge(asset_id: byte_array, bridge_configurations: list<bridge_configuration>)

Token owner can propose bridge(s). When approved they will be added automatically to the token chain EVM event receiver and hbridge bridges.

Link copied to clipboard
operation ras_token_iccf(transaction: gtx_transaction, asset_id: byte_array)

Account creation strategy that utilizes ICCF to authorize account creation. Each token owner can register a list of authorized chains that can create new accounts on its behalf. The account creation fee will be subtracted from the token owner account which is acting as a pool.

The account creation requires a transaction that includes an operation with the following signature:

create_token_chain_account(main: ft4.accounts.auth_descriptor, disposable: ft4.accounts.auth_descriptor?, additional args...)

'disposable' can be omitted as argument in case no additional args are necessary.

Link copied to clipboard
operation remove_token_bridge(asset_id: byte_array, bridges: list<network_bridge>)

Token owner can remove bridge(s). It will automatically remove the bridge contract from the token chain EVM event receiver.

Link copied to clipboard
operation revoke_token_bridge_proposal(proposal_id: rowid)

Revokes a token bridge proposal

Link copied to clipboard
operation revoke_token_proposal(proposal_id: rowid)

Revokes a token proposal