IssuerSparkWallet
IssuerSparkWallet
类扩展了 SparkWallet
(SparkWallet
的所有功能均可使用),并提供了在 Spark 网络上进行代币发行和管理的功能。
代币管理方法
announceTokenL1()
可能造成 L1 资金损失
同一钱包在 L1 上多次公告将导致 L1 资金损失。
只有钱包在链上确认的首次公告才会被认为有效。检查返回的 L1 交易 ID 中的
参考交易: 链接
同一钱包在 L1 上多次公告将导致 L1 资金损失。
只有钱包在链上确认的首次公告才会被认为有效。检查返回的 L1 交易 ID 中的
OP_RETURN
是否包含 LRC20
前缀,以验证链上公告。参考交易: 链接
tokenName
: 代币名称(例如:SparkCoin)tokenTicker
: 代币代码(例如:SPARKC)decimals
: 代币支持的精度(例如:BTC 为 8)maxSupply
: 此代币的最大供应量isFreezable
: 发行者是否可以冻结此代币feeRateSatsPerVb
: (默认:2)每虚拟字节的交易费用
getBalance()
获取代币的当前余额。
balance
: 当前余额(以聪为单位)tokenBalances
: 按代币公钥映射的代币余额,包含用于显示的代币信息和 Bech32m 代币标识符
mintTokens()
铸造新代币。
tokenAmount
: 要铸造的数量(例如:1000n)
transferTokens()
将代币转移到另一个 Spark 地址。
tokenIdentifier
: 要转移的代币的 Bech32m 代币标识符(例如:btkn1…)tokenAmount
: 要转移的代币数量receiverSparkAddress
: 接收者的 Spark 地址selectedOutputs
: (可选)用于转移的特定输出
batchTransferTokens()
在单个交易中将代币转移给多个接收者。
tokenIdentifier
: 要转移的代币的 Bech32m 代币标识符(例如:btkn1…)transfers
: 包含接收者地址和金额的转移对象数组selectedOutputs
: (可选)用于转移的特定输出
burnTokens()
销毁现有代币。
tokenAmount
: 要销毁的数量(例如:1000n)
freezeTokens()
为特定钱包冻结发行者的代币。
sparkAddress
: 要冻结的 Spark 地址。
unfreezeTokens()
为特定钱包解冻发行者的代币。
sparkAddress
: 要解冻的 Spark 地址。
代币信息方法
getIssuerTokenBalance()
获取钱包的代币余额。
参数:
sparkAddress
: (可选)要获取余额的钱包的 Spark 地址。如果未提供地址,函数将返回发行者钱包的代币余额。
getIssuerTokenMetadata()
获取代币的元数据。
提示:作为发行者,要获取您的代币公钥,您可以调用
对于频繁检索代币公钥,我们建议使用
getIssuerTokenMetadata()
或 getIdentityPublicKey()
对于频繁检索代币公钥,我们建议使用
getIdentityPublicKey()
,因为它不涉及网络调用。getIssuerTokenIdentifier()
获取发行者代币的 Bech32m 代币标识符。
queryTokenTransactions()
从网络检索代币交易记录,具有灵活的过滤选项。
ownerPublicKeys
: (可选)用于过滤的持有者公钥数组issuerPublicKeys
: (可选)用于过滤的发行者公钥数组tokenTransactionHashes
: (可选)用于过滤的代币交易哈希数组tokenIdentifiers
: (可选)用于过滤的 Bech32m 代币标识符数组outputIds
: (可选)用于过滤的输出 ID 数组
代币活动方法
getIssuerTokenDistribution()
获取与此发行者钱包关联的代币的分发信息。
此功能目前正在开发中,将在 Spark 的未来版本中提供。
totalCirculatingSupply
: 代币的总流通供应量totalIssued
: 已发行的代币总量totalBurned
: 已销毁的代币总量numHoldingAddress
: 持有代币的地址数量numConfirmedTransactions
: 已确认交易的数量
SparkWallet
SparkWallet
类提供与 Spark 网络交互的核心钱包功能。