Token
The Token section provides a set of functions and interfaces for interacting with tokens. It includes the following:
The
ELASTIC_ADDRESS
constant string representing the substitute address for native token.
The
TokenObject
interface representing the structure of a token object. It has the following properties:chainId
: The ID of the blockchain the token is on.address
: The address of the token.decimals
: The number of decimal places the token has.symbol
: The symbol of the token.name
: The name of the token.
The
Token
class is designed to address the issues encountered in the interaction and conversion of tokens. It has the following properties and methods.Properties:
chainId
: The ID of the blockchain the token is on.address
: The address of the token.decimals
: The number of decimal places the token has.symbol
: The symbol of the token.name
: The name of the token.
Constructors:
constructor(chainId, address, decimals, symbol, name)
: Creates a newToken
instance.constructor(tokenObject)
: Creates a newToken
instance from aTokenObject
.
Static methods:
The static
isNative()
function returns true if the token is the native token.The static
isWrapped()
function returns true if the token is the wrapped native token.
Instance methods:
isNative
: Returns true if the token is the native token.isWrapped
: Returns true if the token is the wrapped native token.wrapped
: Returns the wrapped native token if the token is the native token, or returns the token itself.unwrapped
: Returns the native token if the token is the wrapped native token, or returns the token itself.elasticAddress
: Returns theELASTIC_ADDRESS
if the token is the native token, or return the token address itself.sortsBefore
: Returns true if the token sorts before the given token, based on the comparison of their addresses in lowercase.toObject
: Returns aTokenObject
representing the token class instannce.
The
TokenTypes
type represents either a token object or an instance of theToken
class.
The
TokenAmountObject
interface representing the structure of a token amount object. It has the following properties:The
token
property represents a token object orToken
class instanceThe
amount
property is a string that represents the amount of the token.
The
TokenAmountPair
type representing an array with two elements. The first element is a a token object orToken
class instance and the second element is a string representing the amount of token.
The
TokenAmount
class is designed to address the issues encountered in the interaction and conversion of token amounts. It has the following properties and methods.Properties:
token
: AToken
class instance.amount
: A string representing the amount of token.
Constructors:
constructor(token, amount?)
: Creates a newTokenAmount
instance.constructor(tokenAmountObject)
: Creates a newTokenAmount
instance from aTokenAmountObject
.constructor(tokenAmountPair)
: Creates a newTokenAmount
instance from aTokenAmountPair
.constructor(tokenAmount)
: Creates a newTokenAmount
instance from an existingTokenAmount
instance.
Instance methods:
amountWei
: Returns the amount of tokens in wei.set
: Sets the amount property.setWei
: Sets the amount property in wei.add
: Adds amount.addWei
: Adds amount in wei.sub
: Subtracts amount.subWei
: Subtracts amount in wei.isZero
: Returns true if the amount property is zero.eq
: Returns true if the amount property is equal to the given token amount.gt
: Returns true if the amount property is greater than the given token amount.gte
: Returns true if the amount property is greater than or equal to the given token amount.lt
: Returns true if the amount property is less than the given token amount.lte
: Returns true if the amount property is less than or equal to the given token amount.toObject
: Returns aTokenAmountObject
representing the token amount class instance.clone
: Returns a newTokenAmount
instance with the same token and amount as the current instance.
getNativeToken
: A function that takes in achainId
and returns a Token class instance representing the native token of the corresponding blockchain network.getWrappedNativeToken
: A function that takes in achainId
and returns a Token class instance representing the wrapped native token of the corresponding blockchain network.sortByAddress
: A function that takes in an array ofToken
,TokenObject
,TokenAmount
, orTokenAmountObject
objects, and sorts them in ascending order based on their respective addresses. The sorted array is then returned.
Last updated