@bsv/sdk 1.6.9 → 1.6.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (647) hide show
  1. package/README.md +9 -4
  2. package/dist/cjs/package.json +4 -2
  3. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  4. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  5. package/dist/types/tsconfig.types.tsbuildinfo +1 -1
  6. package/docs/concepts/beef.md +84 -0
  7. package/docs/concepts/chain-tracking.md +122 -0
  8. package/docs/concepts/decentralized-identity.md +184 -0
  9. package/docs/concepts/fees.md +217 -0
  10. package/docs/concepts/identity-certificates.md +255 -0
  11. package/docs/concepts/index.md +62 -0
  12. package/docs/concepts/key-management.md +176 -0
  13. package/docs/concepts/script-templates.md +163 -0
  14. package/docs/concepts/sdk-philosophy.md +72 -0
  15. package/docs/concepts/signatures.md +179 -0
  16. package/docs/concepts/spv-verification.md +106 -0
  17. package/docs/concepts/transaction-encoding.md +148 -0
  18. package/docs/concepts/transaction-structure.md +63 -0
  19. package/docs/concepts/trust-model.md +123 -0
  20. package/docs/concepts/verification.md +219 -0
  21. package/docs/concepts/wallet-integration.md +95 -0
  22. package/docs/guides/direct-transaction-creation.md +137 -0
  23. package/docs/guides/http-client-configuration.md +414 -0
  24. package/docs/guides/index.md +30 -0
  25. package/docs/guides/transaction-signing-methods.md +268 -0
  26. package/docs/index.md +74 -0
  27. package/docs/reference/arc-config.md +698 -0
  28. package/docs/reference/brc-100.md +33 -0
  29. package/docs/reference/configuration.md +829 -0
  30. package/docs/reference/debugging.md +700 -0
  31. package/docs/reference/errors.md +547 -0
  32. package/docs/reference/index.md +98 -0
  33. package/docs/reference/network-config.md +914 -0
  34. package/docs/reference/op-codes.md +306 -0
  35. package/docs/reference/transaction-signatures.md +94 -0
  36. package/docs/requirements.txt +3 -0
  37. package/docs/tutorials/advanced-transaction.md +575 -0
  38. package/docs/tutorials/aes-encryption.md +947 -0
  39. package/docs/tutorials/authfetch-tutorial.md +957 -0
  40. package/docs/tutorials/ecdh-key-exchange.md +547 -0
  41. package/docs/tutorials/elliptic-curve-fundamentals.md +603 -0
  42. package/docs/tutorials/error-handling.md +1215 -0
  43. package/docs/tutorials/first-transaction-low-level.md +204 -0
  44. package/docs/tutorials/first-transaction.md +278 -0
  45. package/docs/tutorials/hashes-and-hmacs.md +814 -0
  46. package/docs/tutorials/identity-management.md +702 -0
  47. package/docs/tutorials/index.md +182 -0
  48. package/docs/tutorials/key-management.md +536 -0
  49. package/docs/tutorials/protowallet-development.md +716 -0
  50. package/docs/tutorials/script-construction.md +690 -0
  51. package/docs/tutorials/spv-merkle-proofs.md +682 -0
  52. package/docs/tutorials/testnet-transactions-low-level.md +352 -0
  53. package/docs/tutorials/transaction-broadcasting.md +535 -0
  54. package/docs/tutorials/transaction-types.md +419 -0
  55. package/docs/tutorials/type-42.md +582 -0
  56. package/docs/tutorials/uhrp-storage.md +579 -0
  57. package/package.json +4 -2
  58. package/dist/cjs/src/auth/__tests/Peer.test.js +0 -446
  59. package/dist/cjs/src/auth/__tests/Peer.test.js.map +0 -1
  60. package/dist/cjs/src/auth/__tests/SessionManager.test.js +0 -69
  61. package/dist/cjs/src/auth/__tests/SessionManager.test.js.map +0 -1
  62. package/dist/cjs/src/auth/certificates/__tests/Certificate.test.js +0 -182
  63. package/dist/cjs/src/auth/certificates/__tests/Certificate.test.js.map +0 -1
  64. package/dist/cjs/src/auth/certificates/__tests/MasterCertificate.test.js +0 -184
  65. package/dist/cjs/src/auth/certificates/__tests/MasterCertificate.test.js.map +0 -1
  66. package/dist/cjs/src/auth/certificates/__tests/VerifiableCertificate.test.js +0 -75
  67. package/dist/cjs/src/auth/certificates/__tests/VerifiableCertificate.test.js.map +0 -1
  68. package/dist/cjs/src/auth/utils/__tests/cryptononce.test.js +0 -101
  69. package/dist/cjs/src/auth/utils/__tests/cryptononce.test.js.map +0 -1
  70. package/dist/cjs/src/auth/utils/__tests/getVerifiableCertificates.test.js +0 -106
  71. package/dist/cjs/src/auth/utils/__tests/getVerifiableCertificates.test.js.map +0 -1
  72. package/dist/cjs/src/auth/utils/__tests/validateCertificates.test.js +0 -111
  73. package/dist/cjs/src/auth/utils/__tests/validateCertificates.test.js.map +0 -1
  74. package/dist/cjs/src/auth/utils/certificateHelpers.js +0 -51
  75. package/dist/cjs/src/auth/utils/certificateHelpers.js.map +0 -1
  76. package/dist/cjs/src/compat/__tests/BSM.test.js +0 -69
  77. package/dist/cjs/src/compat/__tests/BSM.test.js.map +0 -1
  78. package/dist/cjs/src/compat/__tests/ECIES.test.js +0 -115
  79. package/dist/cjs/src/compat/__tests/ECIES.test.js.map +0 -1
  80. package/dist/cjs/src/compat/__tests/HD.test.js +0 -336
  81. package/dist/cjs/src/compat/__tests/HD.test.js.map +0 -1
  82. package/dist/cjs/src/compat/__tests/Mnemonic.test.js +0 -150
  83. package/dist/cjs/src/compat/__tests/Mnemonic.test.js.map +0 -1
  84. package/dist/cjs/src/compat/__tests/Mnemonic.vectors.js +0 -175
  85. package/dist/cjs/src/compat/__tests/Mnemonic.vectors.js.map +0 -1
  86. package/dist/cjs/src/messages/__tests/EncryptedMessage.test.js +0 -57
  87. package/dist/cjs/src/messages/__tests/EncryptedMessage.test.js.map +0 -1
  88. package/dist/cjs/src/messages/__tests/SignedMessage.test.js +0 -52
  89. package/dist/cjs/src/messages/__tests/SignedMessage.test.js.map +0 -1
  90. package/dist/cjs/src/overlay-tools/__tests/LookupResolver.test.js +0 -1471
  91. package/dist/cjs/src/overlay-tools/__tests/LookupResolver.test.js.map +0 -1
  92. package/dist/cjs/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js +0 -78
  93. package/dist/cjs/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js.map +0 -1
  94. package/dist/cjs/src/overlay-tools/__tests/SHIPBroadcaster.test.js +0 -933
  95. package/dist/cjs/src/overlay-tools/__tests/SHIPBroadcaster.test.js.map +0 -1
  96. package/dist/cjs/src/primitives/__tests/AESGCM.test.js +0 -248
  97. package/dist/cjs/src/primitives/__tests/AESGCM.test.js.map +0 -1
  98. package/dist/cjs/src/primitives/__tests/BRC42.private.vectors.js +0 -36
  99. package/dist/cjs/src/primitives/__tests/BRC42.private.vectors.js.map +0 -1
  100. package/dist/cjs/src/primitives/__tests/BRC42.public.vectors.js +0 -36
  101. package/dist/cjs/src/primitives/__tests/BRC42.public.vectors.js.map +0 -1
  102. package/dist/cjs/src/primitives/__tests/BigNumber.arithmatic.test.js +0 -501
  103. package/dist/cjs/src/primitives/__tests/BigNumber.arithmatic.test.js.map +0 -1
  104. package/dist/cjs/src/primitives/__tests/BigNumber.binary.test.js +0 -185
  105. package/dist/cjs/src/primitives/__tests/BigNumber.binary.test.js.map +0 -1
  106. package/dist/cjs/src/primitives/__tests/BigNumber.constructor.test.js +0 -149
  107. package/dist/cjs/src/primitives/__tests/BigNumber.constructor.test.js.map +0 -1
  108. package/dist/cjs/src/primitives/__tests/BigNumber.dhGroup.test.js +0 -23
  109. package/dist/cjs/src/primitives/__tests/BigNumber.dhGroup.test.js.map +0 -1
  110. package/dist/cjs/src/primitives/__tests/BigNumber.fixtures.js +0 -268
  111. package/dist/cjs/src/primitives/__tests/BigNumber.fixtures.js.map +0 -1
  112. package/dist/cjs/src/primitives/__tests/BigNumber.serializers.test.js +0 -147
  113. package/dist/cjs/src/primitives/__tests/BigNumber.serializers.test.js.map +0 -1
  114. package/dist/cjs/src/primitives/__tests/BigNumber.utils.test.js +0 -322
  115. package/dist/cjs/src/primitives/__tests/BigNumber.utils.test.js.map +0 -1
  116. package/dist/cjs/src/primitives/__tests/Curve.unit.test.js +0 -145
  117. package/dist/cjs/src/primitives/__tests/Curve.unit.test.js.map +0 -1
  118. package/dist/cjs/src/primitives/__tests/DRBG.test.js +0 -22
  119. package/dist/cjs/src/primitives/__tests/DRBG.test.js.map +0 -1
  120. package/dist/cjs/src/primitives/__tests/DRBG.vectors.js +0 -170
  121. package/dist/cjs/src/primitives/__tests/DRBG.vectors.js.map +0 -1
  122. package/dist/cjs/src/primitives/__tests/ECDH.test.js +0 -34
  123. package/dist/cjs/src/primitives/__tests/ECDH.test.js.map +0 -1
  124. package/dist/cjs/src/primitives/__tests/ECDSA.test.js +0 -89
  125. package/dist/cjs/src/primitives/__tests/ECDSA.test.js.map +0 -1
  126. package/dist/cjs/src/primitives/__tests/HMAC.test.js +0 -60
  127. package/dist/cjs/src/primitives/__tests/HMAC.test.js.map +0 -1
  128. package/dist/cjs/src/primitives/__tests/Hash.test.js +0 -159
  129. package/dist/cjs/src/primitives/__tests/Hash.test.js.map +0 -1
  130. package/dist/cjs/src/primitives/__tests/PBKDF2.vectors.js +0 -122
  131. package/dist/cjs/src/primitives/__tests/PBKDF2.vectors.js.map +0 -1
  132. package/dist/cjs/src/primitives/__tests/PrivateKey.split.test.js +0 -105
  133. package/dist/cjs/src/primitives/__tests/PrivateKey.split.test.js.map +0 -1
  134. package/dist/cjs/src/primitives/__tests/PrivateKey.test.js +0 -90
  135. package/dist/cjs/src/primitives/__tests/PrivateKey.test.js.map +0 -1
  136. package/dist/cjs/src/primitives/__tests/PublicKey.test.js +0 -83
  137. package/dist/cjs/src/primitives/__tests/PublicKey.test.js.map +0 -1
  138. package/dist/cjs/src/primitives/__tests/Random.test.js +0 -19
  139. package/dist/cjs/src/primitives/__tests/Random.test.js.map +0 -1
  140. package/dist/cjs/src/primitives/__tests/Reader.test.js +0 -282
  141. package/dist/cjs/src/primitives/__tests/Reader.test.js.map +0 -1
  142. package/dist/cjs/src/primitives/__tests/ReductionContext.test.js +0 -224
  143. package/dist/cjs/src/primitives/__tests/ReductionContext.test.js.map +0 -1
  144. package/dist/cjs/src/primitives/__tests/Schnorr.test.js +0 -213
  145. package/dist/cjs/src/primitives/__tests/Schnorr.test.js.map +0 -1
  146. package/dist/cjs/src/primitives/__tests/SymmetricKey.test.js +0 -51
  147. package/dist/cjs/src/primitives/__tests/SymmetricKey.test.js.map +0 -1
  148. package/dist/cjs/src/primitives/__tests/SymmetricKey.vectors.js +0 -43
  149. package/dist/cjs/src/primitives/__tests/SymmetricKey.vectors.js.map +0 -1
  150. package/dist/cjs/src/primitives/__tests/Writer.test.js +0 -176
  151. package/dist/cjs/src/primitives/__tests/Writer.test.js.map +0 -1
  152. package/dist/cjs/src/primitives/__tests/bug-31.test.js +0 -32
  153. package/dist/cjs/src/primitives/__tests/bug-31.test.js.map +0 -1
  154. package/dist/cjs/src/primitives/__tests/sighash.vectors.js +0 -3506
  155. package/dist/cjs/src/primitives/__tests/sighash.vectors.js.map +0 -1
  156. package/dist/cjs/src/primitives/__tests/utils.test.js +0 -110
  157. package/dist/cjs/src/primitives/__tests/utils.test.js.map +0 -1
  158. package/dist/cjs/src/script/__tests/Script.test.js +0 -347
  159. package/dist/cjs/src/script/__tests/Script.test.js.map +0 -1
  160. package/dist/cjs/src/script/__tests/Spend.test.js +0 -282
  161. package/dist/cjs/src/script/__tests/Spend.test.js.map +0 -1
  162. package/dist/cjs/src/script/__tests/SpendComplex.test.js +0 -52
  163. package/dist/cjs/src/script/__tests/SpendComplex.test.js.map +0 -1
  164. package/dist/cjs/src/script/__tests/script.invalid.vectors.js +0 -2370
  165. package/dist/cjs/src/script/__tests/script.invalid.vectors.js.map +0 -1
  166. package/dist/cjs/src/script/__tests/script.valid.vectors.js +0 -1181
  167. package/dist/cjs/src/script/__tests/script.valid.vectors.js.map +0 -1
  168. package/dist/cjs/src/script/__tests/spend.valid.vectors.js +0 -2298
  169. package/dist/cjs/src/script/__tests/spend.valid.vectors.js.map +0 -1
  170. package/dist/cjs/src/script/templates/__tests/PushDrop.test.js +0 -161
  171. package/dist/cjs/src/script/templates/__tests/PushDrop.test.js.map +0 -1
  172. package/dist/cjs/src/totp/__tests/totp.test.js +0 -67
  173. package/dist/cjs/src/totp/__tests/totp.test.js.map +0 -1
  174. package/dist/cjs/src/transaction/__tests/Beef.test.js +0 -393
  175. package/dist/cjs/src/transaction/__tests/Beef.test.js.map +0 -1
  176. package/dist/cjs/src/transaction/__tests/MerklePath.test.js +0 -209
  177. package/dist/cjs/src/transaction/__tests/MerklePath.test.js.map +0 -1
  178. package/dist/cjs/src/transaction/__tests/Transaction.benchmarks.test.js +0 -219
  179. package/dist/cjs/src/transaction/__tests/Transaction.benchmarks.test.js.map +0 -1
  180. package/dist/cjs/src/transaction/__tests/Transaction.test.js +0 -1073
  181. package/dist/cjs/src/transaction/__tests/Transaction.test.js.map +0 -1
  182. package/dist/cjs/src/transaction/__tests/bigtx.vectors.js +0 -7
  183. package/dist/cjs/src/transaction/__tests/bigtx.vectors.js.map +0 -1
  184. package/dist/cjs/src/transaction/__tests/bump.invalid.vectors.js +0 -11
  185. package/dist/cjs/src/transaction/__tests/bump.invalid.vectors.js.map +0 -1
  186. package/dist/cjs/src/transaction/__tests/bump.valid.vectors.js +0 -7
  187. package/dist/cjs/src/transaction/__tests/bump.valid.vectors.js.map +0 -1
  188. package/dist/cjs/src/transaction/__tests/tx.invalid.vectors.js +0 -230
  189. package/dist/cjs/src/transaction/__tests/tx.invalid.vectors.js.map +0 -1
  190. package/dist/cjs/src/transaction/__tests/tx.valid.vectors.js +0 -296
  191. package/dist/cjs/src/transaction/__tests/tx.valid.vectors.js.map +0 -1
  192. package/dist/cjs/src/transaction/broadcasters/__tests/ARC.test.js +0 -246
  193. package/dist/cjs/src/transaction/broadcasters/__tests/ARC.test.js.map +0 -1
  194. package/dist/cjs/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js +0 -148
  195. package/dist/cjs/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js.map +0 -1
  196. package/dist/cjs/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js +0 -155
  197. package/dist/cjs/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js.map +0 -1
  198. package/dist/cjs/src/wallet/ScriptTemplateSABPPP.js +0 -39
  199. package/dist/cjs/src/wallet/ScriptTemplateSABPPP.js.map +0 -1
  200. package/dist/cjs/src/wallet/WalletSigner.js +0 -260
  201. package/dist/cjs/src/wallet/WalletSigner.js.map +0 -1
  202. package/dist/cjs/src/wallet/__tests/CachedKeyDeriver.test.js +0 -269
  203. package/dist/cjs/src/wallet/__tests/CachedKeyDeriver.test.js.map +0 -1
  204. package/dist/cjs/src/wallet/__tests/KeyDeriver.test.js +0 -114
  205. package/dist/cjs/src/wallet/__tests/KeyDeriver.test.js.map +0 -1
  206. package/dist/cjs/src/wallet/__tests/ProtoWallet.test.js +0 -475
  207. package/dist/cjs/src/wallet/__tests/ProtoWallet.test.js.map +0 -1
  208. package/dist/cjs/src/wallet/createActionSdk.js +0 -230
  209. package/dist/cjs/src/wallet/createActionSdk.js.map +0 -1
  210. package/dist/cjs/src/wallet/sdk/CachedKeyDeriver.js +0 -174
  211. package/dist/cjs/src/wallet/sdk/CachedKeyDeriver.js.map +0 -1
  212. package/dist/cjs/src/wallet/sdk/CertOps.js +0 -181
  213. package/dist/cjs/src/wallet/sdk/CertOps.js.map +0 -1
  214. package/dist/cjs/src/wallet/sdk/Certificate.js +0 -162
  215. package/dist/cjs/src/wallet/sdk/Certificate.js.map +0 -1
  216. package/dist/cjs/src/wallet/sdk/KeyDeriver.js +0 -176
  217. package/dist/cjs/src/wallet/sdk/KeyDeriver.js.map +0 -1
  218. package/dist/cjs/src/wallet/sdk/ProtoWallet.js +0 -75
  219. package/dist/cjs/src/wallet/sdk/ProtoWallet.js.map +0 -1
  220. package/dist/cjs/src/wallet/sdk/StorageSyncReader.js +0 -3
  221. package/dist/cjs/src/wallet/sdk/StorageSyncReader.js.map +0 -1
  222. package/dist/cjs/src/wallet/sdk/WERR_errors.js +0 -107
  223. package/dist/cjs/src/wallet/sdk/WERR_errors.js.map +0 -1
  224. package/dist/cjs/src/wallet/sdk/Wallet.interfaces.js +0 -3
  225. package/dist/cjs/src/wallet/sdk/Wallet.interfaces.js.map +0 -1
  226. package/dist/cjs/src/wallet/sdk/WalletCrypto.js +0 -171
  227. package/dist/cjs/src/wallet/sdk/WalletCrypto.js.map +0 -1
  228. package/dist/cjs/src/wallet/sdk/WalletError.js +0 -103
  229. package/dist/cjs/src/wallet/sdk/WalletError.js.map +0 -1
  230. package/dist/cjs/src/wallet/sdk/WalletServices.interfaces.js +0 -3
  231. package/dist/cjs/src/wallet/sdk/WalletServices.interfaces.js.map +0 -1
  232. package/dist/cjs/src/wallet/sdk/WalletSigner.interfaces.js +0 -3
  233. package/dist/cjs/src/wallet/sdk/WalletSigner.interfaces.js.map +0 -1
  234. package/dist/cjs/src/wallet/sdk/WalletStorage.interfaces.js +0 -3
  235. package/dist/cjs/src/wallet/sdk/WalletStorage.interfaces.js.map +0 -1
  236. package/dist/cjs/src/wallet/sdk/index.js +0 -31
  237. package/dist/cjs/src/wallet/sdk/index.js.map +0 -1
  238. package/dist/cjs/src/wallet/sdk/types.js +0 -11
  239. package/dist/cjs/src/wallet/sdk/types.js.map +0 -1
  240. package/dist/cjs/src/wallet/sdk/validationHelpers.js +0 -601
  241. package/dist/cjs/src/wallet/sdk/validationHelpers.js.map +0 -1
  242. package/dist/cjs/src/wallet/substrates/__tests/WalletWire.integration.test.js +0 -1962
  243. package/dist/cjs/src/wallet/substrates/__tests/WalletWire.integration.test.js.map +0 -1
  244. package/dist/cjs/src/wallet/substrates/__tests/XDM.test.js +0 -579
  245. package/dist/cjs/src/wallet/substrates/__tests/XDM.test.js.map +0 -1
  246. package/dist/cjs/src/wallet/utilityHelpers.js +0 -305
  247. package/dist/cjs/src/wallet/utilityHelpers.js.map +0 -1
  248. package/dist/cjs/src/wallet/validationHelpers.js +0 -601
  249. package/dist/cjs/src/wallet/validationHelpers.js.map +0 -1
  250. package/dist/esm/src/auth/__tests/Peer.test.js +0 -448
  251. package/dist/esm/src/auth/__tests/Peer.test.js.map +0 -1
  252. package/dist/esm/src/auth/__tests/SessionManager.test.js +0 -69
  253. package/dist/esm/src/auth/__tests/SessionManager.test.js.map +0 -1
  254. package/dist/esm/src/auth/certificates/__tests/Certificate.test.js +0 -182
  255. package/dist/esm/src/auth/certificates/__tests/Certificate.test.js.map +0 -1
  256. package/dist/esm/src/auth/certificates/__tests/MasterCertificate.test.js +0 -184
  257. package/dist/esm/src/auth/certificates/__tests/MasterCertificate.test.js.map +0 -1
  258. package/dist/esm/src/auth/certificates/__tests/VerifiableCertificate.test.js +0 -75
  259. package/dist/esm/src/auth/certificates/__tests/VerifiableCertificate.test.js.map +0 -1
  260. package/dist/esm/src/auth/utils/__tests/cryptononce.test.js +0 -101
  261. package/dist/esm/src/auth/utils/__tests/cryptononce.test.js.map +0 -1
  262. package/dist/esm/src/auth/utils/__tests/getVerifiableCertificates.test.js +0 -106
  263. package/dist/esm/src/auth/utils/__tests/getVerifiableCertificates.test.js.map +0 -1
  264. package/dist/esm/src/auth/utils/__tests/validateCertificates.test.js +0 -111
  265. package/dist/esm/src/auth/utils/__tests/validateCertificates.test.js.map +0 -1
  266. package/dist/esm/src/auth/utils/certificateHelpers.js +0 -47
  267. package/dist/esm/src/auth/utils/certificateHelpers.js.map +0 -1
  268. package/dist/esm/src/compat/__tests/BSM.test.js +0 -69
  269. package/dist/esm/src/compat/__tests/BSM.test.js.map +0 -1
  270. package/dist/esm/src/compat/__tests/ECIES.test.js +0 -115
  271. package/dist/esm/src/compat/__tests/ECIES.test.js.map +0 -1
  272. package/dist/esm/src/compat/__tests/HD.test.js +0 -336
  273. package/dist/esm/src/compat/__tests/HD.test.js.map +0 -1
  274. package/dist/esm/src/compat/__tests/Mnemonic.test.js +0 -150
  275. package/dist/esm/src/compat/__tests/Mnemonic.test.js.map +0 -1
  276. package/dist/esm/src/compat/__tests/Mnemonic.vectors.js +0 -175
  277. package/dist/esm/src/compat/__tests/Mnemonic.vectors.js.map +0 -1
  278. package/dist/esm/src/messages/__tests/EncryptedMessage.test.js +0 -57
  279. package/dist/esm/src/messages/__tests/EncryptedMessage.test.js.map +0 -1
  280. package/dist/esm/src/messages/__tests/SignedMessage.test.js +0 -52
  281. package/dist/esm/src/messages/__tests/SignedMessage.test.js.map +0 -1
  282. package/dist/esm/src/overlay-tools/__tests/LookupResolver.test.js +0 -1471
  283. package/dist/esm/src/overlay-tools/__tests/LookupResolver.test.js.map +0 -1
  284. package/dist/esm/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js +0 -78
  285. package/dist/esm/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js.map +0 -1
  286. package/dist/esm/src/overlay-tools/__tests/SHIPBroadcaster.test.js +0 -933
  287. package/dist/esm/src/overlay-tools/__tests/SHIPBroadcaster.test.js.map +0 -1
  288. package/dist/esm/src/primitives/__tests/AESGCM.test.js +0 -248
  289. package/dist/esm/src/primitives/__tests/AESGCM.test.js.map +0 -1
  290. package/dist/esm/src/primitives/__tests/BRC42.private.vectors.js +0 -36
  291. package/dist/esm/src/primitives/__tests/BRC42.private.vectors.js.map +0 -1
  292. package/dist/esm/src/primitives/__tests/BRC42.public.vectors.js +0 -36
  293. package/dist/esm/src/primitives/__tests/BRC42.public.vectors.js.map +0 -1
  294. package/dist/esm/src/primitives/__tests/BigNumber.arithmatic.test.js +0 -501
  295. package/dist/esm/src/primitives/__tests/BigNumber.arithmatic.test.js.map +0 -1
  296. package/dist/esm/src/primitives/__tests/BigNumber.binary.test.js +0 -185
  297. package/dist/esm/src/primitives/__tests/BigNumber.binary.test.js.map +0 -1
  298. package/dist/esm/src/primitives/__tests/BigNumber.constructor.test.js +0 -149
  299. package/dist/esm/src/primitives/__tests/BigNumber.constructor.test.js.map +0 -1
  300. package/dist/esm/src/primitives/__tests/BigNumber.dhGroup.test.js +0 -23
  301. package/dist/esm/src/primitives/__tests/BigNumber.dhGroup.test.js.map +0 -1
  302. package/dist/esm/src/primitives/__tests/BigNumber.fixtures.js +0 -268
  303. package/dist/esm/src/primitives/__tests/BigNumber.fixtures.js.map +0 -1
  304. package/dist/esm/src/primitives/__tests/BigNumber.serializers.test.js +0 -147
  305. package/dist/esm/src/primitives/__tests/BigNumber.serializers.test.js.map +0 -1
  306. package/dist/esm/src/primitives/__tests/BigNumber.utils.test.js +0 -322
  307. package/dist/esm/src/primitives/__tests/BigNumber.utils.test.js.map +0 -1
  308. package/dist/esm/src/primitives/__tests/Curve.unit.test.js +0 -145
  309. package/dist/esm/src/primitives/__tests/Curve.unit.test.js.map +0 -1
  310. package/dist/esm/src/primitives/__tests/DRBG.test.js +0 -22
  311. package/dist/esm/src/primitives/__tests/DRBG.test.js.map +0 -1
  312. package/dist/esm/src/primitives/__tests/DRBG.vectors.js +0 -170
  313. package/dist/esm/src/primitives/__tests/DRBG.vectors.js.map +0 -1
  314. package/dist/esm/src/primitives/__tests/ECDH.test.js +0 -34
  315. package/dist/esm/src/primitives/__tests/ECDH.test.js.map +0 -1
  316. package/dist/esm/src/primitives/__tests/ECDSA.test.js +0 -89
  317. package/dist/esm/src/primitives/__tests/ECDSA.test.js.map +0 -1
  318. package/dist/esm/src/primitives/__tests/HMAC.test.js +0 -60
  319. package/dist/esm/src/primitives/__tests/HMAC.test.js.map +0 -1
  320. package/dist/esm/src/primitives/__tests/Hash.test.js +0 -159
  321. package/dist/esm/src/primitives/__tests/Hash.test.js.map +0 -1
  322. package/dist/esm/src/primitives/__tests/PBKDF2.vectors.js +0 -122
  323. package/dist/esm/src/primitives/__tests/PBKDF2.vectors.js.map +0 -1
  324. package/dist/esm/src/primitives/__tests/PrivateKey.split.test.js +0 -105
  325. package/dist/esm/src/primitives/__tests/PrivateKey.split.test.js.map +0 -1
  326. package/dist/esm/src/primitives/__tests/PrivateKey.test.js +0 -90
  327. package/dist/esm/src/primitives/__tests/PrivateKey.test.js.map +0 -1
  328. package/dist/esm/src/primitives/__tests/PublicKey.test.js +0 -83
  329. package/dist/esm/src/primitives/__tests/PublicKey.test.js.map +0 -1
  330. package/dist/esm/src/primitives/__tests/Random.test.js +0 -19
  331. package/dist/esm/src/primitives/__tests/Random.test.js.map +0 -1
  332. package/dist/esm/src/primitives/__tests/Reader.test.js +0 -282
  333. package/dist/esm/src/primitives/__tests/Reader.test.js.map +0 -1
  334. package/dist/esm/src/primitives/__tests/ReductionContext.test.js +0 -223
  335. package/dist/esm/src/primitives/__tests/ReductionContext.test.js.map +0 -1
  336. package/dist/esm/src/primitives/__tests/Schnorr.test.js +0 -213
  337. package/dist/esm/src/primitives/__tests/Schnorr.test.js.map +0 -1
  338. package/dist/esm/src/primitives/__tests/SymmetricKey.test.js +0 -51
  339. package/dist/esm/src/primitives/__tests/SymmetricKey.test.js.map +0 -1
  340. package/dist/esm/src/primitives/__tests/SymmetricKey.vectors.js +0 -43
  341. package/dist/esm/src/primitives/__tests/SymmetricKey.vectors.js.map +0 -1
  342. package/dist/esm/src/primitives/__tests/Writer.test.js +0 -176
  343. package/dist/esm/src/primitives/__tests/Writer.test.js.map +0 -1
  344. package/dist/esm/src/primitives/__tests/bug-31.test.js +0 -32
  345. package/dist/esm/src/primitives/__tests/bug-31.test.js.map +0 -1
  346. package/dist/esm/src/primitives/__tests/sighash.vectors.js +0 -3506
  347. package/dist/esm/src/primitives/__tests/sighash.vectors.js.map +0 -1
  348. package/dist/esm/src/primitives/__tests/utils.test.js +0 -110
  349. package/dist/esm/src/primitives/__tests/utils.test.js.map +0 -1
  350. package/dist/esm/src/script/__tests/Script.test.js +0 -347
  351. package/dist/esm/src/script/__tests/Script.test.js.map +0 -1
  352. package/dist/esm/src/script/__tests/Spend.test.js +0 -282
  353. package/dist/esm/src/script/__tests/Spend.test.js.map +0 -1
  354. package/dist/esm/src/script/__tests/SpendComplex.test.js +0 -51
  355. package/dist/esm/src/script/__tests/SpendComplex.test.js.map +0 -1
  356. package/dist/esm/src/script/__tests/script.invalid.vectors.js +0 -2370
  357. package/dist/esm/src/script/__tests/script.invalid.vectors.js.map +0 -1
  358. package/dist/esm/src/script/__tests/script.valid.vectors.js +0 -1181
  359. package/dist/esm/src/script/__tests/script.valid.vectors.js.map +0 -1
  360. package/dist/esm/src/script/__tests/spend.valid.vectors.js +0 -2298
  361. package/dist/esm/src/script/__tests/spend.valid.vectors.js.map +0 -1
  362. package/dist/esm/src/script/templates/__tests/PushDrop.test.js +0 -161
  363. package/dist/esm/src/script/templates/__tests/PushDrop.test.js.map +0 -1
  364. package/dist/esm/src/totp/__tests/totp.test.js +0 -67
  365. package/dist/esm/src/totp/__tests/totp.test.js.map +0 -1
  366. package/dist/esm/src/transaction/__tests/Beef.test.js +0 -393
  367. package/dist/esm/src/transaction/__tests/Beef.test.js.map +0 -1
  368. package/dist/esm/src/transaction/__tests/MerklePath.test.js +0 -209
  369. package/dist/esm/src/transaction/__tests/MerklePath.test.js.map +0 -1
  370. package/dist/esm/src/transaction/__tests/Transaction.benchmarks.test.js +0 -219
  371. package/dist/esm/src/transaction/__tests/Transaction.benchmarks.test.js.map +0 -1
  372. package/dist/esm/src/transaction/__tests/Transaction.test.js +0 -1072
  373. package/dist/esm/src/transaction/__tests/Transaction.test.js.map +0 -1
  374. package/dist/esm/src/transaction/__tests/bigtx.vectors.js +0 -7
  375. package/dist/esm/src/transaction/__tests/bigtx.vectors.js.map +0 -1
  376. package/dist/esm/src/transaction/__tests/bump.invalid.vectors.js +0 -11
  377. package/dist/esm/src/transaction/__tests/bump.invalid.vectors.js.map +0 -1
  378. package/dist/esm/src/transaction/__tests/bump.valid.vectors.js +0 -7
  379. package/dist/esm/src/transaction/__tests/bump.valid.vectors.js.map +0 -1
  380. package/dist/esm/src/transaction/__tests/tx.invalid.vectors.js +0 -230
  381. package/dist/esm/src/transaction/__tests/tx.invalid.vectors.js.map +0 -1
  382. package/dist/esm/src/transaction/__tests/tx.valid.vectors.js +0 -296
  383. package/dist/esm/src/transaction/__tests/tx.valid.vectors.js.map +0 -1
  384. package/dist/esm/src/transaction/broadcasters/__tests/ARC.test.js +0 -246
  385. package/dist/esm/src/transaction/broadcasters/__tests/ARC.test.js.map +0 -1
  386. package/dist/esm/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js +0 -148
  387. package/dist/esm/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js.map +0 -1
  388. package/dist/esm/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js +0 -155
  389. package/dist/esm/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js.map +0 -1
  390. package/dist/esm/src/wallet/ScriptTemplateSABPPP.js +0 -37
  391. package/dist/esm/src/wallet/ScriptTemplateSABPPP.js.map +0 -1
  392. package/dist/esm/src/wallet/WalletSigner.js +0 -263
  393. package/dist/esm/src/wallet/WalletSigner.js.map +0 -1
  394. package/dist/esm/src/wallet/__tests/CachedKeyDeriver.test.js +0 -269
  395. package/dist/esm/src/wallet/__tests/CachedKeyDeriver.test.js.map +0 -1
  396. package/dist/esm/src/wallet/__tests/KeyDeriver.test.js +0 -113
  397. package/dist/esm/src/wallet/__tests/KeyDeriver.test.js.map +0 -1
  398. package/dist/esm/src/wallet/__tests/ProtoWallet.test.js +0 -475
  399. package/dist/esm/src/wallet/__tests/ProtoWallet.test.js.map +0 -1
  400. package/dist/esm/src/wallet/createActionSdk.js +0 -223
  401. package/dist/esm/src/wallet/createActionSdk.js.map +0 -1
  402. package/dist/esm/src/wallet/sdk/CachedKeyDeriver.js +0 -174
  403. package/dist/esm/src/wallet/sdk/CachedKeyDeriver.js.map +0 -1
  404. package/dist/esm/src/wallet/sdk/CertOps.js +0 -181
  405. package/dist/esm/src/wallet/sdk/CertOps.js.map +0 -1
  406. package/dist/esm/src/wallet/sdk/Certificate.js +0 -186
  407. package/dist/esm/src/wallet/sdk/Certificate.js.map +0 -1
  408. package/dist/esm/src/wallet/sdk/KeyDeriver.js +0 -174
  409. package/dist/esm/src/wallet/sdk/KeyDeriver.js.map +0 -1
  410. package/dist/esm/src/wallet/sdk/ProtoWallet.js +0 -71
  411. package/dist/esm/src/wallet/sdk/ProtoWallet.js.map +0 -1
  412. package/dist/esm/src/wallet/sdk/StorageSyncReader.js +0 -2
  413. package/dist/esm/src/wallet/sdk/StorageSyncReader.js.map +0 -1
  414. package/dist/esm/src/wallet/sdk/WERR_errors.js +0 -99
  415. package/dist/esm/src/wallet/sdk/WERR_errors.js.map +0 -1
  416. package/dist/esm/src/wallet/sdk/Wallet.interfaces.js +0 -2
  417. package/dist/esm/src/wallet/sdk/Wallet.interfaces.js.map +0 -1
  418. package/dist/esm/src/wallet/sdk/WalletCrypto.js +0 -168
  419. package/dist/esm/src/wallet/sdk/WalletCrypto.js.map +0 -1
  420. package/dist/esm/src/wallet/sdk/WalletError.js +0 -100
  421. package/dist/esm/src/wallet/sdk/WalletError.js.map +0 -1
  422. package/dist/esm/src/wallet/sdk/WalletServices.interfaces.js +0 -2
  423. package/dist/esm/src/wallet/sdk/WalletServices.interfaces.js.map +0 -1
  424. package/dist/esm/src/wallet/sdk/WalletSigner.interfaces.js +0 -2
  425. package/dist/esm/src/wallet/sdk/WalletSigner.interfaces.js.map +0 -1
  426. package/dist/esm/src/wallet/sdk/WalletStorage.interfaces.js +0 -2
  427. package/dist/esm/src/wallet/sdk/WalletStorage.interfaces.js.map +0 -1
  428. package/dist/esm/src/wallet/sdk/index.js +0 -15
  429. package/dist/esm/src/wallet/sdk/index.js.map +0 -1
  430. package/dist/esm/src/wallet/sdk/types.js +0 -8
  431. package/dist/esm/src/wallet/sdk/types.js.map +0 -1
  432. package/dist/esm/src/wallet/sdk/validationHelpers.js +0 -566
  433. package/dist/esm/src/wallet/sdk/validationHelpers.js.map +0 -1
  434. package/dist/esm/src/wallet/substrates/__tests/WalletWire.integration.test.js +0 -1962
  435. package/dist/esm/src/wallet/substrates/__tests/WalletWire.integration.test.js.map +0 -1
  436. package/dist/esm/src/wallet/substrates/__tests/XDM.test.js +0 -579
  437. package/dist/esm/src/wallet/substrates/__tests/XDM.test.js.map +0 -1
  438. package/dist/esm/src/wallet/utilityHelpers.js +0 -275
  439. package/dist/esm/src/wallet/utilityHelpers.js.map +0 -1
  440. package/dist/esm/src/wallet/validationHelpers.js +0 -566
  441. package/dist/esm/src/wallet/validationHelpers.js.map +0 -1
  442. package/dist/types/src/auth/__tests/Peer.test.d.ts +0 -2
  443. package/dist/types/src/auth/__tests/Peer.test.d.ts.map +0 -1
  444. package/dist/types/src/auth/__tests/SessionManager.test.d.ts +0 -2
  445. package/dist/types/src/auth/__tests/SessionManager.test.d.ts.map +0 -1
  446. package/dist/types/src/auth/certificates/__tests/Certificate.test.d.ts +0 -2
  447. package/dist/types/src/auth/certificates/__tests/Certificate.test.d.ts.map +0 -1
  448. package/dist/types/src/auth/certificates/__tests/MasterCertificate.test.d.ts +0 -2
  449. package/dist/types/src/auth/certificates/__tests/MasterCertificate.test.d.ts.map +0 -1
  450. package/dist/types/src/auth/certificates/__tests/VerifiableCertificate.test.d.ts +0 -2
  451. package/dist/types/src/auth/certificates/__tests/VerifiableCertificate.test.d.ts.map +0 -1
  452. package/dist/types/src/auth/utils/__tests/cryptononce.test.d.ts +0 -2
  453. package/dist/types/src/auth/utils/__tests/cryptononce.test.d.ts.map +0 -1
  454. package/dist/types/src/auth/utils/__tests/getVerifiableCertificates.test.d.ts +0 -2
  455. package/dist/types/src/auth/utils/__tests/getVerifiableCertificates.test.d.ts.map +0 -1
  456. package/dist/types/src/auth/utils/__tests/validateCertificates.test.d.ts +0 -2
  457. package/dist/types/src/auth/utils/__tests/validateCertificates.test.d.ts.map +0 -1
  458. package/dist/types/src/auth/utils/certificateHelpers.d.ts +0 -26
  459. package/dist/types/src/auth/utils/certificateHelpers.d.ts.map +0 -1
  460. package/dist/types/src/compat/__tests/BSM.test.d.ts +0 -2
  461. package/dist/types/src/compat/__tests/BSM.test.d.ts.map +0 -1
  462. package/dist/types/src/compat/__tests/ECIES.test.d.ts +0 -2
  463. package/dist/types/src/compat/__tests/ECIES.test.d.ts.map +0 -1
  464. package/dist/types/src/compat/__tests/HD.test.d.ts +0 -2
  465. package/dist/types/src/compat/__tests/HD.test.d.ts.map +0 -1
  466. package/dist/types/src/compat/__tests/Mnemonic.test.d.ts +0 -2
  467. package/dist/types/src/compat/__tests/Mnemonic.test.d.ts.map +0 -1
  468. package/dist/types/src/compat/__tests/Mnemonic.vectors.d.ts +0 -11
  469. package/dist/types/src/compat/__tests/Mnemonic.vectors.d.ts.map +0 -1
  470. package/dist/types/src/messages/__tests/EncryptedMessage.test.d.ts +0 -2
  471. package/dist/types/src/messages/__tests/EncryptedMessage.test.d.ts.map +0 -1
  472. package/dist/types/src/messages/__tests/SignedMessage.test.d.ts +0 -2
  473. package/dist/types/src/messages/__tests/SignedMessage.test.d.ts.map +0 -1
  474. package/dist/types/src/overlay-tools/__tests/LookupResolver.test.d.ts +0 -2
  475. package/dist/types/src/overlay-tools/__tests/LookupResolver.test.d.ts.map +0 -1
  476. package/dist/types/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.d.ts +0 -2
  477. package/dist/types/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.d.ts.map +0 -1
  478. package/dist/types/src/overlay-tools/__tests/SHIPBroadcaster.test.d.ts +0 -2
  479. package/dist/types/src/overlay-tools/__tests/SHIPBroadcaster.test.d.ts.map +0 -1
  480. package/dist/types/src/primitives/__tests/AESGCM.test.d.ts +0 -2
  481. package/dist/types/src/primitives/__tests/AESGCM.test.d.ts.map +0 -1
  482. package/dist/types/src/primitives/__tests/BRC42.private.vectors.d.ts +0 -8
  483. package/dist/types/src/primitives/__tests/BRC42.private.vectors.d.ts.map +0 -1
  484. package/dist/types/src/primitives/__tests/BRC42.public.vectors.d.ts +0 -8
  485. package/dist/types/src/primitives/__tests/BRC42.public.vectors.d.ts.map +0 -1
  486. package/dist/types/src/primitives/__tests/BigNumber.arithmatic.test.d.ts +0 -2
  487. package/dist/types/src/primitives/__tests/BigNumber.arithmatic.test.d.ts.map +0 -1
  488. package/dist/types/src/primitives/__tests/BigNumber.binary.test.d.ts +0 -2
  489. package/dist/types/src/primitives/__tests/BigNumber.binary.test.d.ts.map +0 -1
  490. package/dist/types/src/primitives/__tests/BigNumber.constructor.test.d.ts +0 -2
  491. package/dist/types/src/primitives/__tests/BigNumber.constructor.test.d.ts.map +0 -1
  492. package/dist/types/src/primitives/__tests/BigNumber.dhGroup.test.d.ts +0 -2
  493. package/dist/types/src/primitives/__tests/BigNumber.dhGroup.test.d.ts.map +0 -1
  494. package/dist/types/src/primitives/__tests/BigNumber.fixtures.d.ts +0 -15
  495. package/dist/types/src/primitives/__tests/BigNumber.fixtures.d.ts.map +0 -1
  496. package/dist/types/src/primitives/__tests/BigNumber.serializers.test.d.ts +0 -2
  497. package/dist/types/src/primitives/__tests/BigNumber.serializers.test.d.ts.map +0 -1
  498. package/dist/types/src/primitives/__tests/BigNumber.utils.test.d.ts +0 -2
  499. package/dist/types/src/primitives/__tests/BigNumber.utils.test.d.ts.map +0 -1
  500. package/dist/types/src/primitives/__tests/Curve.unit.test.d.ts +0 -2
  501. package/dist/types/src/primitives/__tests/Curve.unit.test.d.ts.map +0 -1
  502. package/dist/types/src/primitives/__tests/DRBG.test.d.ts +0 -2
  503. package/dist/types/src/primitives/__tests/DRBG.test.d.ts.map +0 -1
  504. package/dist/types/src/primitives/__tests/DRBG.vectors.d.ts +0 -10
  505. package/dist/types/src/primitives/__tests/DRBG.vectors.d.ts.map +0 -1
  506. package/dist/types/src/primitives/__tests/ECDH.test.d.ts +0 -2
  507. package/dist/types/src/primitives/__tests/ECDH.test.d.ts.map +0 -1
  508. package/dist/types/src/primitives/__tests/ECDSA.test.d.ts +0 -2
  509. package/dist/types/src/primitives/__tests/ECDSA.test.d.ts.map +0 -1
  510. package/dist/types/src/primitives/__tests/HMAC.test.d.ts +0 -2
  511. package/dist/types/src/primitives/__tests/HMAC.test.d.ts.map +0 -1
  512. package/dist/types/src/primitives/__tests/Hash.test.d.ts +0 -2
  513. package/dist/types/src/primitives/__tests/Hash.test.d.ts.map +0 -1
  514. package/dist/types/src/primitives/__tests/PBKDF2.vectors.d.ts +0 -68
  515. package/dist/types/src/primitives/__tests/PBKDF2.vectors.d.ts.map +0 -1
  516. package/dist/types/src/primitives/__tests/PrivateKey.split.test.d.ts +0 -2
  517. package/dist/types/src/primitives/__tests/PrivateKey.split.test.d.ts.map +0 -1
  518. package/dist/types/src/primitives/__tests/PrivateKey.test.d.ts +0 -2
  519. package/dist/types/src/primitives/__tests/PrivateKey.test.d.ts.map +0 -1
  520. package/dist/types/src/primitives/__tests/PublicKey.test.d.ts +0 -2
  521. package/dist/types/src/primitives/__tests/PublicKey.test.d.ts.map +0 -1
  522. package/dist/types/src/primitives/__tests/Random.test.d.ts +0 -2
  523. package/dist/types/src/primitives/__tests/Random.test.d.ts.map +0 -1
  524. package/dist/types/src/primitives/__tests/Reader.test.d.ts +0 -2
  525. package/dist/types/src/primitives/__tests/Reader.test.d.ts.map +0 -1
  526. package/dist/types/src/primitives/__tests/ReductionContext.test.d.ts +0 -2
  527. package/dist/types/src/primitives/__tests/ReductionContext.test.d.ts.map +0 -1
  528. package/dist/types/src/primitives/__tests/Schnorr.test.d.ts +0 -2
  529. package/dist/types/src/primitives/__tests/Schnorr.test.d.ts.map +0 -1
  530. package/dist/types/src/primitives/__tests/SymmetricKey.test.d.ts +0 -2
  531. package/dist/types/src/primitives/__tests/SymmetricKey.test.d.ts.map +0 -1
  532. package/dist/types/src/primitives/__tests/SymmetricKey.vectors.d.ts +0 -20
  533. package/dist/types/src/primitives/__tests/SymmetricKey.vectors.d.ts.map +0 -1
  534. package/dist/types/src/primitives/__tests/Writer.test.d.ts +0 -2
  535. package/dist/types/src/primitives/__tests/Writer.test.d.ts.map +0 -1
  536. package/dist/types/src/primitives/__tests/bug-31.test.d.ts +0 -2
  537. package/dist/types/src/primitives/__tests/bug-31.test.d.ts.map +0 -1
  538. package/dist/types/src/primitives/__tests/sighash.vectors.d.ts +0 -3
  539. package/dist/types/src/primitives/__tests/sighash.vectors.d.ts.map +0 -1
  540. package/dist/types/src/primitives/__tests/utils.test.d.ts +0 -2
  541. package/dist/types/src/primitives/__tests/utils.test.d.ts.map +0 -1
  542. package/dist/types/src/script/__tests/Script.test.d.ts +0 -2
  543. package/dist/types/src/script/__tests/Script.test.d.ts.map +0 -1
  544. package/dist/types/src/script/__tests/Spend.test.d.ts +0 -2
  545. package/dist/types/src/script/__tests/Spend.test.d.ts.map +0 -1
  546. package/dist/types/src/script/__tests/SpendComplex.test.d.ts +0 -2
  547. package/dist/types/src/script/__tests/SpendComplex.test.d.ts.map +0 -1
  548. package/dist/types/src/script/__tests/script.invalid.vectors.d.ts +0 -3
  549. package/dist/types/src/script/__tests/script.invalid.vectors.d.ts.map +0 -1
  550. package/dist/types/src/script/__tests/script.valid.vectors.d.ts +0 -3
  551. package/dist/types/src/script/__tests/script.valid.vectors.d.ts.map +0 -1
  552. package/dist/types/src/script/__tests/spend.valid.vectors.d.ts +0 -3
  553. package/dist/types/src/script/__tests/spend.valid.vectors.d.ts.map +0 -1
  554. package/dist/types/src/script/templates/__tests/PushDrop.test.d.ts +0 -2
  555. package/dist/types/src/script/templates/__tests/PushDrop.test.d.ts.map +0 -1
  556. package/dist/types/src/totp/__tests/totp.test.d.ts +0 -2
  557. package/dist/types/src/totp/__tests/totp.test.d.ts.map +0 -1
  558. package/dist/types/src/transaction/__tests/Beef.test.d.ts +0 -2
  559. package/dist/types/src/transaction/__tests/Beef.test.d.ts.map +0 -1
  560. package/dist/types/src/transaction/__tests/MerklePath.test.d.ts +0 -2
  561. package/dist/types/src/transaction/__tests/MerklePath.test.d.ts.map +0 -1
  562. package/dist/types/src/transaction/__tests/Transaction.benchmarks.test.d.ts +0 -2
  563. package/dist/types/src/transaction/__tests/Transaction.benchmarks.test.d.ts.map +0 -1
  564. package/dist/types/src/transaction/__tests/Transaction.test.d.ts +0 -2
  565. package/dist/types/src/transaction/__tests/Transaction.test.d.ts.map +0 -1
  566. package/dist/types/src/transaction/__tests/bigtx.vectors.d.ts +0 -6
  567. package/dist/types/src/transaction/__tests/bigtx.vectors.d.ts.map +0 -1
  568. package/dist/types/src/transaction/__tests/bump.invalid.vectors.d.ts +0 -6
  569. package/dist/types/src/transaction/__tests/bump.invalid.vectors.d.ts.map +0 -1
  570. package/dist/types/src/transaction/__tests/bump.valid.vectors.d.ts +0 -5
  571. package/dist/types/src/transaction/__tests/bump.valid.vectors.d.ts.map +0 -1
  572. package/dist/types/src/transaction/__tests/tx.invalid.vectors.d.ts +0 -3
  573. package/dist/types/src/transaction/__tests/tx.invalid.vectors.d.ts.map +0 -1
  574. package/dist/types/src/transaction/__tests/tx.valid.vectors.d.ts +0 -3
  575. package/dist/types/src/transaction/__tests/tx.valid.vectors.d.ts.map +0 -1
  576. package/dist/types/src/transaction/broadcasters/__tests/ARC.test.d.ts +0 -2
  577. package/dist/types/src/transaction/broadcasters/__tests/ARC.test.d.ts.map +0 -1
  578. package/dist/types/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.d.ts +0 -2
  579. package/dist/types/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.d.ts.map +0 -1
  580. package/dist/types/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.d.ts +0 -2
  581. package/dist/types/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.d.ts.map +0 -1
  582. package/dist/types/src/wallet/ScriptTemplateSABPPP.d.ts +0 -25
  583. package/dist/types/src/wallet/ScriptTemplateSABPPP.d.ts.map +0 -1
  584. package/dist/types/src/wallet/WalletSigner.d.ts +0 -110
  585. package/dist/types/src/wallet/WalletSigner.d.ts.map +0 -1
  586. package/dist/types/src/wallet/__tests/CachedKeyDeriver.test.d.ts +0 -2
  587. package/dist/types/src/wallet/__tests/CachedKeyDeriver.test.d.ts.map +0 -1
  588. package/dist/types/src/wallet/__tests/KeyDeriver.test.d.ts +0 -2
  589. package/dist/types/src/wallet/__tests/KeyDeriver.test.d.ts.map +0 -1
  590. package/dist/types/src/wallet/__tests/ProtoWallet.test.d.ts +0 -2
  591. package/dist/types/src/wallet/__tests/ProtoWallet.test.d.ts.map +0 -1
  592. package/dist/types/src/wallet/createActionSdk.d.ts +0 -8
  593. package/dist/types/src/wallet/createActionSdk.d.ts.map +0 -1
  594. package/dist/types/src/wallet/sdk/CachedKeyDeriver.d.ts +0 -94
  595. package/dist/types/src/wallet/sdk/CachedKeyDeriver.d.ts.map +0 -1
  596. package/dist/types/src/wallet/sdk/CertOps.d.ts +0 -63
  597. package/dist/types/src/wallet/sdk/CertOps.d.ts.map +0 -1
  598. package/dist/types/src/wallet/sdk/Certificate.d.ts +0 -77
  599. package/dist/types/src/wallet/sdk/Certificate.d.ts.map +0 -1
  600. package/dist/types/src/wallet/sdk/KeyDeriver.d.ts +0 -128
  601. package/dist/types/src/wallet/sdk/KeyDeriver.d.ts.map +0 -1
  602. package/dist/types/src/wallet/sdk/ProtoWallet.d.ts +0 -30
  603. package/dist/types/src/wallet/sdk/ProtoWallet.d.ts.map +0 -1
  604. package/dist/types/src/wallet/sdk/StorageSyncReader.d.ts +0 -102
  605. package/dist/types/src/wallet/sdk/StorageSyncReader.d.ts.map +0 -1
  606. package/dist/types/src/wallet/sdk/WERR_errors.d.ts +0 -84
  607. package/dist/types/src/wallet/sdk/WERR_errors.d.ts.map +0 -1
  608. package/dist/types/src/wallet/sdk/Wallet.interfaces.d.ts +0 -1036
  609. package/dist/types/src/wallet/sdk/Wallet.interfaces.d.ts.map +0 -1
  610. package/dist/types/src/wallet/sdk/WalletCrypto.d.ts +0 -31
  611. package/dist/types/src/wallet/sdk/WalletCrypto.d.ts.map +0 -1
  612. package/dist/types/src/wallet/sdk/WalletError.d.ts +0 -46
  613. package/dist/types/src/wallet/sdk/WalletError.d.ts.map +0 -1
  614. package/dist/types/src/wallet/sdk/WalletServices.interfaces.d.ts +0 -293
  615. package/dist/types/src/wallet/sdk/WalletServices.interfaces.d.ts.map +0 -1
  616. package/dist/types/src/wallet/sdk/WalletSigner.interfaces.d.ts +0 -48
  617. package/dist/types/src/wallet/sdk/WalletSigner.interfaces.d.ts.map +0 -1
  618. package/dist/types/src/wallet/sdk/WalletStorage.interfaces.d.ts +0 -296
  619. package/dist/types/src/wallet/sdk/WalletStorage.interfaces.d.ts.map +0 -1
  620. package/dist/types/src/wallet/sdk/index.d.ts +0 -15
  621. package/dist/types/src/wallet/sdk/index.d.ts.map +0 -1
  622. package/dist/types/src/wallet/sdk/types.d.ts +0 -56
  623. package/dist/types/src/wallet/sdk/types.d.ts.map +0 -1
  624. package/dist/types/src/wallet/sdk/validationHelpers.d.ts +0 -301
  625. package/dist/types/src/wallet/sdk/validationHelpers.d.ts.map +0 -1
  626. package/dist/types/src/wallet/substrates/__tests/WalletWire.integration.test.d.ts +0 -2
  627. package/dist/types/src/wallet/substrates/__tests/WalletWire.integration.test.d.ts.map +0 -1
  628. package/dist/types/src/wallet/substrates/__tests/XDM.test.d.ts +0 -5
  629. package/dist/types/src/wallet/substrates/__tests/XDM.test.d.ts.map +0 -1
  630. package/dist/types/src/wallet/utilityHelpers.d.ts +0 -142
  631. package/dist/types/src/wallet/utilityHelpers.d.ts.map +0 -1
  632. package/dist/types/src/wallet/validationHelpers.d.ts +0 -301
  633. package/dist/types/src/wallet/validationHelpers.d.ts.map +0 -1
  634. package/docs/README.md +0 -21
  635. /package/docs/{auth.md → reference/auth.md} +0 -0
  636. /package/docs/{compat.md → reference/compat.md} +0 -0
  637. /package/docs/{identity.md → reference/identity.md} +0 -0
  638. /package/docs/{kvstore.md → reference/kvstore.md} +0 -0
  639. /package/docs/{messages.md → reference/messages.md} +0 -0
  640. /package/docs/{overlay-tools.md → reference/overlay-tools.md} +0 -0
  641. /package/docs/{primitives.md → reference/primitives.md} +0 -0
  642. /package/docs/{registry.md → reference/registry.md} +0 -0
  643. /package/docs/{script.md → reference/script.md} +0 -0
  644. /package/docs/{storage.md → reference/storage.md} +0 -0
  645. /package/docs/{totp.md → reference/totp.md} +0 -0
  646. /package/docs/{transaction.md → reference/transaction.md} +0 -0
  647. /package/docs/{wallet.md → reference/wallet.md} +0 -0
