API 参考
API 参考
Spark 代币发行 SDK 完整 API 参考
IssuerSparkWallet
IssuerSparkWallet
类扩展了 SparkWallet
(SparkWallet
的所有功能均可使用),并提供了在 Spark 网络上进行代币发行和管理的功能。
代币管理方法
announceTokenL1()
可能造成 L1 资金损失
同一钱包在 L1 上多次公告将导致 L1 资金损失。
只有钱包在链上确认的首次公告才会被认为有效。
检查返回的 L1 交易 ID 中的 OP_RETURN
是否包含 LRC20
前缀,以验证链上公告。
参考交易: 链接
在比特币 L1 上公告新代币。
参数:
tokenName
: 代币名称(例如:SparkCoin)tokenTicker
: 代币代码(例如:SPARKC)decimals
: 代币支持的精度(例如:BTC 为 8)maxSupply
: 此代币的最大供应量isFreezable
: 发行者是否可以冻结此代币feeRateSatsPerVb
: (默认:2)每虚拟字节的交易费用
返回: 比特币 L1 交易 ID(字符串)
getBalance()
获取代币的当前余额。
返回: 包含以下内容的对象:
balance
: 当前余额(以聪为单位)tokenBalances
: 按代币公钥映射的代币余额,包含用于显示的代币信息
mintTokens()
铸造新代币。
参数:
tokenAmount
: 要铸造的数量(例如:1000n)
返回: 交易 ID(字符串)
transferTokens()
将代币转移到另一个 Spark 地址。
参数:
tokenPublicKey
: 要转移的代币的公钥tokenAmount
: 要转移的代币数量receiverSparkAddress
: 接收者的 Spark 地址selectedOutputs
: (可选)用于转移的特定输出
返回: 交易 ID(字符串)
burnTokens()
销毁现有代币。
参数:
tokenAmount
: 要销毁的数量(例如:1000n)
返回: 交易 ID(字符串)
freezeTokens()
为特定钱包冻结发行者的代币。
参数:
sparkAddress
: 要冻结的 Spark 地址。
unfreezeTokens()
为特定钱包解冻发行者的代币。
参数:
sparkAddress
: 要解冻的 Spark 地址。
代币信息方法
getIssuerTokenBalance()
获取钱包的代币余额。
参数:
sparkAddress
: (可选)要获取余额的钱包的 Spark 地址。如果未提供地址,函数将返回发行者钱包的代币余额。
getIssuerTokenInfo()
获取代币的详细信息。
提示:作为发行者,要获取您的代币公钥,您可以调用
对于频繁检索代币公钥,我们建议使用
getIssuerTokenInfo()
或 getIdentityPublicKey()
对于频繁检索代币公钥,我们建议使用
getIdentityPublicKey()
,因为它不涉及网络调用。代币活动方法
getIssuerTokenActivity()
获取与此发行者钱包关联的代币的活动。
参数:
pageSize
: (可选,默认:100)每页交易数量cursor
: (可选)要传入的分页游标operationTypes
: (可选)要返回的操作类型(ISSUER_ANNOUNCE
、ISSUER_MINT
、USER_TRANSFER
、ISSUER_BURN
、ISSUER_FREEZE
、ISSUER_UNFREEZE
)beforeTimestamp
: (可选)返回此日期之前的交易afterTimestamp
: (可选)返回此日期之后的交易
返回: 包含分页信息的代币交易列表
getIssuerTokenDistribution()
获取与此发行者钱包关联的代币的分发信息。
此功能目前正在开发中,将在 Spark 的未来版本中提供。
返回:
totalCirculatingSupply
: 代币的总流通供应量totalIssued
: 已发行的代币总量totalBurned
: 已销毁的代币总量numHoldingAddress
: 持有代币的地址数量numConfirmedTransactions
: 已确认交易的数量