@@ -0,0 +1,268 @@
1
+ # Transaction Signing Methods
2
+
3
+ *This is a How-To guide for different transaction signing approaches with the BSV TypeScript SDK.*
4
+
5
+ ## Overview
6
+
7
+ This guide demonstrates two different approaches to signing Bitcoin transactions with the BSV TypeScript SDK:
8
+
9
+ 1. **Using WalletClient** - A high-level approach that abstracts key management and signing details
10
+ 2. **Using Low-level APIs** - A direct approach with more control over the transaction signing process
11
+
12
+ Each method has its advantages depending on your use case. The WalletClient approach is recommended for production applications where security is paramount, while the low-level approach gives you more control and is useful for educational purposes or specialized applications.
13
+
14
+ ## Prerequisites
15
+
16
+ - Completed the [Key Management and Cryptography tutorial](../tutorials/key-management.md)
17
+ - Familiarity with Bitcoin transaction structure
18
+ - Understanding of basic cryptographic principles
19
+
20
+ ## Method 1: Transaction Signing with WalletClient
21
+
22
+ The WalletClient provides a secure, high-level interface for managing keys and signing transactions. This approach is recommended for production applications as it:
23
+
24
+ - Abstracts away complex key management
25
+ - Provides better security by isolating private keys
26
+ - Handles transaction construction and signing in a unified way
27
+
28
+ ### Example Code
29
+
30
+ ```typescript
31
+ import { WalletClient, Transaction } from '@bsv/sdk'
32
+
33
+ async function walletTransactionDemo() {
34
+ console.log('\n=== Transaction Signing with WalletClient ===')
35
+
36
+ try {
37
+ // 1. WalletClient Key Management
38
+ const wallet = new WalletClient('auto', 'localhost')
39
+ console.log('\n1. WalletClient Key Management')
40
+
41
+ // Define protocol and key identifiers for wallet operations
42
+ // Use 1 to represent medium security level
43
+ // Cast it to any to bypass strict type checking since we don't have the SecurityLevel enum
44
+ const protocolID = [1, 'example'] as any
45
+ const keyID = 'transaction-signing-key'
46
+
47
+ console.log(`Protocol ID: ${protocolID[0]}-${protocolID[1]}`)
48
+ console.log(`Key ID: ${keyID}`)
49
+
50
+ // Get a public key from the wallet
51
+ // In a real application, this would be a key securely managed by the wallet
52
+ const publicKeyResult = await wallet.getPublicKey({ protocolID, keyID })
53
+ const publicKeyHex = publicKeyResult.publicKey
54
+ console.log(`Public Key: ${publicKeyHex}`)
55
+
56
+ // 2. Creating a transaction with WalletClient
57
+ console.log('\n2. Creating a transaction with WalletClient')
58
+
59
+ // Set up payment details
60
+ const recipientAddress = '1DBz6V6CmvjZTvfjvJpfnrBk9Lf8fJ8dW8' // Example recipient
61
+ const amountSatoshis = 100
62
+
63
+ // Create a payment action using WalletClient
64
+ // This builds a complete transaction structure internally
65
+ const actionResult = await wallet.createAction({
66
+ description: `Payment to ${recipientAddress}`,
67
+ // Define outputs for the transaction
68
+ outputs: [
69
+ {
70
+ // In a real application, you would create a proper P2PKH script for the recipient
71
+ lockingScript: '76a914eb0bd5edba389198e73f8efabddfc61666969ff788ac', // Example P2PKH script
72
+ satoshis: amountSatoshis,
73
+ outputDescription: `Payment to ${recipientAddress}`
74
+ }
75
+ ],
76
+ // Set options to ensure we get a signable transaction
77
+ options: {
78
+ signAndProcess: false // This ensures we get a signable transaction back
79
+ }
80
+ })
81
+
82
+ console.log('Payment action created:')
83
+ if (actionResult.signableTransaction) {
84
+ console.log(`- Action Reference: ${actionResult.signableTransaction.reference}`)
85
+ } else {
86
+ console.log('No signable transaction returned - check wallet configuration')
87
+ return
88
+ }
89
+ console.log(`- Description: Payment to ${recipientAddress}`)
90
+ console.log(`- Amount: ${amountSatoshis} satoshis`)
91
+
92
+ // 3. Sign the transaction with WalletClient
93
+ console.log('\n3. Signing transaction with WalletClient')
94
+
95
+ // Request wallet to sign the action/transaction
96
+ const signResult = await wallet.signAction({
97
+ // Use the reference from the createAction result
98
+ reference: actionResult.signableTransaction.reference,
99
+ // The spends parameter is a map of input indexes to unlocking scripts
100
+ // For wallet-managed keys, we provide an empty map and let the wallet handle it
101
+ spends: {}
102
+ })
103
+
104
+ console.log('Transaction signed successfully!')
105
+ if (signResult.txid) {
106
+ console.log(`Transaction ID: ${signResult.txid}`)
107
+ }
108
+
109
+ // 4. Examine the transaction
110
+ console.log('\n4. Examining the transaction')
111
+
112
+ // Check if we have a transaction ID from the sign result
113
+ if (signResult.txid) {
114
+ console.log(`Transaction ID: ${signResult.txid}`)
115
+ console.log('Transaction was successfully signed and broadcast!')
116
+
117
+ // Note: In a real application, you would fetch the transaction details
118
+ // from the blockchain using the txid to examine its structure
119
+
120
+ // In a real application, you would examine the transaction structure here
121
+ console.log('\nTo examine the transaction structure, you would:')
122
+ console.log('1. Fetch the transaction from the blockchain using the txid')
123
+ console.log('2. Parse the transaction to view inputs, outputs, and scripts')
124
+ console.log('3. Verify signatures and validate the transaction')
125
+
126
+ console.log('\nExample output information you would see:')
127
+ console.log('- Input count: typically 1 or more inputs from your wallet')
128
+ console.log('- Output count: at least 2 (payment + change)')
129
+ console.log('- Input scripts: Contains signatures and public keys')
130
+ console.log('- Output scripts: Contains P2PKH or other locking scripts')
131
+ } else {
132
+ console.log('No transaction ID available - transaction may not have been broadcast')
133
+ }
134
+ } catch (error) {
135
+ console.error('Error during wallet transaction operations:', error)
136
+ }
137
+ }
138
+
139
+ // Run the demo
140
+ walletTransactionDemo().catch(console.error)
141
+ ```
142
+
143
+ ### Key Benefits of the WalletClient Approach
144
+
145
+ 1. **Security**: Private keys are managed by the wallet service, reducing exposure
146
+ 2. **Abstraction**: Complex transaction construction details are handled internally
147
+ 3. **Integration**: Designed for integration with secure key management systems
148
+ 4. **Consistency**: Provides a standardized approach to transaction creation and signing
149
+
150
+ ## Method 2: Transaction Signing with Low-level APIs
151
+
152
+ The low-level approach gives you direct control over the transaction signing process. This is useful for:
153
+
154
+ - Educational purposes to understand the underlying mechanics
155
+ - Specialized applications requiring custom transaction structures
156
+ - Situations where you need fine-grained control over the signing process
157
+
158
+ ### Example Code
159
+
160
+ ```typescript
161
+ import { PrivateKey, PublicKey, Transaction, P2PKH } from '@bsv/sdk'
162
+
163
+ async function transactionSigningDemo() {
164
+ // Generate keys for our demo
165
+ const privateKey = PrivateKey.fromRandom()
166
+ const address = privateKey.toAddress()
167
+
168
+ console.log('\n=== Keys for Transaction Signing ===')
169
+ console.log(`Private Key (WIF): ${privateKey.toWif()}`)
170
+ console.log(`Address: ${address.toString()}`)
171
+
172
+ // Create a new transaction
173
+ const tx = new Transaction()
174
+
175
+ // For demonstration, we'll add a dummy input
176
+ // In a real scenario, this would be a reference to a UTXO
177
+ // For our example, we'll create a simple transaction structure
178
+ // In a real scenario, you would use actual UTXOs
179
+
180
+ // First, create a dummy transaction that will serve as our input source
181
+ const dummyTx = new Transaction()
182
+ dummyTx.addOutput({
183
+ lockingScript: new P2PKH().lock(address),
184
+ satoshis: 100
185
+ })
186
+
187
+ // Now add an input that references our dummy transaction
188
+ tx.addInput({
189
+ sourceTransaction: dummyTx, // Reference to the dummy transaction
190
+ sourceOutputIndex: 0,
191
+ unlockingScriptTemplate: new P2PKH().unlock(privateKey)
192
+ })
193
+
194
+ // Add an output
195
+ tx.addOutput({
196
+ lockingScript: new P2PKH().lock(address),
197
+ satoshis: 100
198
+ })
199
+
200
+ console.log('\n=== Transaction Before Signing ===')
201
+ console.log(`Input Count: ${tx.inputs.length}`)
202
+ console.log(`Output Count: ${tx.outputs.length}`)
203
+ console.log(`First input has unlocking script: ${tx.inputs[0].unlockingScript ? 'Yes' : 'No'}`)
204
+ console.log(`First input has unlocking script template: ${tx.inputs[0].unlockingScriptTemplate ? 'Yes' : 'No'}`)
205
+
206
+ // Now, sign the transaction
207
+ await tx.sign()
208
+
209
+ console.log('\n=== Transaction After Signing ===')
210
+ console.log(`Transaction ID: ${Buffer.from(tx.id()).toString('hex')}`)
211
+ console.log(`First input has unlocking script: ${tx.inputs[0].unlockingScript ? 'Yes' : 'No'}`)
212
+
213
+ // Let's look at the unlocking script (scriptSig) that contains the signature
214
+ if (tx.inputs[0].unlockingScript) {
215
+ console.log(`\nUnlocking Script (ASM): ${tx.inputs[0].unlockingScript.toASM()}`)
216
+ }
217
+
218
+ // Serialize the transaction to hex
219
+ const txHex = tx.toHex()
220
+ console.log(`\nSigned Transaction (hex, first 64 chars): ${txHex.substring(0, 64)}...`)
221
+
222
+ // Verify the signature(s) in the transaction
223
+ const isValid = await tx.verify()
224
+ console.log(`\nTransaction signature verification: ${isValid ? 'Valid ✓' : 'Invalid ✗'}`)
225
+ console.log('\nNote: The verification shows as invalid because this is a simplified example.')
226
+ console.log('In real transactions, proper UTXOs and transaction validation would be required.')
227
+ }
228
+
229
+ // Run our transaction signing demo
230
+ transactionSigningDemo().catch(console.error)
231
+ ```
232
+
233
+ ### Key Benefits of the Low-level Approach
234
+
235
+ 1. **Control**: Direct control over every aspect of the transaction
236
+ 2. **Transparency**: Clear visibility into the transaction structure and signing process
237
+ 3. **Flexibility**: Ability to customize transaction construction for specialized use cases
238
+ 4. **Educational Value**: Better understanding of the underlying Bitcoin transaction mechanics
239
+
240
+ ## Choosing the Right Approach
241
+
242
+ Consider the following factors when deciding which approach to use:
243
+
244
+ | Factor | WalletClient Approach | Low-level Approach |
245
+ |--------|----------------------|-------------------|
246
+ | Security | Higher (keys managed by wallet) | Lower (direct key handling) |
247
+ | Complexity | Lower (abstracted API) | Higher (manual transaction construction) |
248
+ | Control | Limited (managed by wallet) | Complete (direct access) |
249
+ | Use Case | Production applications | Educational, specialized applications |
250
+ | Integration | Better for enterprise systems | Better for custom implementations |
251
+
252
+ ## Best Practices
253
+
254
+ Regardless of which approach you choose, follow these best practices:
255
+
256
+ 1. **Never expose private keys**: Keep private keys secure and never expose them in logs or user interfaces
257
+ 2. **Test thoroughly**: Always test transaction signing in a test environment before production
258
+ 3. **Verify signatures**: Always verify signatures after signing to ensure transaction validity
259
+ 4. **Handle errors gracefully**: Implement proper error handling for signing failures
260
+ 5. **Consider SIGHASH flags**: Use appropriate signature hash types for your use case
261
+ 6. **Document key management**: Maintain clear documentation of your key management approach
262
+
263
+ ## Related Resources
264
+
265
+ - [Key Management and Cryptography Tutorial](../tutorials/key-management.md)
266
+ - [Advanced Transaction Signing](./advanced-transaction-signing.md)
267
+ - [Transaction Signatures Reference](../reference/transaction-signatures.md)
268
+ - [Bitcoin Transaction Specification](https://reference.cash/protocol/blockchain/transaction)
package/docs/index.md ADDED
@@ -0,0 +1,74 @@
1
+ # BSV TypeScript SDK Documentation
2
+
3
+ ## SDK Overview
4
+
5
+ The BSV TypeScript SDK is designed to provide an updated and unified layer for developing scalable applications on the BSV Blockchain. It addresses the limitations of previous tools by offering a fresh, peer-to-peer approach, adhering to SPV principles, and ensuring privacy and scalability.
6
+
7
+ This documentation is organized to help you learn, solve problems, understand concepts, and find technical references.
8
+
9
+ ## Documentation Categories
10
+
11
+ ### [🚀 Tutorials](./tutorials/index.md)
12
+
13
+ Learn step-by-step with practical, guided examples:
14
+
15
+ - [Your First BSV Transaction](./tutorials/first-transaction.md)
16
+ - [Key Management and Cryptography](./tutorials/key-management.md)
17
+ - [Transaction Broadcasting and ARC](./tutorials/transaction-broadcasting.md)
18
+ - [View all tutorials →](./tutorials/index.md)
19
+
20
+ ### [🔧 How-To Guides](./guides/index.md)
21
+
22
+ Problem-oriented guides for specific tasks:
23
+
24
+ - [Creating Multi-signature Transactions](./guides/multisig-transactions.md)
25
+ - [Implementing Transaction Batching](./guides/transaction-batching.md)
26
+ - [Configuring Custom ARC Endpoints](./guides/custom-arc-endpoints.md)
27
+ - [View all guides →](./guides/index.md)
28
+
29
+ ### [📚 Reference](./reference/index.md)
30
+
31
+ Complete technical specifications and API documentation:
32
+
33
+ - [BRC-100 Wallet Interface (Swagger)](./reference/brc-100.md)
34
+ - [Primitives](./reference/primitives.md)
35
+ - [Script](./reference/script.md)
36
+ - [Transaction](./reference/transaction.md)
37
+ - [View all references →](./reference/index.md)
38
+
39
+
40
+
41
+ ### [🏗️ Concepts & Explanations](./concepts/index.md)
42
+
43
+ Understanding the architecture and design principles:
44
+
45
+ - [SDK Design Philosophy](./concepts/sdk-philosophy.md)
46
+ - [Transaction Structure](./concepts/transaction-structure.md)
47
+ - [SPV Verification](./concepts/spv-verification.md)
48
+ - [BEEF Format](./concepts/beef.md)
49
+ - [View all concepts →](./concepts/index.md)
50
+
51
+ ## Getting Started
52
+
53
+ If you're new to the BSV TypeScript SDK, we recommend starting with our [Getting Started Tutorial](./tutorials/first-transaction.md).
54
+
55
+ ## Try It Interactive
56
+
57
+ 🚀 **[Interactive BSV Coding Environment](https://fast.brc.dev/)**
58
+
59
+ Experience the BSV TypeScript SDK directly in your browser! Our interactive coding environment lets you:
60
+
61
+ - Run SDK code examples without any setup
62
+ - Experiment with transactions, keys, and scripts in real-time
63
+ - Learn by doing with immediate feedback
64
+ - Test concepts from our tutorials interactively
65
+
66
+ Perfect for getting started quickly or experimenting with new ideas.
67
+
68
+ ## Installation
69
+
70
+ To install the SDK, run:
71
+
72
+ ```bash
73
+ npm install @bsv/sdk
74
+ ```