@bitgo-beta/sdk-core 8.2.1-beta.214 → 8.2.1-beta.2140

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 (812) hide show
  1. package/dist/src/account-lib/baseCoin/baseTransaction.d.ts +0 -1
  2. package/dist/src/account-lib/baseCoin/baseTransaction.d.ts.map +1 -1
  3. package/dist/src/account-lib/baseCoin/baseTransactionBuilder.d.ts +3 -3
  4. package/dist/src/account-lib/baseCoin/baseTransactionBuilder.d.ts.map +1 -1
  5. package/dist/src/account-lib/baseCoin/baseTransactionBuilder.js +4 -3
  6. package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts +1 -0
  7. package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts.map +1 -1
  8. package/dist/src/account-lib/baseCoin/ed25519KeyPair.js +43 -31
  9. package/dist/src/account-lib/baseCoin/enum.d.ts +59 -5
  10. package/dist/src/account-lib/baseCoin/enum.d.ts.map +1 -1
  11. package/dist/src/account-lib/baseCoin/enum.js +112 -10
  12. package/dist/src/account-lib/baseCoin/errors.d.ts +3 -0
  13. package/dist/src/account-lib/baseCoin/errors.d.ts.map +1 -1
  14. package/dist/src/account-lib/baseCoin/errors.js +8 -2
  15. package/dist/src/account-lib/baseCoin/iface.d.ts +19 -35
  16. package/dist/src/account-lib/baseCoin/iface.d.ts.map +1 -1
  17. package/dist/src/account-lib/baseCoin/iface.js +26 -18
  18. package/dist/src/account-lib/baseCoin/index.d.ts +1 -1
  19. package/dist/src/account-lib/baseCoin/index.d.ts.map +1 -1
  20. package/dist/src/account-lib/baseCoin/index.js +8 -5
  21. package/dist/src/account-lib/baseCoin/messages/baseMessage.d.ts +88 -0
  22. package/dist/src/account-lib/baseCoin/messages/baseMessage.d.ts.map +1 -0
  23. package/dist/src/account-lib/baseCoin/messages/baseMessage.js +154 -0
  24. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.d.ts +67 -0
  25. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.d.ts.map +1 -0
  26. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.js +144 -0
  27. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts +33 -0
  28. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts.map +1 -0
  29. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +45 -0
  30. package/dist/src/account-lib/baseCoin/messages/iface.d.ts +164 -0
  31. package/dist/src/account-lib/baseCoin/messages/iface.d.ts.map +1 -0
  32. package/dist/src/account-lib/baseCoin/messages/iface.js +3 -0
  33. package/dist/src/account-lib/baseCoin/messages/index.d.ts +6 -0
  34. package/dist/src/account-lib/baseCoin/messages/index.d.ts.map +1 -0
  35. package/dist/src/account-lib/baseCoin/messages/index.js +22 -0
  36. package/dist/src/account-lib/baseCoin/messages/simple/index.d.ts +3 -0
  37. package/dist/src/account-lib/baseCoin/messages/simple/index.d.ts.map +1 -0
  38. package/dist/src/account-lib/baseCoin/messages/simple/index.js +19 -0
  39. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessage.d.ts +13 -0
  40. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessage.d.ts.map +1 -0
  41. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessage.js +28 -0
  42. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.d.ts +21 -0
  43. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.d.ts.map +1 -0
  44. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.js +28 -0
  45. package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.d.ts +1 -2
  46. package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.d.ts.map +1 -1
  47. package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.js +38 -26
  48. package/dist/src/account-lib/index.d.ts +0 -1
  49. package/dist/src/account-lib/index.d.ts.map +1 -1
  50. package/dist/src/account-lib/index.js +23 -10
  51. package/dist/src/account-lib/mpc/index.d.ts +1 -1
  52. package/dist/src/account-lib/mpc/index.d.ts.map +1 -1
  53. package/dist/src/account-lib/mpc/index.js +6 -2
  54. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +2 -3
  55. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -1
  56. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.js +376 -354
  57. package/dist/src/account-lib/mpc/tss/ecdsa/index.js +23 -9
  58. package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts +2 -2
  59. package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts.map +1 -1
  60. package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.js +3 -3
  61. package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts +46 -53
  62. package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts.map +1 -1
  63. package/dist/src/account-lib/mpc/tss/ecdsa/types.js +1 -1
  64. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts +0 -1
  65. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts.map +1 -1
  66. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.js +66 -69
  67. package/dist/src/account-lib/mpc/tss/eddsa/index.js +23 -9
  68. package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts +1 -1
  69. package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts.map +1 -1
  70. package/dist/src/account-lib/mpc/tss/eddsa/types.js +1 -1
  71. package/dist/src/account-lib/mpc/tss/index.js +23 -9
  72. package/dist/src/account-lib/mpc/util.d.ts +7 -1
  73. package/dist/src/account-lib/mpc/util.d.ts.map +1 -1
  74. package/dist/src/account-lib/mpc/util.js +24 -1
  75. package/dist/src/account-lib/staking/index.js +6 -2
  76. package/dist/src/account-lib/staking/utils.js +3 -3
  77. package/dist/src/account-lib/util/crypto.d.ts +8 -2
  78. package/dist/src/account-lib/util/crypto.d.ts.map +1 -1
  79. package/dist/src/account-lib/util/crypto.js +69 -38
  80. package/dist/src/api/bip32path.js +2 -3
  81. package/dist/src/api/index.js +6 -2
  82. package/dist/src/api/types.d.ts +37 -0
  83. package/dist/src/api/types.d.ts.map +1 -1
  84. package/dist/src/api/types.js +8 -1
  85. package/dist/src/bitgo/address-book/address-book.d.ts.map +1 -1
  86. package/dist/src/bitgo/address-book/address-book.js +20 -12
  87. package/dist/src/bitgo/address-book/index.js +6 -2
  88. package/dist/src/bitgo/address-book/types.d.ts +36 -36
  89. package/dist/src/bitgo/address-book/types.d.ts.map +1 -1
  90. package/dist/src/bitgo/baseCoin/baseCoin.d.ts +123 -13
  91. package/dist/src/bitgo/baseCoin/baseCoin.d.ts.map +1 -1
  92. package/dist/src/bitgo/baseCoin/baseCoin.js +200 -16
  93. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +339 -33
  94. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -1
  95. package/dist/src/bitgo/baseCoin/iBaseCoin.js +14 -3
  96. package/dist/src/bitgo/baseCoin/index.js +6 -2
  97. package/dist/src/bitgo/bip32util.d.ts +3 -16
  98. package/dist/src/bitgo/bip32util.d.ts.map +1 -1
  99. package/dist/src/bitgo/bip32util.js +4 -56
  100. package/dist/src/bitgo/bitcoin.d.ts +0 -1
  101. package/dist/src/bitgo/bitcoin.d.ts.map +1 -1
  102. package/dist/src/bitgo/bitcoin.js +26 -13
  103. package/dist/src/bitgo/bitgoBase.d.ts +17 -4
  104. package/dist/src/bitgo/bitgoBase.d.ts.map +1 -1
  105. package/dist/src/bitgo/bitgoBase.js +1 -1
  106. package/dist/src/bitgo/coinFactory.d.ts +24 -3
  107. package/dist/src/bitgo/coinFactory.d.ts.map +1 -1
  108. package/dist/src/bitgo/coinFactory.js +35 -3
  109. package/dist/src/bitgo/config.d.ts +3 -107
  110. package/dist/src/bitgo/config.d.ts.map +1 -1
  111. package/dist/src/bitgo/config.js +26 -15
  112. package/dist/src/bitgo/defi/defiVault.d.ts +171 -0
  113. package/dist/src/bitgo/defi/defiVault.d.ts.map +1 -0
  114. package/dist/src/bitgo/defi/defiVault.js +445 -0
  115. package/dist/src/bitgo/defi/iDefiVault.d.ts +101 -0
  116. package/dist/src/bitgo/defi/iDefiVault.d.ts.map +1 -0
  117. package/dist/src/bitgo/defi/iDefiVault.js +6 -0
  118. package/dist/src/bitgo/defi/index.d.ts +3 -0
  119. package/dist/src/bitgo/defi/index.d.ts.map +1 -0
  120. package/dist/src/bitgo/defi/index.js +22 -0
  121. package/dist/src/bitgo/ecdh.d.ts +0 -1
  122. package/dist/src/bitgo/ecdh.d.ts.map +1 -1
  123. package/dist/src/bitgo/ecdh.js +26 -13
  124. package/dist/src/bitgo/enterprise/enterprise.d.ts +9 -4
  125. package/dist/src/bitgo/enterprise/enterprise.d.ts.map +1 -1
  126. package/dist/src/bitgo/enterprise/enterprise.js +47 -21
  127. package/dist/src/bitgo/enterprise/enterprises.js +27 -13
  128. package/dist/src/bitgo/enterprise/iEnterprise.d.ts +5 -3
  129. package/dist/src/bitgo/enterprise/iEnterprise.d.ts.map +1 -1
  130. package/dist/src/bitgo/enterprise/iEnterprise.js +1 -1
  131. package/dist/src/bitgo/enterprise/index.js +6 -2
  132. package/dist/src/bitgo/environments.d.ts +72 -3
  133. package/dist/src/bitgo/environments.d.ts.map +1 -1
  134. package/dist/src/bitgo/environments.js +413 -34
  135. package/dist/src/bitgo/errors.d.ts +193 -1
  136. package/dist/src/bitgo/errors.d.ts.map +1 -1
  137. package/dist/src/bitgo/errors.js +194 -3
  138. package/dist/src/bitgo/evm/evmUtils.d.ts +26 -0
  139. package/dist/src/bitgo/evm/evmUtils.d.ts.map +1 -0
  140. package/dist/src/bitgo/evm/evmUtils.js +50 -0
  141. package/dist/src/bitgo/index.d.ts +6 -1
  142. package/dist/src/bitgo/index.d.ts.map +1 -1
  143. package/dist/src/bitgo/index.js +32 -11
  144. package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.d.ts +3 -3
  145. package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.d.ts.map +1 -1
  146. package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.js +1 -1
  147. package/dist/src/bitgo/inscriptionBuilder/index.js +6 -2
  148. package/dist/src/bitgo/internal/index.js +6 -2
  149. package/dist/src/bitgo/internal/internal.js +5 -6
  150. package/dist/src/bitgo/internal/keycard.d.ts +13 -8
  151. package/dist/src/bitgo/internal/keycard.d.ts.map +1 -1
  152. package/dist/src/bitgo/internal/keycard.js +63 -48
  153. package/dist/src/bitgo/keychain/decryptKeychain.d.ts +14 -0
  154. package/dist/src/bitgo/keychain/decryptKeychain.d.ts.map +1 -0
  155. package/dist/src/bitgo/keychain/decryptKeychain.js +36 -0
  156. package/dist/src/bitgo/keychain/iKeychains.d.ts +180 -11
  157. package/dist/src/bitgo/keychain/iKeychains.d.ts.map +1 -1
  158. package/dist/src/bitgo/keychain/iKeychains.js +2 -2
  159. package/dist/src/bitgo/keychain/index.d.ts +1 -0
  160. package/dist/src/bitgo/keychain/index.d.ts.map +1 -1
  161. package/dist/src/bitgo/keychain/index.js +7 -2
  162. package/dist/src/bitgo/keychain/keychains.d.ts +106 -13
  163. package/dist/src/bitgo/keychain/keychains.d.ts.map +1 -1
  164. package/dist/src/bitgo/keychain/keychains.js +423 -72
  165. package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts +3 -3
  166. package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts.map +1 -1
  167. package/dist/src/bitgo/keychain/ovcJsonCodec.js +23 -9
  168. package/dist/src/bitgo/legacyBitcoin.d.ts +0 -1
  169. package/dist/src/bitgo/legacyBitcoin.d.ts.map +1 -1
  170. package/dist/src/bitgo/legacyBitcoin.js +27 -13
  171. package/dist/src/bitgo/lightning/lightningWalletUtil.d.ts +7 -0
  172. package/dist/src/bitgo/lightning/lightningWalletUtil.d.ts.map +1 -0
  173. package/dist/src/bitgo/lightning/lightningWalletUtil.js +25 -0
  174. package/dist/src/bitgo/market/iMarkets.d.ts +2 -2
  175. package/dist/src/bitgo/market/iMarkets.d.ts.map +1 -1
  176. package/dist/src/bitgo/market/index.js +6 -2
  177. package/dist/src/bitgo/market/markets.js +23 -9
  178. package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts +5 -1
  179. package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts.map +1 -1
  180. package/dist/src/bitgo/pendingApproval/iPendingApproval.js +4 -4
  181. package/dist/src/bitgo/pendingApproval/index.js +6 -2
  182. package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts +20 -8
  183. package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts.map +1 -1
  184. package/dist/src/bitgo/pendingApproval/pendingApproval.js +246 -111
  185. package/dist/src/bitgo/pendingApproval/pendingApprovals.js +23 -9
  186. package/dist/src/bitgo/proofs/WalletProofs.d.ts +19 -0
  187. package/dist/src/bitgo/proofs/WalletProofs.d.ts.map +1 -0
  188. package/dist/src/bitgo/proofs/WalletProofs.js +37 -0
  189. package/dist/src/bitgo/proofs/index.d.ts +2 -0
  190. package/dist/src/bitgo/proofs/index.d.ts.map +1 -0
  191. package/dist/src/bitgo/proofs/index.js +6 -0
  192. package/dist/src/bitgo/proofs/types.d.ts +80 -0
  193. package/dist/src/bitgo/proofs/types.d.ts.map +1 -0
  194. package/dist/src/bitgo/proofs/types.js +80 -0
  195. package/dist/src/bitgo/recovery/index.js +6 -2
  196. package/dist/src/bitgo/recovery/initiate.d.ts +13 -3
  197. package/dist/src/bitgo/recovery/initiate.d.ts.map +1 -1
  198. package/dist/src/bitgo/recovery/initiate.js +49 -41
  199. package/dist/src/bitgo/safe/derivableEd25519Pub.d.ts +72 -0
  200. package/dist/src/bitgo/safe/derivableEd25519Pub.d.ts.map +1 -0
  201. package/dist/src/bitgo/safe/derivableEd25519Pub.js +186 -0
  202. package/dist/src/bitgo/safe/iSafe.d.ts +124 -0
  203. package/dist/src/bitgo/safe/iSafe.d.ts.map +1 -0
  204. package/dist/src/bitgo/safe/iSafe.js +3 -0
  205. package/dist/src/bitgo/safe/iSafes.d.ts +94 -0
  206. package/dist/src/bitgo/safe/iSafes.d.ts.map +1 -0
  207. package/dist/src/bitgo/safe/iSafes.js +3 -0
  208. package/dist/src/bitgo/safe/index.d.ts +8 -0
  209. package/dist/src/bitgo/safe/index.d.ts.map +1 -0
  210. package/dist/src/bitgo/safe/index.js +24 -0
  211. package/dist/src/bitgo/safe/recovery.d.ts +192 -0
  212. package/dist/src/bitgo/safe/recovery.d.ts.map +1 -0
  213. package/dist/src/bitgo/safe/recovery.js +253 -0
  214. package/dist/src/bitgo/safe/rootCoin.d.ts +15 -0
  215. package/dist/src/bitgo/safe/rootCoin.d.ts.map +1 -0
  216. package/dist/src/bitgo/safe/rootCoin.js +47 -0
  217. package/dist/src/bitgo/safe/safe.d.ts +88 -0
  218. package/dist/src/bitgo/safe/safe.d.ts.map +1 -0
  219. package/dist/src/bitgo/safe/safe.js +417 -0
  220. package/dist/src/bitgo/safe/safes.d.ts +102 -0
  221. package/dist/src/bitgo/safe/safes.d.ts.map +1 -0
  222. package/dist/src/bitgo/safe/safes.js +281 -0
  223. package/dist/src/bitgo/staking/goStakingInterfaces.d.ts +136 -0
  224. package/dist/src/bitgo/staking/goStakingInterfaces.d.ts.map +1 -0
  225. package/dist/src/bitgo/staking/goStakingInterfaces.js +3 -0
  226. package/dist/src/bitgo/staking/goStakingWallet.d.ts +62 -0
  227. package/dist/src/bitgo/staking/goStakingWallet.d.ts.map +1 -0
  228. package/dist/src/bitgo/staking/goStakingWallet.js +141 -0
  229. package/dist/src/bitgo/staking/iGoStakingWallet.d.ts +17 -0
  230. package/dist/src/bitgo/staking/iGoStakingWallet.d.ts.map +1 -0
  231. package/dist/src/bitgo/staking/iGoStakingWallet.js +3 -0
  232. package/dist/src/bitgo/staking/iStakingWallet.d.ts +161 -8
  233. package/dist/src/bitgo/staking/iStakingWallet.d.ts.map +1 -1
  234. package/dist/src/bitgo/staking/iStakingWallet.js +2 -2
  235. package/dist/src/bitgo/staking/index.d.ts +3 -0
  236. package/dist/src/bitgo/staking/index.d.ts.map +1 -1
  237. package/dist/src/bitgo/staking/index.js +9 -2
  238. package/dist/src/bitgo/staking/stakingWallet.d.ts +21 -8
  239. package/dist/src/bitgo/staking/stakingWallet.d.ts.map +1 -1
  240. package/dist/src/bitgo/staking/stakingWallet.js +153 -7
  241. package/dist/src/bitgo/trading/iTradingAccount.d.ts +13 -1
  242. package/dist/src/bitgo/trading/iTradingAccount.d.ts.map +1 -1
  243. package/dist/src/bitgo/trading/iTradingAccount.js +1 -1
  244. package/dist/src/bitgo/trading/index.d.ts +1 -0
  245. package/dist/src/bitgo/trading/index.d.ts.map +1 -1
  246. package/dist/src/bitgo/trading/index.js +7 -2
  247. package/dist/src/bitgo/trading/network/decrypt-aes-gcm.d.ts +8 -0
  248. package/dist/src/bitgo/trading/network/decrypt-aes-gcm.d.ts.map +1 -0
  249. package/dist/src/bitgo/trading/network/decrypt-aes-gcm.js +31 -0
  250. package/dist/src/bitgo/trading/network/decrypt-rsa.d.ts +8 -0
  251. package/dist/src/bitgo/trading/network/decrypt-rsa.d.ts.map +1 -0
  252. package/dist/src/bitgo/trading/network/decrypt-rsa.js +23 -0
  253. package/dist/src/bitgo/trading/network/decrypt.d.ts +14 -0
  254. package/dist/src/bitgo/trading/network/decrypt.d.ts.map +1 -0
  255. package/dist/src/bitgo/trading/network/decrypt.js +23 -0
  256. package/dist/src/bitgo/trading/network/encrypt-aes-gcm.d.ts +8 -0
  257. package/dist/src/bitgo/trading/network/encrypt-aes-gcm.d.ts.map +1 -0
  258. package/dist/src/bitgo/trading/network/encrypt-aes-gcm.js +25 -0
  259. package/dist/src/bitgo/trading/network/encrypt-rsa-browser.d.ts +8 -0
  260. package/dist/src/bitgo/trading/network/encrypt-rsa-browser.d.ts.map +1 -0
  261. package/dist/src/bitgo/trading/network/encrypt-rsa-browser.js +65 -0
  262. package/dist/src/bitgo/trading/network/encrypt-rsa.d.ts +8 -0
  263. package/dist/src/bitgo/trading/network/encrypt-rsa.d.ts.map +1 -0
  264. package/dist/src/bitgo/trading/network/encrypt-rsa.js +23 -0
  265. package/dist/src/bitgo/trading/network/encrypt.d.ts +37 -0
  266. package/dist/src/bitgo/trading/network/encrypt.d.ts.map +1 -0
  267. package/dist/src/bitgo/trading/network/encrypt.js +58 -0
  268. package/dist/src/bitgo/trading/network/index.d.ts +2 -0
  269. package/dist/src/bitgo/trading/network/index.d.ts.map +1 -1
  270. package/dist/src/bitgo/trading/network/index.js +8 -2
  271. package/dist/src/bitgo/trading/network/network.d.ts +4 -3
  272. package/dist/src/bitgo/trading/network/network.d.ts.map +1 -1
  273. package/dist/src/bitgo/trading/network/network.js +24 -27
  274. package/dist/src/bitgo/trading/network/types.d.ts +79 -46
  275. package/dist/src/bitgo/trading/network/types.d.ts.map +1 -1
  276. package/dist/src/bitgo/trading/network/types.js +1 -1
  277. package/dist/src/bitgo/trading/network/utils.d.ts +20 -0
  278. package/dist/src/bitgo/trading/network/utils.d.ts.map +1 -0
  279. package/dist/src/bitgo/trading/network/utils.js +54 -0
  280. package/dist/src/bitgo/trading/tradingAccount.d.ts +15 -1
  281. package/dist/src/bitgo/trading/tradingAccount.d.ts.map +1 -1
  282. package/dist/src/bitgo/trading/tradingAccount.js +55 -7
  283. package/dist/src/bitgo/tss/bitgoPubKeys.d.ts +49 -0
  284. package/dist/src/bitgo/tss/bitgoPubKeys.d.ts.map +1 -0
  285. package/dist/src/bitgo/tss/bitgoPubKeys.js +92 -0
  286. package/dist/src/bitgo/tss/common.d.ts +50 -6
  287. package/dist/src/bitgo/tss/common.d.ts.map +1 -1
  288. package/dist/src/bitgo/tss/common.js +139 -17
  289. package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts +6 -4
  290. package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts.map +1 -1
  291. package/dist/src/bitgo/tss/ecdsa/ecdsa.js +78 -66
  292. package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.d.ts +15 -0
  293. package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
  294. package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.js +167 -0
  295. package/dist/src/bitgo/tss/ecdsa/index.d.ts +1 -0
  296. package/dist/src/bitgo/tss/ecdsa/index.d.ts.map +1 -1
  297. package/dist/src/bitgo/tss/ecdsa/index.js +25 -10
  298. package/dist/src/bitgo/tss/ecdsa/types.d.ts +27 -27
  299. package/dist/src/bitgo/tss/ecdsa/types.d.ts.map +1 -1
  300. package/dist/src/bitgo/tss/ecdsa/types.js +3 -3
  301. package/dist/src/bitgo/tss/eddsa/eddsa.d.ts +15 -6
  302. package/dist/src/bitgo/tss/eddsa/eddsa.d.ts.map +1 -1
  303. package/dist/src/bitgo/tss/eddsa/eddsa.js +47 -40
  304. package/dist/src/bitgo/tss/eddsa/eddsaMPCv2.d.ts +42 -0
  305. package/dist/src/bitgo/tss/eddsa/eddsaMPCv2.d.ts.map +1 -0
  306. package/dist/src/bitgo/tss/eddsa/eddsaMPCv2.js +104 -0
  307. package/dist/src/bitgo/tss/eddsa/index.js +23 -9
  308. package/dist/src/bitgo/tss/eddsa/types.d.ts +4 -4
  309. package/dist/src/bitgo/tss/eddsa/types.d.ts.map +1 -1
  310. package/dist/src/bitgo/tss/index.d.ts +3 -2
  311. package/dist/src/bitgo/tss/index.d.ts.map +1 -1
  312. package/dist/src/bitgo/tss/index.js +26 -10
  313. package/dist/src/bitgo/tss/redpallas/redpallasMPCv2.d.ts +138 -0
  314. package/dist/src/bitgo/tss/redpallas/redpallasMPCv2.d.ts.map +1 -0
  315. package/dist/src/bitgo/tss/redpallas/redpallasMPCv2.js +255 -0
  316. package/dist/src/bitgo/tss/types.d.ts +3 -3
  317. package/dist/src/bitgo/tss/types.d.ts.map +1 -1
  318. package/dist/src/bitgo/tss/types.js +2 -2
  319. package/dist/src/bitgo/types.d.ts +3 -3
  320. package/dist/src/bitgo/types.d.ts.map +1 -1
  321. package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts +10 -0
  322. package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts.map +1 -1
  323. package/dist/src/bitgo/utils/abstractUtxoCoinUtil.js +76 -14
  324. package/dist/src/bitgo/utils/codecProps.js +24 -11
  325. package/dist/src/bitgo/utils/codecs.d.ts +11 -0
  326. package/dist/src/bitgo/utils/codecs.d.ts.map +1 -0
  327. package/dist/src/bitgo/utils/codecs.js +59 -0
  328. package/dist/src/bitgo/utils/decode.d.ts.map +1 -1
  329. package/dist/src/bitgo/utils/decode.js +30 -16
  330. package/dist/src/bitgo/utils/index.d.ts +5 -2
  331. package/dist/src/bitgo/utils/index.d.ts.map +1 -1
  332. package/dist/src/bitgo/utils/index.js +28 -11
  333. package/dist/src/bitgo/utils/messageTypes.d.ts +46 -0
  334. package/dist/src/bitgo/utils/messageTypes.d.ts.map +1 -0
  335. package/dist/src/bitgo/utils/messageTypes.js +23 -0
  336. package/dist/src/bitgo/utils/mpcUtils.d.ts +4 -4
  337. package/dist/src/bitgo/utils/mpcUtils.d.ts.map +1 -1
  338. package/dist/src/bitgo/utils/mpcUtils.js +215 -14
  339. package/dist/src/bitgo/utils/notEmpty.d.ts +2 -0
  340. package/dist/src/bitgo/utils/notEmpty.d.ts.map +1 -0
  341. package/dist/src/bitgo/utils/notEmpty.js +7 -0
  342. package/dist/src/bitgo/utils/opengpgUtils.d.ts +11 -7
  343. package/dist/src/bitgo/utils/opengpgUtils.d.ts.map +1 -1
  344. package/dist/src/bitgo/utils/opengpgUtils.js +79 -62
  345. package/dist/src/bitgo/utils/postWithCodec.js +2 -3
  346. package/dist/src/bitgo/utils/promise-utils.d.ts +1 -1
  347. package/dist/src/bitgo/utils/promise-utils.d.ts.map +1 -1
  348. package/dist/src/bitgo/utils/promise-utils.js +2 -3
  349. package/dist/src/bitgo/utils/siws.d.ts +17 -0
  350. package/dist/src/bitgo/utils/siws.d.ts.map +1 -0
  351. package/dist/src/bitgo/utils/siws.js +171 -0
  352. package/dist/src/bitgo/utils/transactionUtils.d.ts +9 -0
  353. package/dist/src/bitgo/utils/transactionUtils.d.ts.map +1 -0
  354. package/dist/src/bitgo/utils/transactionUtils.js +29 -0
  355. package/dist/src/bitgo/utils/triple.d.ts +1 -1
  356. package/dist/src/bitgo/utils/triple.d.ts.map +1 -1
  357. package/dist/src/bitgo/utils/triple.js +2 -3
  358. package/dist/src/bitgo/utils/tss/addressVerification.d.ts +62 -0
  359. package/dist/src/bitgo/utils/tss/addressVerification.d.ts.map +1 -0
  360. package/dist/src/bitgo/utils/tss/addressVerification.js +93 -0
  361. package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts +99 -17
  362. package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -1
  363. package/dist/src/bitgo/utils/tss/baseTSSUtils.js +322 -45
  364. package/dist/src/bitgo/utils/tss/baseTypes.d.ts +482 -55
  365. package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -1
  366. package/dist/src/bitgo/utils/tss/baseTypes.js +47 -22
  367. package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.d.ts +23 -0
  368. package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.d.ts.map +1 -0
  369. package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.js +157 -0
  370. package/dist/src/bitgo/utils/tss/ecdsa/base.d.ts +28 -0
  371. package/dist/src/bitgo/utils/tss/ecdsa/base.d.ts.map +1 -0
  372. package/dist/src/bitgo/utils/tss/ecdsa/base.js +53 -0
  373. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts +25 -51
  374. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -1
  375. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +173 -246
  376. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts +241 -0
  377. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
  378. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.js +1072 -0
  379. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.d.ts +17 -0
  380. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.d.ts.map +1 -0
  381. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.js +39 -0
  382. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaVrfMPCv2.d.ts +65 -0
  383. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaVrfMPCv2.d.ts.map +1 -0
  384. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaVrfMPCv2.js +439 -0
  385. package/dist/src/bitgo/utils/tss/ecdsa/index.d.ts +5 -0
  386. package/dist/src/bitgo/utils/tss/ecdsa/index.d.ts.map +1 -1
  387. package/dist/src/bitgo/utils/tss/ecdsa/index.js +11 -2
  388. package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts +7 -10
  389. package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts.map +1 -1
  390. package/dist/src/bitgo/utils/tss/ecdsa/types.js +1 -1
  391. package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.d.ts +151 -0
  392. package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.d.ts.map +1 -0
  393. package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.js +55 -0
  394. package/dist/src/bitgo/utils/tss/eddsa/SMC/utils.d.ts +21 -0
  395. package/dist/src/bitgo/utils/tss/eddsa/SMC/utils.d.ts.map +1 -0
  396. package/dist/src/bitgo/utils/tss/eddsa/SMC/utils.js +119 -0
  397. package/dist/src/bitgo/utils/tss/eddsa/base.d.ts +18 -0
  398. package/dist/src/bitgo/utils/tss/eddsa/base.d.ts.map +1 -0
  399. package/dist/src/bitgo/utils/tss/eddsa/base.js +64 -0
  400. package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts +43 -11
  401. package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts.map +1 -1
  402. package/dist/src/bitgo/utils/tss/eddsa/eddsa.js +261 -96
  403. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts +261 -0
  404. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts.map +1 -0
  405. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2.js +994 -0
  406. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2KeyGenSender.d.ts +14 -0
  407. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2KeyGenSender.d.ts.map +1 -0
  408. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2KeyGenSender.js +29 -0
  409. package/dist/src/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.d.ts +44 -0
  410. package/dist/src/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.d.ts.map +1 -0
  411. package/dist/src/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.js +268 -0
  412. package/dist/src/bitgo/utils/tss/eddsa/index.d.ts +5 -0
  413. package/dist/src/bitgo/utils/tss/eddsa/index.d.ts.map +1 -1
  414. package/dist/src/bitgo/utils/tss/eddsa/index.js +30 -8
  415. package/dist/src/bitgo/utils/tss/eddsa/types.d.ts +15 -7
  416. package/dist/src/bitgo/utils/tss/eddsa/types.d.ts.map +1 -1
  417. package/dist/src/bitgo/utils/tss/eddsa/types.js +1 -1
  418. package/dist/src/bitgo/utils/tss/eddsa/typesEddsaMPCv2.d.ts +75 -0
  419. package/dist/src/bitgo/utils/tss/eddsa/typesEddsaMPCv2.d.ts.map +1 -0
  420. package/dist/src/bitgo/utils/tss/eddsa/typesEddsaMPCv2.js +44 -0
  421. package/dist/src/bitgo/utils/tss/index.d.ts +7 -0
  422. package/dist/src/bitgo/utils/tss/index.d.ts.map +1 -1
  423. package/dist/src/bitgo/utils/tss/index.js +31 -10
  424. package/dist/src/bitgo/utils/tss/keyShareEnvelope.d.ts +40 -0
  425. package/dist/src/bitgo/utils/tss/keyShareEnvelope.d.ts.map +1 -0
  426. package/dist/src/bitgo/utils/tss/keyShareEnvelope.js +103 -0
  427. package/dist/src/bitgo/utils/tss/keyVerification.d.ts +45 -0
  428. package/dist/src/bitgo/utils/tss/keyVerification.d.ts.map +1 -0
  429. package/dist/src/bitgo/utils/tss/keyVerification.js +192 -0
  430. package/dist/src/bitgo/utils/tss/preHashedSignable.d.ts +23 -0
  431. package/dist/src/bitgo/utils/tss/preHashedSignable.d.ts.map +1 -0
  432. package/dist/src/bitgo/utils/tss/preHashedSignable.js +26 -0
  433. package/dist/src/bitgo/utils/tss/recipientUtils.d.ts +42 -0
  434. package/dist/src/bitgo/utils/tss/recipientUtils.d.ts.map +1 -0
  435. package/dist/src/bitgo/utils/tss/recipientUtils.js +184 -0
  436. package/dist/src/bitgo/utils/tss/redpallas/SMC/utils.d.ts +29 -0
  437. package/dist/src/bitgo/utils/tss/redpallas/SMC/utils.d.ts.map +1 -0
  438. package/dist/src/bitgo/utils/tss/redpallas/SMC/utils.js +126 -0
  439. package/dist/src/bitgo/utils/tss/redpallas/index.d.ts +4 -0
  440. package/dist/src/bitgo/utils/tss/redpallas/index.d.ts.map +1 -0
  441. package/dist/src/bitgo/utils/tss/redpallas/index.js +20 -0
  442. package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2.d.ts +27 -0
  443. package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2.d.ts.map +1 -0
  444. package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2.js +43 -0
  445. package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2KeyGenSender.d.ts +45 -0
  446. package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2KeyGenSender.d.ts.map +1 -0
  447. package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2KeyGenSender.js +55 -0
  448. package/dist/src/bitgo/utils/tss/serializedTxHexVerify.d.ts +8 -0
  449. package/dist/src/bitgo/utils/tss/serializedTxHexVerify.d.ts.map +1 -0
  450. package/dist/src/bitgo/utils/tss/serializedTxHexVerify.js +13 -0
  451. package/dist/src/bitgo/utils/tss/signableConsistency.d.ts +12 -0
  452. package/dist/src/bitgo/utils/tss/signableConsistency.d.ts.map +1 -0
  453. package/dist/src/bitgo/utils/tss/signableConsistency.js +9 -0
  454. package/dist/src/bitgo/utils/txRequest.d.ts +10 -0
  455. package/dist/src/bitgo/utils/txRequest.d.ts.map +1 -0
  456. package/dist/src/bitgo/utils/txRequest.js +49 -0
  457. package/dist/src/bitgo/utils/util.js +24 -10
  458. package/dist/src/bitgo/utils/wallet.d.ts +7 -0
  459. package/dist/src/bitgo/utils/wallet.d.ts.map +1 -0
  460. package/dist/src/bitgo/utils/wallet.js +48 -0
  461. package/dist/src/bitgo/v1Wallets.d.ts +170 -0
  462. package/dist/src/bitgo/v1Wallets.d.ts.map +1 -0
  463. package/dist/src/bitgo/v1Wallets.js +3 -0
  464. package/dist/src/bitgo/wallet/BuildParams.d.ts +92 -1
  465. package/dist/src/bitgo/wallet/BuildParams.d.ts.map +1 -1
  466. package/dist/src/bitgo/wallet/BuildParams.js +97 -11
  467. package/dist/src/bitgo/wallet/iWallet.d.ts +649 -33
  468. package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
  469. package/dist/src/bitgo/wallet/iWallet.js +1 -1
  470. package/dist/src/bitgo/wallet/iWallets.d.ts +311 -16
  471. package/dist/src/bitgo/wallet/iWallets.d.ts.map +1 -1
  472. package/dist/src/bitgo/wallet/iWallets.js +84 -3
  473. package/dist/src/bitgo/wallet/index.d.ts +1 -0
  474. package/dist/src/bitgo/wallet/index.d.ts.map +1 -1
  475. package/dist/src/bitgo/wallet/index.js +7 -2
  476. package/dist/src/bitgo/wallet/safeKeychain.d.ts +75 -0
  477. package/dist/src/bitgo/wallet/safeKeychain.d.ts.map +1 -0
  478. package/dist/src/bitgo/wallet/safeKeychain.js +152 -0
  479. package/dist/src/bitgo/wallet/wallet.d.ts +410 -27
  480. package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
  481. package/dist/src/bitgo/wallet/wallet.js +2538 -510
  482. package/dist/src/bitgo/wallet/wallets.d.ts +99 -4
  483. package/dist/src/bitgo/wallet/wallets.d.ts.map +1 -1
  484. package/dist/src/bitgo/wallet/wallets.js +1256 -156
  485. package/dist/src/bitgo/walletUtil/iMessageProvider.d.ts +12 -0
  486. package/dist/src/bitgo/walletUtil/iMessageProvider.d.ts.map +1 -0
  487. package/dist/src/bitgo/walletUtil/iMessageProvider.js +3 -0
  488. package/dist/src/bitgo/walletUtil/index.d.ts +3 -0
  489. package/dist/src/bitgo/walletUtil/index.d.ts.map +1 -0
  490. package/dist/src/bitgo/walletUtil/index.js +19 -0
  491. package/dist/src/bitgo/walletUtil/midnightMessageProvider.d.ts +22 -0
  492. package/dist/src/bitgo/walletUtil/midnightMessageProvider.d.ts.map +1 -0
  493. package/dist/src/bitgo/walletUtil/midnightMessageProvider.js +95 -0
  494. package/dist/src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.d.ts +9 -0
  495. package/dist/src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.d.ts.map +1 -0
  496. package/dist/src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.js +72 -0
  497. package/dist/src/bitgo/walletUtil/utxoMessageProof.d.ts +15 -0
  498. package/dist/src/bitgo/walletUtil/utxoMessageProof.d.ts.map +1 -0
  499. package/dist/src/bitgo/walletUtil/utxoMessageProof.js +40 -0
  500. package/dist/src/bitgo/webauthn/base64url.d.ts +16 -0
  501. package/dist/src/bitgo/webauthn/base64url.d.ts.map +1 -0
  502. package/dist/src/bitgo/webauthn/base64url.js +27 -0
  503. package/dist/src/bitgo/webauthn/deriveEnterpriseSalt.d.ts +18 -0
  504. package/dist/src/bitgo/webauthn/deriveEnterpriseSalt.d.ts.map +1 -0
  505. package/dist/src/bitgo/webauthn/deriveEnterpriseSalt.js +26 -0
  506. package/dist/src/bitgo/webauthn/derivePassword.d.ts +11 -0
  507. package/dist/src/bitgo/webauthn/derivePassword.d.ts.map +1 -0
  508. package/dist/src/bitgo/webauthn/derivePassword.js +16 -0
  509. package/dist/src/bitgo/webauthn/index.d.ts +5 -0
  510. package/dist/src/bitgo/webauthn/index.d.ts.map +1 -0
  511. package/dist/src/bitgo/webauthn/index.js +21 -0
  512. package/dist/src/bitgo/webauthn/types.d.ts +18 -0
  513. package/dist/src/bitgo/webauthn/types.d.ts.map +1 -0
  514. package/dist/src/bitgo/webauthn/types.js +3 -0
  515. package/dist/src/bitgo/webhook/index.js +6 -2
  516. package/dist/src/bitgo/webhook/webhooks.js +23 -9
  517. package/dist/src/coins/fiat.d.ts +45 -0
  518. package/dist/src/coins/fiat.d.ts.map +1 -0
  519. package/dist/src/coins/fiat.js +94 -0
  520. package/dist/src/coins/index.d.ts +1 -6
  521. package/dist/src/coins/index.d.ts.map +1 -1
  522. package/dist/src/coins/index.js +7 -8
  523. package/dist/src/coins/ofc.d.ts +21 -2
  524. package/dist/src/coins/ofc.d.ts.map +1 -1
  525. package/dist/src/coins/ofc.js +29 -3
  526. package/dist/src/coins/ofcToken.d.ts +15 -4
  527. package/dist/src/coins/ofcToken.d.ts.map +1 -1
  528. package/dist/src/coins/ofcToken.js +43 -5
  529. package/dist/src/coins/susd.d.ts +3 -2
  530. package/dist/src/coins/susd.d.ts.map +1 -1
  531. package/dist/src/coins/susd.js +5 -1
  532. package/dist/src/common.js +27 -13
  533. package/dist/src/index.d.ts +9 -1
  534. package/dist/src/index.d.ts.map +1 -1
  535. package/dist/src/index.js +40 -11
  536. package/dist/src/lightning.d.ts +20 -0
  537. package/dist/src/lightning.d.ts.map +1 -0
  538. package/dist/src/lightning.js +13 -0
  539. package/dist/src/units.js +5 -6
  540. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.d.ts +2 -0
  541. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.d.ts.map +1 -0
  542. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.js +207 -0
  543. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.d.ts +2 -0
  544. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.d.ts.map +1 -0
  545. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.js +174 -0
  546. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts +2 -0
  547. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts.map +1 -0
  548. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +108 -0
  549. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts +46 -0
  550. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts.map +1 -0
  551. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.js +69 -0
  552. package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.js +91 -29
  553. package/dist/test/unit/account-lib/mpc/util.d.ts +2 -0
  554. package/dist/test/unit/account-lib/mpc/util.d.ts.map +1 -0
  555. package/dist/test/unit/account-lib/mpc/util.js +53 -0
  556. package/dist/test/unit/bitgo/address-book/address-book.d.ts +2 -0
  557. package/dist/test/unit/bitgo/address-book/address-book.d.ts.map +1 -0
  558. package/dist/test/unit/bitgo/address-book/address-book.js +159 -0
  559. package/dist/test/unit/bitgo/defi/defiVault.d.ts +2 -0
  560. package/dist/test/unit/bitgo/defi/defiVault.d.ts.map +1 -0
  561. package/dist/test/unit/bitgo/defi/defiVault.js +863 -0
  562. package/dist/test/unit/bitgo/environment.d.ts +2 -0
  563. package/dist/test/unit/bitgo/environment.d.ts.map +1 -0
  564. package/dist/test/unit/bitgo/environment.js +38 -0
  565. package/dist/test/unit/bitgo/errors.d.ts +2 -0
  566. package/dist/test/unit/bitgo/errors.d.ts.map +1 -0
  567. package/dist/test/unit/bitgo/errors.js +276 -0
  568. package/dist/test/unit/bitgo/keychain/keychains.d.ts +2 -0
  569. package/dist/test/unit/bitgo/keychain/keychains.d.ts.map +1 -0
  570. package/dist/test/unit/bitgo/keychain/keychains.js +426 -0
  571. package/dist/test/unit/bitgo/recovery/initiate.d.ts +2 -0
  572. package/dist/test/unit/bitgo/recovery/initiate.d.ts.map +1 -0
  573. package/dist/test/unit/bitgo/recovery/initiate.js +159 -0
  574. package/dist/test/unit/bitgo/safe/derivableEd25519Pub.d.ts +2 -0
  575. package/dist/test/unit/bitgo/safe/derivableEd25519Pub.d.ts.map +1 -0
  576. package/dist/test/unit/bitgo/safe/derivableEd25519Pub.js +268 -0
  577. package/dist/test/unit/bitgo/safe/fixtures/derivableEd25519Pub.json +72 -0
  578. package/dist/test/unit/bitgo/safe/fixtures/safeBip44Vectors.json +319 -0
  579. package/dist/test/unit/bitgo/safe/recovery.d.ts +2 -0
  580. package/dist/test/unit/bitgo/safe/recovery.d.ts.map +1 -0
  581. package/dist/test/unit/bitgo/safe/recovery.js +647 -0
  582. package/dist/test/unit/bitgo/safe/rootCoin.d.ts +2 -0
  583. package/dist/test/unit/bitgo/safe/rootCoin.d.ts.map +1 -0
  584. package/dist/test/unit/bitgo/safe/rootCoin.js +13 -0
  585. package/dist/test/unit/bitgo/safe/safe.d.ts +2 -0
  586. package/dist/test/unit/bitgo/safe/safe.d.ts.map +1 -0
  587. package/dist/test/unit/bitgo/safe/safe.js +607 -0
  588. package/dist/test/unit/bitgo/safe/safeBip44Vectors.d.ts +2 -0
  589. package/dist/test/unit/bitgo/safe/safeBip44Vectors.d.ts.map +1 -0
  590. package/dist/test/unit/bitgo/safe/safeBip44Vectors.js +189 -0
  591. package/dist/test/unit/bitgo/safe/safeDerivation.d.ts +2 -0
  592. package/dist/test/unit/bitgo/safe/safeDerivation.d.ts.map +1 -0
  593. package/dist/test/unit/bitgo/safe/safeDerivation.js +37 -0
  594. package/dist/test/unit/bitgo/safe/safes.d.ts +2 -0
  595. package/dist/test/unit/bitgo/safe/safes.d.ts.map +1 -0
  596. package/dist/test/unit/bitgo/safe/safes.js +376 -0
  597. package/dist/test/unit/bitgo/trading/network/encrypt.d.ts +2 -0
  598. package/dist/test/unit/bitgo/trading/network/encrypt.d.ts.map +1 -0
  599. package/dist/test/unit/bitgo/trading/network/encrypt.js +71 -0
  600. package/dist/test/unit/bitgo/trading/network/network.test.d.ts +2 -0
  601. package/dist/test/unit/bitgo/trading/network/network.test.d.ts.map +1 -0
  602. package/dist/test/unit/bitgo/trading/network/network.test.js +136 -0
  603. package/dist/test/unit/bitgo/trading/tradingAccount.d.ts +2 -0
  604. package/dist/test/unit/bitgo/trading/tradingAccount.d.ts.map +1 -0
  605. package/dist/test/unit/bitgo/trading/tradingAccount.js +192 -0
  606. package/dist/test/unit/bitgo/tss/bitgoPubKeys.d.ts +2 -0
  607. package/dist/test/unit/bitgo/tss/bitgoPubKeys.d.ts.map +1 -0
  608. package/dist/test/unit/bitgo/tss/bitgoPubKeys.js +66 -0
  609. package/dist/test/unit/bitgo/tss/common.d.ts +2 -0
  610. package/dist/test/unit/bitgo/tss/common.d.ts.map +1 -0
  611. package/dist/test/unit/bitgo/tss/common.js +84 -0
  612. package/dist/test/unit/bitgo/tss/redpallas/redpallasMPCv2.d.ts +2 -0
  613. package/dist/test/unit/bitgo/tss/redpallas/redpallasMPCv2.d.ts.map +1 -0
  614. package/dist/test/unit/bitgo/tss/redpallas/redpallasMPCv2.js +370 -0
  615. package/dist/test/unit/bitgo/utils/abstractUtxoCoinUtil.js +45 -4
  616. package/dist/test/unit/bitgo/utils/messageTypes.d.ts +2 -0
  617. package/dist/test/unit/bitgo/utils/messageTypes.d.ts.map +1 -0
  618. package/dist/test/unit/bitgo/utils/messageTypes.js +64 -0
  619. package/dist/test/unit/bitgo/utils/mpcUtils.canton.d.ts +2 -0
  620. package/dist/test/unit/bitgo/utils/mpcUtils.canton.d.ts.map +1 -0
  621. package/dist/test/unit/bitgo/utils/mpcUtils.canton.js +90 -0
  622. package/dist/test/unit/bitgo/utils/mpcUtils.unwrap.d.ts +2 -0
  623. package/dist/test/unit/bitgo/utils/mpcUtils.unwrap.d.ts.map +1 -0
  624. package/dist/test/unit/bitgo/utils/mpcUtils.unwrap.js +109 -0
  625. package/dist/test/unit/bitgo/utils/mpcUtils.wrapApprove.d.ts +2 -0
  626. package/dist/test/unit/bitgo/utils/mpcUtils.wrapApprove.d.ts.map +1 -0
  627. package/dist/test/unit/bitgo/utils/mpcUtils.wrapApprove.js +106 -0
  628. package/dist/test/unit/bitgo/utils/notEmpty.d.ts +2 -0
  629. package/dist/test/unit/bitgo/utils/notEmpty.d.ts.map +1 -0
  630. package/dist/test/unit/bitgo/utils/notEmpty.js +15 -0
  631. package/dist/test/unit/bitgo/utils/postWithCodec.js +24 -10
  632. package/dist/test/unit/bitgo/utils/siws.d.ts +2 -0
  633. package/dist/test/unit/bitgo/utils/siws.d.ts.map +1 -0
  634. package/dist/test/unit/bitgo/utils/siws.js +206 -0
  635. package/dist/test/unit/bitgo/utils/tss/addressVerification.d.ts +2 -0
  636. package/dist/test/unit/bitgo/utils/tss/addressVerification.d.ts.map +1 -0
  637. package/dist/test/unit/bitgo/utils/tss/addressVerification.js +251 -0
  638. package/dist/test/unit/bitgo/utils/tss/baseTSSUtils.d.ts +2 -0
  639. package/dist/test/unit/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -0
  640. package/dist/test/unit/bitgo/utils/tss/baseTSSUtils.js +348 -0
  641. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaEncryptionVersion.d.ts +2 -0
  642. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaEncryptionVersion.d.ts.map +1 -0
  643. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaEncryptionVersion.js +94 -0
  644. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts +2 -0
  645. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
  646. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaMPCv2.js +1068 -0
  647. package/dist/test/unit/bitgo/utils/tss/ecdsa/gpgKeys.d.ts +5 -0
  648. package/dist/test/unit/bitgo/utils/tss/ecdsa/gpgKeys.d.ts.map +1 -0
  649. package/dist/test/unit/bitgo/utils/tss/ecdsa/gpgKeys.js +36 -0
  650. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaExternalSigner.d.ts +2 -0
  651. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaExternalSigner.d.ts.map +1 -0
  652. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaExternalSigner.js +158 -0
  653. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts +2 -0
  654. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts.map +1 -0
  655. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaMPCv2.js +2410 -0
  656. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.d.ts +2 -0
  657. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.d.ts.map +1 -0
  658. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.js +553 -0
  659. package/dist/test/unit/bitgo/utils/tss/eddsa/smcUtil.d.ts +2 -0
  660. package/dist/test/unit/bitgo/utils/tss/eddsa/smcUtil.d.ts.map +1 -0
  661. package/dist/test/unit/bitgo/utils/tss/eddsa/smcUtil.js +376 -0
  662. package/dist/test/unit/bitgo/utils/tss/keyShareEnvelope.d.ts +2 -0
  663. package/dist/test/unit/bitgo/utils/tss/keyShareEnvelope.d.ts.map +1 -0
  664. package/dist/test/unit/bitgo/utils/tss/keyShareEnvelope.js +83 -0
  665. package/dist/test/unit/bitgo/utils/tss/keyVerification.d.ts +2 -0
  666. package/dist/test/unit/bitgo/utils/tss/keyVerification.d.ts.map +1 -0
  667. package/dist/test/unit/bitgo/utils/tss/keyVerification.js +229 -0
  668. package/dist/test/unit/bitgo/utils/tss/preHashedSignable.d.ts +2 -0
  669. package/dist/test/unit/bitgo/utils/tss/preHashedSignable.d.ts.map +1 -0
  670. package/dist/test/unit/bitgo/utils/tss/preHashedSignable.js +55 -0
  671. package/dist/test/unit/bitgo/utils/tss/recipientUtils.d.ts +2 -0
  672. package/dist/test/unit/bitgo/utils/tss/recipientUtils.d.ts.map +1 -0
  673. package/dist/test/unit/bitgo/utils/tss/recipientUtils.js +512 -0
  674. package/dist/test/unit/bitgo/utils/tss/redpallas/redpallasMPCv2.d.ts +2 -0
  675. package/dist/test/unit/bitgo/utils/tss/redpallas/redpallasMPCv2.d.ts.map +1 -0
  676. package/dist/test/unit/bitgo/utils/tss/redpallas/redpallasMPCv2.js +80 -0
  677. package/dist/test/unit/bitgo/utils/tss/redpallas/smcUtil.d.ts +2 -0
  678. package/dist/test/unit/bitgo/utils/tss/redpallas/smcUtil.d.ts.map +1 -0
  679. package/dist/test/unit/bitgo/utils/tss/redpallas/smcUtil.js +279 -0
  680. package/dist/test/unit/bitgo/utils/tss/redpallasBitgoGpgKey.d.ts +2 -0
  681. package/dist/test/unit/bitgo/utils/tss/redpallasBitgoGpgKey.d.ts.map +1 -0
  682. package/dist/test/unit/bitgo/utils/tss/redpallasBitgoGpgKey.js +111 -0
  683. package/dist/test/unit/bitgo/utils/txRequest.d.ts +2 -0
  684. package/dist/test/unit/bitgo/utils/txRequest.d.ts.map +1 -0
  685. package/dist/test/unit/bitgo/utils/txRequest.js +179 -0
  686. package/dist/test/unit/bitgo/utils/wallet.d.ts +2 -0
  687. package/dist/test/unit/bitgo/utils/wallet.d.ts.map +1 -0
  688. package/dist/test/unit/bitgo/utils/wallet.js +55 -0
  689. package/dist/test/unit/bitgo/wallet/BuildParams.d.ts +2 -0
  690. package/dist/test/unit/bitgo/wallet/BuildParams.d.ts.map +1 -0
  691. package/dist/test/unit/bitgo/wallet/BuildParams.js +167 -0
  692. package/dist/test/unit/bitgo/wallet/SendTransactionRequest.js +79 -9
  693. package/dist/test/unit/bitgo/wallet/getAccountResources.d.ts +2 -0
  694. package/dist/test/unit/bitgo/wallet/getAccountResources.d.ts.map +1 -0
  695. package/dist/test/unit/bitgo/wallet/getAccountResources.js +133 -0
  696. package/dist/test/unit/bitgo/wallet/getPotentialStuckTxs.d.ts +2 -0
  697. package/dist/test/unit/bitgo/wallet/getPotentialStuckTxs.d.ts.map +1 -0
  698. package/dist/test/unit/bitgo/wallet/getPotentialStuckTxs.js +88 -0
  699. package/dist/test/unit/bitgo/wallet/getResourceDelegations.d.ts +2 -0
  700. package/dist/test/unit/bitgo/wallet/getResourceDelegations.d.ts.map +1 -0
  701. package/dist/test/unit/bitgo/wallet/getResourceDelegations.js +118 -0
  702. package/dist/test/unit/bitgo/wallet/ofcWalletAddressCreation.d.ts +2 -0
  703. package/dist/test/unit/bitgo/wallet/ofcWalletAddressCreation.d.ts.map +1 -0
  704. package/dist/test/unit/bitgo/wallet/ofcWalletAddressCreation.js +141 -0
  705. package/dist/test/unit/bitgo/wallet/ofcWalletSignTransaction.d.ts +2 -0
  706. package/dist/test/unit/bitgo/wallet/ofcWalletSignTransaction.d.ts.map +1 -0
  707. package/dist/test/unit/bitgo/wallet/ofcWalletSignTransaction.js +185 -0
  708. package/dist/test/unit/bitgo/wallet/prebuildTransactionTypes.d.ts +2 -0
  709. package/dist/test/unit/bitgo/wallet/prebuildTransactionTypes.d.ts.map +1 -0
  710. package/dist/test/unit/bitgo/wallet/prebuildTransactionTypes.js +20 -0
  711. package/dist/test/unit/bitgo/wallet/resourceManagement.d.ts +3 -0
  712. package/dist/test/unit/bitgo/wallet/resourceManagement.d.ts.map +1 -0
  713. package/dist/test/unit/bitgo/wallet/resourceManagement.js +441 -0
  714. package/dist/test/unit/bitgo/wallet/safeGetUserPrv.d.ts +5 -0
  715. package/dist/test/unit/bitgo/wallet/safeGetUserPrv.d.ts.map +1 -0
  716. package/dist/test/unit/bitgo/wallet/safeGetUserPrv.js +651 -0
  717. package/dist/test/unit/bitgo/wallet/safeShareWallet.d.ts +9 -0
  718. package/dist/test/unit/bitgo/wallet/safeShareWallet.d.ts.map +1 -0
  719. package/dist/test/unit/bitgo/wallet/safeShareWallet.js +304 -0
  720. package/dist/test/unit/bitgo/wallet/tokenApproval.d.ts +2 -0
  721. package/dist/test/unit/bitgo/wallet/tokenApproval.d.ts.map +1 -0
  722. package/dist/test/unit/bitgo/wallet/tokenApproval.js +210 -0
  723. package/dist/test/unit/bitgo/wallet/walletEvmAddressCreation.d.ts +2 -0
  724. package/dist/test/unit/bitgo/wallet/walletEvmAddressCreation.d.ts.map +1 -0
  725. package/dist/test/unit/bitgo/wallet/walletEvmAddressCreation.js +181 -0
  726. package/dist/test/unit/bitgo/wallet/walletOptionsCodecs.d.ts +2 -0
  727. package/dist/test/unit/bitgo/wallet/walletOptionsCodecs.d.ts.map +1 -0
  728. package/dist/test/unit/bitgo/wallet/walletOptionsCodecs.js +69 -0
  729. package/dist/test/unit/bitgo/wallet/walletTssAddressVerification.d.ts +2 -0
  730. package/dist/test/unit/bitgo/wallet/walletTssAddressVerification.d.ts.map +1 -0
  731. package/dist/test/unit/bitgo/wallet/walletTssAddressVerification.js +320 -0
  732. package/dist/test/unit/bitgo/wallet/walletVerifyKey.d.ts +2 -0
  733. package/dist/test/unit/bitgo/wallet/walletVerifyKey.d.ts.map +1 -0
  734. package/dist/test/unit/bitgo/wallet/walletVerifyKey.js +160 -0
  735. package/dist/test/unit/bitgo/wallet/walletsEncryptionVersion.d.ts +2 -0
  736. package/dist/test/unit/bitgo/wallet/walletsEncryptionVersion.d.ts.map +1 -0
  737. package/dist/test/unit/bitgo/wallet/walletsEncryptionVersion.js +304 -0
  738. package/dist/test/unit/bitgo/wallet/walletsEvmKeyring.d.ts +2 -0
  739. package/dist/test/unit/bitgo/wallet/walletsEvmKeyring.d.ts.map +1 -0
  740. package/dist/test/unit/bitgo/wallet/walletsEvmKeyring.js +216 -0
  741. package/dist/test/unit/bitgo/wallet/walletsExternalSigner.d.ts +2 -0
  742. package/dist/test/unit/bitgo/wallet/walletsExternalSigner.d.ts.map +1 -0
  743. package/dist/test/unit/bitgo/wallet/walletsExternalSigner.js +853 -0
  744. package/dist/test/unit/bitgo/wallet/walletsGoAccount.d.ts +2 -0
  745. package/dist/test/unit/bitgo/wallet/walletsGoAccount.d.ts.map +1 -0
  746. package/dist/test/unit/bitgo/wallet/walletsGoAccount.js +150 -0
  747. package/dist/test/unit/bitgo/wallet/walletsWebauthn.d.ts +2 -0
  748. package/dist/test/unit/bitgo/wallet/walletsWebauthn.d.ts.map +1 -0
  749. package/dist/test/unit/bitgo/wallet/walletsWebauthn.js +201 -0
  750. package/dist/test/unit/coins/ofc.d.ts +2 -0
  751. package/dist/test/unit/coins/ofc.d.ts.map +1 -0
  752. package/dist/test/unit/coins/ofc.js +124 -0
  753. package/dist/test/unit/lightning.d.ts +2 -0
  754. package/dist/test/unit/lightning.d.ts.map +1 -0
  755. package/dist/test/unit/lightning.js +23 -0
  756. package/dist/test/unit/units.d.ts.map +1 -1
  757. package/dist/test/unit/units.js +64 -64
  758. package/dist/tsconfig.tsbuildinfo +1 -1
  759. package/package.json +25 -22
  760. package/.eslintignore +0 -5
  761. package/CHANGELOG.md +0 -1866
  762. package/dist/src/account-lib/baseCoin/blsKeyPair.d.ts +0 -77
  763. package/dist/src/account-lib/baseCoin/blsKeyPair.d.ts.map +0 -1
  764. package/dist/src/account-lib/baseCoin/blsKeyPair.js +0 -209
  765. package/dist/src/account-lib/util/ed25519KeyDeriver.d.ts +0 -49
  766. package/dist/src/account-lib/util/ed25519KeyDeriver.d.ts.map +0 -1
  767. package/dist/src/account-lib/util/ed25519KeyDeriver.js +0 -87
  768. package/dist/src/bitgo/lightning/iLightning.d.ts +0 -186
  769. package/dist/src/bitgo/lightning/iLightning.d.ts.map +0 -1
  770. package/dist/src/bitgo/lightning/iLightning.js +0 -106
  771. package/dist/src/bitgo/lightning/index.d.ts +0 -5
  772. package/dist/src/bitgo/lightning/index.d.ts.map +0 -1
  773. package/dist/src/bitgo/lightning/index.js +0 -17
  774. package/dist/src/bitgo/lightning/lightning.d.ts +0 -25
  775. package/dist/src/bitgo/lightning/lightning.d.ts.map +0 -1
  776. package/dist/src/bitgo/lightning/lightning.js +0 -111
  777. package/dist/src/bitgo/lightning/lightningUtils.d.ts +0 -46
  778. package/dist/src/bitgo/lightning/lightningUtils.d.ts.map +0 -1
  779. package/dist/src/bitgo/lightning/lightningUtils.js +0 -133
  780. package/dist/src/bitgo/lightning/lnurlCodec.d.ts +0 -3
  781. package/dist/src/bitgo/lightning/lnurlCodec.d.ts.map +0 -1
  782. package/dist/src/bitgo/lightning/lnurlCodec.js +0 -28
  783. package/dist/src/bitgo/utils/blsUtils.d.ts +0 -52
  784. package/dist/src/bitgo/utils/blsUtils.d.ts.map +0 -1
  785. package/dist/src/bitgo/utils/blsUtils.js +0 -237
  786. package/dist/src/bitgo/utils/iBlsUtils.d.ts +0 -14
  787. package/dist/src/bitgo/utils/iBlsUtils.d.ts.map +0 -1
  788. package/dist/src/bitgo/utils/iBlsUtils.js +0 -3
  789. package/dist/src/coins/fiateur.d.ts +0 -31
  790. package/dist/src/coins/fiateur.d.ts.map +0 -1
  791. package/dist/src/coins/fiateur.js +0 -57
  792. package/dist/src/coins/fiatgbp.d.ts +0 -31
  793. package/dist/src/coins/fiatgbp.d.ts.map +0 -1
  794. package/dist/src/coins/fiatgbp.js +0 -57
  795. package/dist/src/coins/fiatusd.d.ts +0 -31
  796. package/dist/src/coins/fiatusd.d.ts.map +0 -1
  797. package/dist/src/coins/fiatusd.js +0 -57
  798. package/dist/src/coins/tfiateur.d.ts +0 -11
  799. package/dist/src/coins/tfiateur.d.ts.map +0 -1
  800. package/dist/src/coins/tfiateur.js +0 -17
  801. package/dist/src/coins/tfiatgbp.d.ts +0 -11
  802. package/dist/src/coins/tfiatgbp.d.ts.map +0 -1
  803. package/dist/src/coins/tfiatgbp.js +0 -17
  804. package/dist/src/coins/tfiatusd.d.ts +0 -11
  805. package/dist/src/coins/tfiatusd.d.ts.map +0 -1
  806. package/dist/src/coins/tfiatusd.js +0 -17
  807. package/dist/src/openssl/index.d.ts +0 -5
  808. package/dist/src/openssl/index.d.ts.map +0 -1
  809. package/dist/src/openssl/index.js +0 -9
  810. package/dist/test/unit/openssl.d.ts +0 -2
  811. package/dist/test/unit/openssl.d.ts.map +0 -1
  812. package/dist/test/unit/openssl.js +0 -39
@@ -1,4 +1,8 @@
1
1
  import { BitGoJsError } from '../bitgojsError';
2
+ import { IRequestTracer } from '../api/types';
3
+ import { TransactionParams } from './baseCoin';
4
+ import { IBaseCoin } from './baseCoin/iBaseCoin';
5
+ import { SendManyOptions } from './wallet';
2
6
  export { BitGoJsError };
3
7
  export declare class TlsConfigurationError extends BitGoJsError {
4
8
  constructor(message?: string);
@@ -9,6 +13,9 @@ export declare class NodeEnvironmentError extends BitGoJsError {
9
13
  export declare class UnsupportedCoinError extends BitGoJsError {
10
14
  constructor(coin: string);
11
15
  }
16
+ export declare class SafeMpcCeremonyUnsupportedError extends BitGoJsError {
17
+ constructor(coinFamily: string);
18
+ }
12
19
  export declare class AddressTypeChainMismatchError extends BitGoJsError {
13
20
  constructor(addressType: string, chain: number | string);
14
21
  }
@@ -67,20 +74,205 @@ export declare class StellarFederationUserNotFoundError extends BitGoJsError {
67
74
  constructor(message?: string);
68
75
  }
69
76
  export declare class ErrorNoInputToRecover extends BitGoJsError {
77
+ code: string;
78
+ constructor(message?: string);
79
+ }
80
+ export declare class RecoveryKeyMismatchError extends BitGoJsError {
81
+ code: string;
70
82
  constructor(message?: string);
71
83
  }
84
+ export declare class RecoveryProviderError extends BitGoJsError {
85
+ code: string;
86
+ cause?: unknown;
87
+ constructor(message?: string, cause?: unknown);
88
+ }
72
89
  export declare class InvalidKeyPathError extends BitGoJsError {
73
90
  constructor(keyPath: string);
74
91
  }
75
92
  export declare class InvalidTransactionError extends BitGoJsError {
76
93
  constructor(message?: string);
77
94
  }
95
+ export declare class MissingEncryptedKeychainError extends Error {
96
+ constructor(message?: string);
97
+ }
98
+ export declare class IncorrectPasswordError extends Error {
99
+ code: string;
100
+ status: number;
101
+ cause?: unknown;
102
+ constructor(message?: string, cause?: unknown);
103
+ }
104
+ export declare class NeedUserSignupError extends BitGoJsError {
105
+ constructor(message?: string);
106
+ }
78
107
  export declare class ApiResponseError<ResponseBodyType = any> extends BitGoJsError {
79
108
  message: string;
80
109
  status: number;
81
110
  result?: ResponseBodyType;
82
111
  invalidToken?: boolean;
83
112
  needsOTP?: boolean;
84
- constructor(message: string, status: number, result?: ResponseBodyType, invalidToken?: boolean, needsOTP?: boolean);
113
+ requestId?: string;
114
+ constructor(message: string, status: number, result?: ResponseBodyType, invalidToken?: boolean, needsOTP?: boolean, requestId?: string);
115
+ }
116
+ /**
117
+ * Interface for token approval information used in suspicious transaction detection
118
+ *
119
+ * @interface TokenApproval
120
+ * @property {string} [tokenName] - Optional human-readable name of the token
121
+ * @property {string} tokenAddress - The contract address of the token being approved
122
+ * @property {Object} authorizingAmount - The amount being authorized for spending
123
+ * @property {string} authorizingAddress - The address being authorized to spend the tokens
124
+ */
125
+ export interface TokenApproval {
126
+ tokenName?: string;
127
+ tokenAddress: string;
128
+ authorizingAmount: {
129
+ type: 'unlimited';
130
+ } | {
131
+ type: 'limited';
132
+ amount: number;
133
+ };
134
+ authorizingAddress: string;
135
+ }
136
+ /**
137
+ * Interface for mismatched recipient information detected during transaction verification
138
+ *
139
+ * @interface MismatchedRecipient
140
+ * @property {string} address - The recipient address that was found in the transaction
141
+ * @property {string} amount - The amount being sent to this recipient
142
+ * @property {string | TokenTransferRecipientParams} [data] - Optional transaction data or token transfer parameters
143
+ * @property {string} [tokenName] - Optional name of the token being transferred
144
+ * @property {TokenTransferRecipientParams} [tokenData] - Optional structured token transfer data
145
+ */
146
+ export type MismatchedRecipient = NonNullable<SendManyOptions['recipients']>[0];
147
+ /**
148
+ * Interface for contract interaction data payload used in suspicious transaction detection
149
+ *
150
+ * @interface ContractDataPayload
151
+ * @property {string} address - The contract address being interacted with
152
+ * @property {string} rawContractPayload - The raw contract payload in serialized form specific to the blockchain
153
+ * @property {unknown} decodedContractPayload - The decoded contract payload, structure varies by coin/chain implementation
154
+ */
155
+ export interface ContractDataPayload {
156
+ address: string;
157
+ rawContractPayload: string;
158
+ decodedContractPayload: unknown;
159
+ }
160
+ /**
161
+ * Base error class for transaction intent mismatch detection
162
+ *
163
+ * This error is thrown when a transaction does not match the user's original intent,
164
+ * indicating potential security issues or malicious modifications.
165
+ *
166
+ * @class TxIntentMismatchError
167
+ * @extends {BitGoJsError}
168
+ * @property {string | IRequestTracer | undefined} id - Transaction ID or request tracer for tracking
169
+ * @property {TransactionParams[]} txParams - Array of transaction parameters that were analyzed
170
+ * @property {string | undefined} txHex - The raw transaction in hexadecimal format
171
+ * @property {string | undefined} txExplanation - Stringified transaction explanation
172
+ */
173
+ export declare class TxIntentMismatchError extends BitGoJsError {
174
+ readonly id: string | IRequestTracer | undefined;
175
+ readonly txParams: TransactionParams[];
176
+ readonly txHex: string | undefined;
177
+ readonly txExplanation: string | undefined;
178
+ /**
179
+ * Creates an instance of TxIntentMismatchError
180
+ *
181
+ * @param {string} message - Error message describing the intent mismatch
182
+ * @param {string | IRequestTracer | undefined} id - Transaction ID or request tracer
183
+ * @param {TransactionParams[]} txParams - Transaction parameters that were analyzed
184
+ * @param {string | undefined} txHex - Raw transaction hex string
185
+ * @param {unknown} txExplanation - Transaction explanation
186
+ */
187
+ constructor(message: string, id: string | IRequestTracer | undefined, txParams: TransactionParams[], txHex: string | undefined, txExplanation?: unknown);
188
+ /**
189
+ * Safely stringify a value with BigInt support
190
+ * @param value - Value to stringify
191
+ * @returns JSON string with BigInts converted to strings
192
+ */
193
+ private static safeStringify;
194
+ /**
195
+ * Try to get transaction explanation from a coin's explainTransaction method.
196
+ *
197
+ * @param coin - Coin instance implementing IBaseCoin
198
+ * @param txPrebuild - Transaction prebuild containing txHex and txInfo
199
+ * @returns Transaction explanation object or undefined
200
+ */
201
+ static tryGetTxExplanation(coin: IBaseCoin, txPrebuild: {
202
+ txHex?: string;
203
+ txInfo?: unknown;
204
+ }): Promise<unknown>;
205
+ }
206
+ /**
207
+ * Error thrown when transaction recipients don't match the user's intent
208
+ *
209
+ * This error occurs when the transaction contains recipients or amounts that differ
210
+ * from what the user originally intended to send.
211
+ *
212
+ * @class TxIntentMismatchRecipientError
213
+ * @extends {TxIntentMismatchError}
214
+ * @property {MismatchedRecipient[]} mismatchedRecipients - Array of recipients that don't match user intent
215
+ */
216
+ export declare class TxIntentMismatchRecipientError extends TxIntentMismatchError {
217
+ readonly mismatchedRecipients: MismatchedRecipient[];
218
+ /**
219
+ * Creates an instance of TxIntentMismatchRecipientError
220
+ *
221
+ * @param {string} message - Error message describing the recipient intent mismatch
222
+ * @param {string | IRequestTracer | undefined} id - Transaction ID or request tracer
223
+ * @param {TransactionParams[]} txParams - Transaction parameters that were analyzed
224
+ * @param {string | undefined} txHex - Raw transaction hex string
225
+ * @param {MismatchedRecipient[]} mismatchedRecipients - Array of recipients that don't match user intent
226
+ * @param {unknown} txExplanation - Transaction explanation
227
+ */
228
+ constructor(message: string, id: string | IRequestTracer | undefined, txParams: TransactionParams[], txHex: string | undefined, mismatchedRecipients: MismatchedRecipient[], txExplanation?: unknown);
229
+ }
230
+ /**
231
+ * Error thrown when contract interaction doesn't match the user's intent
232
+ *
233
+ * This error occurs when a transaction interacts with a smart contract but the
234
+ * contract call data or method doesn't match what the user intended.
235
+ *
236
+ * @class TxIntentMismatchContractError
237
+ * @extends {TxIntentMismatchError}
238
+ * @property {ContractDataPayload} mismatchedDataPayload - The contract interaction data that doesn't match user intent
239
+ */
240
+ export declare class TxIntentMismatchContractError extends TxIntentMismatchError {
241
+ readonly mismatchedDataPayload: ContractDataPayload;
242
+ /**
243
+ * Creates an instance of TxIntentMismatchContractError
244
+ *
245
+ * @param {string} message - Error message describing the contract intent mismatch
246
+ * @param {string | IRequestTracer | undefined} id - Transaction ID or request tracer
247
+ * @param {TransactionParams[]} txParams - Transaction parameters that were analyzed
248
+ * @param {string | undefined} txHex - Raw transaction hex string
249
+ * @param {ContractDataPayload} mismatchedDataPayload - The contract interaction data that doesn't match user intent
250
+ * @param {unknown} txExplanation - Transaction explanation
251
+ */
252
+ constructor(message: string, id: string | IRequestTracer | undefined, txParams: TransactionParams[], txHex: string | undefined, mismatchedDataPayload: ContractDataPayload, txExplanation?: unknown);
253
+ }
254
+ /**
255
+ * Error thrown when token approval doesn't match the user's intent
256
+ *
257
+ * This error occurs when a transaction contains a token approval that the user
258
+ * did not intend to authorize, potentially indicating malicious activity.
259
+ *
260
+ * @class TxIntentMismatchApprovalError
261
+ * @extends {TxIntentMismatchError}
262
+ * @property {TokenApproval} tokenApproval - Details of the token approval that doesn't match user intent
263
+ */
264
+ export declare class TxIntentMismatchApprovalError extends TxIntentMismatchError {
265
+ readonly tokenApproval: TokenApproval;
266
+ /**
267
+ * Creates an instance of TxIntentMismatchApprovalError
268
+ *
269
+ * @param {string} message - Error message describing the approval intent mismatch
270
+ * @param {string | IRequestTracer | undefined} id - Transaction ID or request tracer
271
+ * @param {TransactionParams[]} txParams - Transaction parameters that were analyzed
272
+ * @param {string | undefined} txHex - Raw transaction hex string
273
+ * @param {TokenApproval} tokenApproval - Details of the token approval that doesn't match user intent
274
+ * @param {unknown} txExplanation - Transaction explanation
275
+ */
276
+ constructor(message: string, id: string | IRequestTracer | undefined, txParams: TransactionParams[], txHex: string | undefined, tokenApproval: TokenApproval, txExplanation?: unknown);
85
277
  }
86
278
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/bitgo/errors.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,OAAO,EAAE,YAAY,EAAE,CAAC;AAExB,qBAAa,qBAAsB,SAAQ,YAAY;gBAClC,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,oBAAqB,SAAQ,YAAY;gBACjC,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,oBAAqB,SAAQ,YAAY;gBACjC,IAAI,EAAE,MAAM;CAKhC;AAED,qBAAa,6BAA8B,SAAQ,YAAY;gBACjD,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;CAGxD;AAED,qBAAa,yBAA0B,SAAQ,YAAY;gBAC7C,OAAO,CAAC,EAAE,MAAM;CAG7B;AAED,qBAAa,qBAAsB,SAAQ,YAAY;gBAClC,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,oBAAqB,SAAQ,YAAY;gBACjC,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,0BAA2B,SAAQ,YAAY;gBACvC,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,2BAA4B,SAAQ,YAAY;gBACxC,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,mBAAoB,SAAQ,YAAY;gBAChC,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,6CAA8C,SAAQ,YAAY;gBAC1D,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,sBAAuB,SAAQ,YAAY;gBACnC,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,qCAAsC,SAAQ,YAAY;gBAClD,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,yBAA0B,SAAQ,YAAY;gBACtC,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,yBAA0B,SAAQ,YAAY;gBACtC,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,wBAAyB,SAAQ,YAAY;gBACrC,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,kBAAmB,SAAQ,mBAAmB;gBACtC,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,qBAAsB,SAAQ,mBAAmB;gBACzC,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,uBAAwB,SAAQ,YAAY;gBACpC,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,sBAAuB,SAAQ,YAAY;gBACnC,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,+BAAgC,SAAQ,YAAY;gBAC5C,WAAW,EAAE,MAAM;CAGvC;AAED,qBAAa,kCAAmC,SAAQ,YAAY;gBAC/C,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,qBAAsB,SAAQ,YAAY;gBAClC,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,mBAAoB,SAAQ,YAAY;gBAChC,OAAO,EAAE,MAAM;CAGnC;AAED,qBAAa,uBAAwB,SAAQ,YAAY;gBACpC,OAAO,CAAC,EAAE,MAAM;CAGpC;AAED,qBAAa,gBAAgB,CAAC,gBAAgB,GAAG,GAAG,CAAE,SAAQ,YAAY;IACxE,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;gBAGjB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,gBAAgB,EACzB,YAAY,CAAC,EAAE,OAAO,EACtB,QAAQ,CAAC,EAAE,OAAO;CASrB"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/bitgo/errors.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ApiResponseError = exports.InvalidTransactionError = exports.InvalidKeyPathError = exports.ErrorNoInputToRecover = exports.StellarFederationUserNotFoundError = exports.EthereumLibraryUnavailableError = exports.AddressGenerationError = exports.KeyRecoveryServiceError = exports.InvalidPaymentIdError = exports.InvalidMemoIdError = exports.BlockExplorerUnavailable = exports.MethodNotImplementedError = exports.WalletRecoveryUnsupported = exports.InvalidAddressDerivationPropertyError = exports.UnexpectedAddressError = exports.InvalidAddressVerificationObjectPropertyError = exports.InvalidAddressError = exports.UnsupportedAddressTypeError = exports.P2trMusig2UnsupportedError = exports.P2trUnsupportedError = exports.P2wshUnsupportedError = exports.P2shP2wshUnsupportedError = exports.AddressTypeChainMismatchError = exports.UnsupportedCoinError = exports.NodeEnvironmentError = exports.TlsConfigurationError = exports.BitGoJsError = void 0;
3
+ exports.TxIntentMismatchApprovalError = exports.TxIntentMismatchContractError = exports.TxIntentMismatchRecipientError = exports.TxIntentMismatchError = exports.ApiResponseError = exports.NeedUserSignupError = exports.IncorrectPasswordError = exports.MissingEncryptedKeychainError = exports.InvalidTransactionError = exports.InvalidKeyPathError = exports.RecoveryProviderError = exports.RecoveryKeyMismatchError = exports.ErrorNoInputToRecover = exports.StellarFederationUserNotFoundError = exports.EthereumLibraryUnavailableError = exports.AddressGenerationError = exports.KeyRecoveryServiceError = exports.InvalidPaymentIdError = exports.InvalidMemoIdError = exports.BlockExplorerUnavailable = exports.MethodNotImplementedError = exports.WalletRecoveryUnsupported = exports.InvalidAddressDerivationPropertyError = exports.UnexpectedAddressError = exports.InvalidAddressVerificationObjectPropertyError = exports.InvalidAddressError = exports.UnsupportedAddressTypeError = exports.P2trMusig2UnsupportedError = exports.P2trUnsupportedError = exports.P2wshUnsupportedError = exports.P2shP2wshUnsupportedError = exports.AddressTypeChainMismatchError = exports.SafeMpcCeremonyUnsupportedError = exports.UnsupportedCoinError = exports.NodeEnvironmentError = exports.TlsConfigurationError = exports.BitGoJsError = void 0;
4
4
  // Descriptive error types for common issues which may arise
5
5
  // during the operation of BitGoJS or BitGoExpress
6
6
  const bitgojsError_1 = require("../bitgojsError");
@@ -23,6 +23,12 @@ class UnsupportedCoinError extends bitgojsError_1.BitGoJsError {
23
23
  }
24
24
  }
25
25
  exports.UnsupportedCoinError = UnsupportedCoinError;
26
+ class SafeMpcCeremonyUnsupportedError extends bitgojsError_1.BitGoJsError {
27
+ constructor(coinFamily) {
28
+ super(`Cannot create Wallet Safe root keys for coin family '${coinFamily}': its TSS settings resolve to the legacy MPCv1 ceremony, which does not support safe root tagging (safeId). Enable MPCv2 for '${coinFamily}' before creating a safe with this root type.`);
29
+ }
30
+ }
31
+ exports.SafeMpcCeremonyUnsupportedError = SafeMpcCeremonyUnsupportedError;
26
32
  class AddressTypeChainMismatchError extends bitgojsError_1.BitGoJsError {
27
33
  constructor(addressType, chain) {
28
34
  super(`address type ${addressType} does not correspond to chain ${chain}`);
@@ -140,9 +146,25 @@ exports.StellarFederationUserNotFoundError = StellarFederationUserNotFoundError;
140
146
  class ErrorNoInputToRecover extends bitgojsError_1.BitGoJsError {
141
147
  constructor(message) {
142
148
  super(message || 'No input to recover - aborting!');
149
+ this.code = 'no_input_to_recover';
143
150
  }
144
151
  }
145
152
  exports.ErrorNoInputToRecover = ErrorNoInputToRecover;
153
+ class RecoveryKeyMismatchError extends bitgojsError_1.BitGoJsError {
154
+ constructor(message) {
155
+ super(message || 'recovery keys do not match the wallet on-chain signer set');
156
+ this.code = 'recovery_key_mismatch';
157
+ }
158
+ }
159
+ exports.RecoveryKeyMismatchError = RecoveryKeyMismatchError;
160
+ class RecoveryProviderError extends bitgojsError_1.BitGoJsError {
161
+ constructor(message, cause) {
162
+ super(message || 'Unable to reach the chain provider while attempting recovery.');
163
+ this.code = 'recovery_provider_failed';
164
+ this.cause = cause;
165
+ }
166
+ }
167
+ exports.RecoveryProviderError = RecoveryProviderError;
146
168
  class InvalidKeyPathError extends bitgojsError_1.BitGoJsError {
147
169
  constructor(keyPath) {
148
170
  super(`invalid keypath: ${keyPath}`);
@@ -155,15 +177,184 @@ class InvalidTransactionError extends bitgojsError_1.BitGoJsError {
155
177
  }
156
178
  }
157
179
  exports.InvalidTransactionError = InvalidTransactionError;
180
+ class MissingEncryptedKeychainError extends Error {
181
+ constructor(message) {
182
+ super(message || 'No encrypted keychains on this wallet.');
183
+ }
184
+ }
185
+ exports.MissingEncryptedKeychainError = MissingEncryptedKeychainError;
186
+ class IncorrectPasswordError extends Error {
187
+ constructor(message, cause) {
188
+ super(message || 'unable to decrypt keychain with the given wallet passphrase');
189
+ this.code = 'wallet_passphrase_incorrect';
190
+ this.status = 401;
191
+ this.name = 'IncorrectPasswordError';
192
+ this.cause = cause;
193
+ }
194
+ }
195
+ exports.IncorrectPasswordError = IncorrectPasswordError;
196
+ class NeedUserSignupError extends bitgojsError_1.BitGoJsError {
197
+ constructor(message) {
198
+ super(message || 'User signup is required');
199
+ }
200
+ }
201
+ exports.NeedUserSignupError = NeedUserSignupError;
158
202
  class ApiResponseError extends bitgojsError_1.BitGoJsError {
159
- constructor(message, status, result, invalidToken, needsOTP) {
203
+ constructor(message, status, result, invalidToken, needsOTP, requestId) {
160
204
  super(message);
161
205
  this.message = message;
162
206
  this.status = status;
163
207
  this.result = result;
164
208
  this.invalidToken = invalidToken;
165
209
  this.needsOTP = needsOTP;
210
+ this.requestId = requestId;
166
211
  }
167
212
  }
168
213
  exports.ApiResponseError = ApiResponseError;
169
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JpdGdvL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw0REFBNEQ7QUFDNUQsa0RBQWtEO0FBQ2xELGtEQUErQztBQUd0Qyw2RkFIQSwyQkFBWSxPQUdBO0FBRXJCLE1BQWEscUJBQXNCLFNBQVEsMkJBQVk7SUFDckQsWUFBbUIsT0FBZ0I7UUFDakMsS0FBSyxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7Q0FDRjtBQUpELHNEQUlDO0FBRUQsTUFBYSxvQkFBcUIsU0FBUSwyQkFBWTtJQUNwRCxZQUFtQixPQUFnQjtRQUNqQyxLQUFLLENBQUMsT0FBTyxJQUFJLHVEQUF1RCxDQUFDLENBQUM7SUFDNUUsQ0FBQztDQUNGO0FBSkQsb0RBSUM7QUFFRCxNQUFhLG9CQUFxQixTQUFRLDJCQUFZO0lBQ3BELFlBQW1CLElBQVk7UUFDN0IsS0FBSyxDQUNILHNCQUFzQixJQUFJLHFLQUFxSyxJQUFJLFNBQVMsQ0FDN00sQ0FBQztJQUNKLENBQUM7Q0FDRjtBQU5ELG9EQU1DO0FBRUQsTUFBYSw2QkFBOEIsU0FBUSwyQkFBWTtJQUM3RCxZQUFZLFdBQW1CLEVBQUUsS0FBc0I7UUFDckQsS0FBSyxDQUFDLGdCQUFnQixXQUFXLGlDQUFpQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzdFLENBQUM7Q0FDRjtBQUpELHNFQUlDO0FBRUQsTUFBYSx5QkFBMEIsU0FBUSwyQkFBWTtJQUN6RCxZQUFZLE9BQWdCO1FBQzFCLEtBQUssQ0FBQyxPQUFPLElBQUksc0NBQXNDLENBQUMsQ0FBQztJQUMzRCxDQUFDO0NBQ0Y7QUFKRCw4REFJQztBQUVELE1BQWEscUJBQXNCLFNBQVEsMkJBQVk7SUFDckQsWUFBbUIsT0FBZ0I7UUFDakMsS0FBSyxDQUFDLE9BQU8sSUFBSSxrQ0FBa0MsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7Q0FDRjtBQUpE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LEtBQUssQ0FBQyxPQUFPLElBQUksbUJBQW1CLENBQUMsQ0FBQztJQUN4QyxDQUFDO0NBQ0Y7QUFKRCxnRkFJQztBQUVELE1BQWEscUJBQXNCLFNBQVEsMkJBQVk7SUFDckQsWUFBbUIsT0FBZ0I7UUFDakMsS0FBSyxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7Q0FDRjtBQUpELHNEQUlDO0FBRUQsTUFBYSxtQkFBb0IsU0FBUSwyQkFBWTtJQUNuRCxZQUFtQixPQUFlO1FBQ2hDLEtBQUssQ0FBQyxvQkFBb0IsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUN2QyxDQUFDO0NBQ0Y7QUFKRCxrREFJQztBQUVELE1BQWEsdUJBQXdCLFNBQVEsMkJBQVk7SUFDdkQsWUFBbUIsT0FBZ0I7UUFDakMsS0FBSyxDQUFDLE9BQU8sSUFBSSxxQkFBcUIsQ0FBQyxDQUFDO0lBQzFDLENBQUM7Q0FDRjtBQUpELDBEQUlDO0FBRUQsTUFBYSxnQkFBeUMsU0FBUSwyQkFBWTtJQU94RSxZQUNFLE9BQWUsRUFDZixNQUFjLEVBQ2QsTUFBeUIsRUFDekIsWUFBc0IsRUFDdEIsUUFBa0I7UUFFbEIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7UUFDakMsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDM0IsQ0FBQztDQUNGO0FBckJELDRDQXFCQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIERlc2NyaXB0aXZlIGVycm9yIHR5cGVzIGZvciBjb21tb24gaXNzdWVzIHdoaWNoIG1heSBhcmlzZVxuLy8gZHVyaW5nIHRoZSBvcGVyYXRpb24gb2YgQml0R29KUyBvciBCaXRHb0V4cHJlc3NcbmltcG9ydCB7IEJpdEdvSnNFcnJvciB9IGZyb20gJy4uL2JpdGdvanNFcnJvcic7XG5cbi8vIHJlLWV4cG9ydCBmb3IgYmFja3dhcmRzIGNvbXBhdFxuZXhwb3J0IHsgQml0R29Kc0Vycm9yIH07XG5cbmV4cG9ydCBjbGFzcyBUbHNDb25maWd1cmF0aW9uRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ1RMUyBpcyBjb25maWd1cmF0aW9uIGlzIGludmFsaWQnKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgTm9kZUVudmlyb25tZW50RXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ05PREVfRU5WIGlzIGludmFsaWQgZm9yIHRoZSBjdXJyZW50IGJpdGdvIGVudmlyb25tZW50Jyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFVuc3VwcG9ydGVkQ29pbkVycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKGNvaW46IHN0cmluZykge1xuICAgIHN1cGVyKFxuICAgICAgYENvaW4gb3IgdG9rZW4gdHlwZSAke2NvaW59IG5vdCBzdXBwb3J0ZWQgb3Igbm90IGNvbXBpbGVkLiBQbGVhc2UgYmUgc3VyZSB0aGF0IHlvdSBhcmUgdXNpbmcgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIEJpdEdvSlMuIElmIHVzaW5nIEBiaXRnby1iZXRhL3Nkay1hcGksIHBsZWFzZSBjb25maXJtIHlvdSBoYXZlIHJlZ2lzdGVyZWQgJHtjb2lufSBmaXJzdC5gXG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQWRkcmVzc1R5cGVDaGFpbk1pc21hdGNoRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihhZGRyZXNzVHlwZTogc3RyaW5nLCBjaGFpbjogbnVtYmVyIHwgc3RyaW5nKSB7XG4gICAgc3VwZXIoYGFkZHJlc3MgdHlwZSAke2FkZHJlc3NUeXBlfSBkb2VzIG5vdCBjb3JyZXNwb25kIHRvIGNoYWluICR7Y2hhaW59YCk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFAyc2hQMndzaFVuc3VwcG9ydGVkRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAncDJzaFAyd3NoIG5vdCBzdXBwb3J0ZWQgYnkgdGhpcyBjb2luJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFAyd3NoVW5zdXBwb3J0ZWRFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAncDJ3c2ggbm90IHN1cHBvcnRlZCBieSB0aGlzIGNvaW4nKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUDJ0clVuc3VwcG9ydGVkRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ3AydHIgbm90IHN1cHBvcnRlZCBieSB0aGlzIGNvaW4nKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUDJ0ck11c2lnMlVuc3VwcG9ydGVkRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ3AydHJNdXNpZzIgbm90IHN1cHBvcnRlZCBieSB0aGlzIGNvaW4nKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgVW5zdXBwb3J0ZWRBZGRyZXNzVHlwZUVycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICdpbnZhbGlkIGFkZHJlc3MgdHlwZScpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBJbnZhbGlkQWRkcmVzc0Vycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICdpbnZhbGlkIGFkZHJlc3MnKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgSW52YWxpZEFkZHJlc3NWZXJpZmljYXRpb25PYmplY3RQcm9wZXJ0eUVycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICdhZGRyZXNzIHZhbGlkYXRpb24gZmFpbHVyZScpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBVbmV4cGVjdGVkQWRkcmVzc0Vycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICdhZGRyZXNzIHZhbGlkYXRpb24gZmFpbHVyZScpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBJbnZhbGlkQWRkcmVzc0Rlcml2YXRpb25Qcm9wZXJ0eUVycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICdhZGRyZXNzIGNoYWluIGFuZC9vciBpbmRleCBhcmUgaW52YWxpZCcpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBXYWxsZXRSZWNvdmVyeVVuc3VwcG9ydGVkIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICd3YWxsZXQgcmVjb3ZlcnkgaXMgbm90IHN1cHBvcnRlZCBieSB0aGlzIGNvaW4nKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgTWV0aG9kTm90SW1wbGVtZW50ZWRFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnbWV0aG9kIG5vdCBpbXBsZW1lbnRlZCcpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBCbG9ja0V4cGxvcmVyVW5hdmFpbGFibGUgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ3RoaXJkLXBhcnR5IGJsb2NrZXhwbG9yZXIgbm90IHJlc3BvbmRpbmcnKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgSW52YWxpZE1lbW9JZEVycm9yIGV4dGVuZHMgSW52YWxpZEFkZHJlc3NFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnaW52YWxpZCBtZW1vIGlkJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEludmFsaWRQYXltZW50SWRFcnJvciBleHRlbmRzIEludmFsaWRBZGRyZXNzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ2ludmFsaWQgcGF5bWVudCBpZCcpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBLZXlSZWNvdmVyeVNlcnZpY2VFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAna2V5IHJlY292ZXJ5IHNlcnZpY2UgZW5jb3VudGVyZWQgYW4gZXJyb3InKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQWRkcmVzc0dlbmVyYXRpb25FcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnYWRkcmVzcyBnZW5lcmF0aW9uIGZhaWxlZCcpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBFdGhlcmV1bUxpYnJhcnlVbmF2YWlsYWJsZUVycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKHBhY2thZ2VOYW1lOiBzdHJpbmcpIHtcbiAgICBzdXBlcihgRXRoZXJldW0gbGlicmFyeSByZXF1aXJlZCBmb3Igb3BlcmF0aW9uIGlzIG5vdCBhdmFpbGFibGUuIFBsZWFzZSBpbnN0YWxsIFwiJHtwYWNrYWdlTmFtZX1cIi5gKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgU3RlbGxhckZlZGVyYXRpb25Vc2VyTm90Rm91bmRFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnYWNjb3VudCBub3QgZm91bmQnKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRXJyb3JOb0lucHV0VG9SZWNvdmVyIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICdObyBpbnB1dCB0byByZWNvdmVyIC0gYWJvcnRpbmchJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEludmFsaWRLZXlQYXRoRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3Ioa2V5UGF0aDogc3RyaW5nKSB7XG4gICAgc3VwZXIoYGludmFsaWQga2V5cGF0aDogJHtrZXlQYXRofWApO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnSW52YWxpZCB0cmFuc2FjdGlvbicpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBBcGlSZXNwb25zZUVycm9yPFJlc3BvbnNlQm9keVR5cGUgPSBhbnk+IGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgbWVzc2FnZTogc3RyaW5nO1xuICBzdGF0dXM6IG51bWJlcjtcbiAgcmVzdWx0PzogUmVzcG9uc2VCb2R5VHlwZTtcbiAgaW52YWxpZFRva2VuPzogYm9vbGVhbjtcbiAgbmVlZHNPVFA/OiBib29sZWFuO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBtZXNzYWdlOiBzdHJpbmcsXG4gICAgc3RhdHVzOiBudW1iZXIsXG4gICAgcmVzdWx0PzogUmVzcG9uc2VCb2R5VHlwZSxcbiAgICBpbnZhbGlkVG9rZW4/OiBib29sZWFuLFxuICAgIG5lZWRzT1RQPzogYm9vbGVhblxuICApIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlO1xuICAgIHRoaXMuc3RhdHVzID0gc3RhdHVzO1xuICAgIHRoaXMucmVzdWx0ID0gcmVzdWx0O1xuICAgIHRoaXMuaW52YWxpZFRva2VuID0gaW52YWxpZFRva2VuO1xuICAgIHRoaXMubmVlZHNPVFAgPSBuZWVkc09UUDtcbiAgfVxufVxuIl19
214
+ /**
215
+ * Base error class for transaction intent mismatch detection
216
+ *
217
+ * This error is thrown when a transaction does not match the user's original intent,
218
+ * indicating potential security issues or malicious modifications.
219
+ *
220
+ * @class TxIntentMismatchError
221
+ * @extends {BitGoJsError}
222
+ * @property {string | IRequestTracer | undefined} id - Transaction ID or request tracer for tracking
223
+ * @property {TransactionParams[]} txParams - Array of transaction parameters that were analyzed
224
+ * @property {string | undefined} txHex - The raw transaction in hexadecimal format
225
+ * @property {string | undefined} txExplanation - Stringified transaction explanation
226
+ */
227
+ class TxIntentMismatchError extends bitgojsError_1.BitGoJsError {
228
+ /**
229
+ * Creates an instance of TxIntentMismatchError
230
+ *
231
+ * @param {string} message - Error message describing the intent mismatch
232
+ * @param {string | IRequestTracer | undefined} id - Transaction ID or request tracer
233
+ * @param {TransactionParams[]} txParams - Transaction parameters that were analyzed
234
+ * @param {string | undefined} txHex - Raw transaction hex string
235
+ * @param {unknown} txExplanation - Transaction explanation
236
+ */
237
+ constructor(message, id, txParams, txHex, txExplanation) {
238
+ super(message);
239
+ this.id = id;
240
+ this.txParams = txParams;
241
+ this.txHex = txHex;
242
+ this.txExplanation = txExplanation ? TxIntentMismatchError.safeStringify(txExplanation) : undefined;
243
+ }
244
+ /**
245
+ * Safely stringify a value with BigInt support
246
+ * @param value - Value to stringify
247
+ * @returns JSON string with BigInts converted to strings
248
+ */
249
+ static safeStringify(value) {
250
+ return JSON.stringify(value, (_, v) => (typeof v === 'bigint' ? v.toString() : v), 2);
251
+ }
252
+ /**
253
+ * Try to get transaction explanation from a coin's explainTransaction method.
254
+ *
255
+ * @param coin - Coin instance implementing IBaseCoin
256
+ * @param txPrebuild - Transaction prebuild containing txHex and txInfo
257
+ * @returns Transaction explanation object or undefined
258
+ */
259
+ static async tryGetTxExplanation(coin, txPrebuild) {
260
+ if (!txPrebuild.txHex) {
261
+ return undefined;
262
+ }
263
+ try {
264
+ return await coin.explainTransaction({
265
+ txHex: txPrebuild.txHex,
266
+ txInfo: txPrebuild.txInfo,
267
+ });
268
+ }
269
+ catch (e) {
270
+ return {
271
+ error: 'Failed to parse transaction explanation',
272
+ txHex: txPrebuild.txHex,
273
+ details: e instanceof Error ? e.message : String(e),
274
+ };
275
+ }
276
+ }
277
+ }
278
+ exports.TxIntentMismatchError = TxIntentMismatchError;
279
+ /**
280
+ * Error thrown when transaction recipients don't match the user's intent
281
+ *
282
+ * This error occurs when the transaction contains recipients or amounts that differ
283
+ * from what the user originally intended to send.
284
+ *
285
+ * @class TxIntentMismatchRecipientError
286
+ * @extends {TxIntentMismatchError}
287
+ * @property {MismatchedRecipient[]} mismatchedRecipients - Array of recipients that don't match user intent
288
+ */
289
+ class TxIntentMismatchRecipientError extends TxIntentMismatchError {
290
+ /**
291
+ * Creates an instance of TxIntentMismatchRecipientError
292
+ *
293
+ * @param {string} message - Error message describing the recipient intent mismatch
294
+ * @param {string | IRequestTracer | undefined} id - Transaction ID or request tracer
295
+ * @param {TransactionParams[]} txParams - Transaction parameters that were analyzed
296
+ * @param {string | undefined} txHex - Raw transaction hex string
297
+ * @param {MismatchedRecipient[]} mismatchedRecipients - Array of recipients that don't match user intent
298
+ * @param {unknown} txExplanation - Transaction explanation
299
+ */
300
+ constructor(message, id, txParams, txHex, mismatchedRecipients, txExplanation) {
301
+ super(message, id, txParams, txHex, txExplanation);
302
+ this.mismatchedRecipients = mismatchedRecipients;
303
+ }
304
+ }
305
+ exports.TxIntentMismatchRecipientError = TxIntentMismatchRecipientError;
306
+ /**
307
+ * Error thrown when contract interaction doesn't match the user's intent
308
+ *
309
+ * This error occurs when a transaction interacts with a smart contract but the
310
+ * contract call data or method doesn't match what the user intended.
311
+ *
312
+ * @class TxIntentMismatchContractError
313
+ * @extends {TxIntentMismatchError}
314
+ * @property {ContractDataPayload} mismatchedDataPayload - The contract interaction data that doesn't match user intent
315
+ */
316
+ class TxIntentMismatchContractError extends TxIntentMismatchError {
317
+ /**
318
+ * Creates an instance of TxIntentMismatchContractError
319
+ *
320
+ * @param {string} message - Error message describing the contract intent mismatch
321
+ * @param {string | IRequestTracer | undefined} id - Transaction ID or request tracer
322
+ * @param {TransactionParams[]} txParams - Transaction parameters that were analyzed
323
+ * @param {string | undefined} txHex - Raw transaction hex string
324
+ * @param {ContractDataPayload} mismatchedDataPayload - The contract interaction data that doesn't match user intent
325
+ * @param {unknown} txExplanation - Transaction explanation
326
+ */
327
+ constructor(message, id, txParams, txHex, mismatchedDataPayload, txExplanation) {
328
+ super(message, id, txParams, txHex, txExplanation);
329
+ this.mismatchedDataPayload = mismatchedDataPayload;
330
+ }
331
+ }
332
+ exports.TxIntentMismatchContractError = TxIntentMismatchContractError;
333
+ /**
334
+ * Error thrown when token approval doesn't match the user's intent
335
+ *
336
+ * This error occurs when a transaction contains a token approval that the user
337
+ * did not intend to authorize, potentially indicating malicious activity.
338
+ *
339
+ * @class TxIntentMismatchApprovalError
340
+ * @extends {TxIntentMismatchError}
341
+ * @property {TokenApproval} tokenApproval - Details of the token approval that doesn't match user intent
342
+ */
343
+ class TxIntentMismatchApprovalError extends TxIntentMismatchError {
344
+ /**
345
+ * Creates an instance of TxIntentMismatchApprovalError
346
+ *
347
+ * @param {string} message - Error message describing the approval intent mismatch
348
+ * @param {string | IRequestTracer | undefined} id - Transaction ID or request tracer
349
+ * @param {TransactionParams[]} txParams - Transaction parameters that were analyzed
350
+ * @param {string | undefined} txHex - Raw transaction hex string
351
+ * @param {TokenApproval} tokenApproval - Details of the token approval that doesn't match user intent
352
+ * @param {unknown} txExplanation - Transaction explanation
353
+ */
354
+ constructor(message, id, txParams, txHex, tokenApproval, txExplanation) {
355
+ super(message, id, txParams, txHex, txExplanation);
356
+ this.tokenApproval = tokenApproval;
357
+ }
358
+ }
359
+ exports.TxIntentMismatchApprovalError = TxIntentMismatchApprovalError;
360
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JpdGdvL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw0REFBNEQ7QUFDNUQsa0RBQWtEO0FBQ2xELGtEQUErQztBQU90Qyw2RkFQQSwyQkFBWSxPQU9BO0FBRXJCLE1BQWEscUJBQXNCLFNBQVEsMkJBQVk7SUFDckQsWUFBbUIsT0FBZ0I7UUFDakMsS0FBSyxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7Q0FDRjtBQUpELHNEQUlDO0FBRUQsTUFBYSxvQkFBcUIsU0FBUSwyQkFBWTtJQUNwRCxZQUFtQixPQUFnQjtRQUNqQyxLQUFLLENBQUMsT0FBTyxJQUFJLHVEQUF1RCxDQUFDLENBQUM7SUFDNUUsQ0FBQztDQUNGO0FBSkQsb0RBSUM7QUFFRCxNQUFhLG9CQUFxQixTQUFRLDJCQUFZO0lBQ3BELFlBQW1CLElBQVk7UUFDN0IsS0FBSyxDQUNILHNCQUFzQixJQUFJLHFLQUFxSyxJQUFJLFNBQVMsQ0FDN00sQ0FBQztJQUNKLENBQUM7Q0FDRjtBQU5ELG9EQU1DO0FBRUQsTUFBYSwrQkFBZ0MsU0FBUSwyQkFBWTtJQUMvRCxZQUFtQixVQUFrQjtRQUNuQyxLQUFLLENBQ0gsd0RBQXdELFVBQVUsa0lBQWtJLFVBQVUsK0NBQStDLENBQzlQLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFORCwwRUFNQztBQUVELE1BQWEsNkJBQThCLFNBQVEsMkJBQVk7SUFDN0QsWUFBWSxXQUFtQixFQUFFLEtBQXNCO1FBQ3JELEtBQUssQ0FBQyxnQkFBZ0IsV0FBVyxpQ0FBaUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUM3RSxDQUFDO0NBQ0Y7QUFKRCxzRUFJQztBQUVELE1BQWEseUJBQTBCLFNBQVEsMkJBQVk7SUFDekQsWUFBWSxPQUFnQjtRQUMxQixLQUFLLENBQUMsT0FBTyxJQUFJLHNDQUFzQyxDQUFDLENBQUM7SUFDM0Qs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QjtRQUV2QixLQUFLLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO0lBQ3JDLENBQUM7Q0FDRjtBQXhCRCxzRUF3QkMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBEZXNjcmlwdGl2ZSBlcnJvciB0eXBlcyBmb3IgY29tbW9uIGlzc3VlcyB3aGljaCBtYXkgYXJpc2Vcbi8vIGR1cmluZyB0aGUgb3BlcmF0aW9uIG9mIEJpdEdvSlMgb3IgQml0R29FeHByZXNzXG5pbXBvcnQgeyBCaXRHb0pzRXJyb3IgfSBmcm9tICcuLi9iaXRnb2pzRXJyb3InO1xuaW1wb3J0IHsgSVJlcXVlc3RUcmFjZXIgfSBmcm9tICcuLi9hcGkvdHlwZXMnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25QYXJhbXMgfSBmcm9tICcuL2Jhc2VDb2luJztcbmltcG9ydCB7IElCYXNlQ29pbiB9IGZyb20gJy4vYmFzZUNvaW4vaUJhc2VDb2luJztcbmltcG9ydCB7IFNlbmRNYW55T3B0aW9ucyB9IGZyb20gJy4vd2FsbGV0JztcblxuLy8gcmUtZXhwb3J0IGZvciBiYWNrd2FyZHMgY29tcGF0XG5leHBvcnQgeyBCaXRHb0pzRXJyb3IgfTtcblxuZXhwb3J0IGNsYXNzIFRsc0NvbmZpZ3VyYXRpb25FcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnVExTIGlzIGNvbmZpZ3VyYXRpb24gaXMgaW52YWxpZCcpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBOb2RlRW52aXJvbm1lbnRFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnTk9ERV9FTlYgaXMgaW52YWxpZCBmb3IgdGhlIGN1cnJlbnQgYml0Z28gZW52aXJvbm1lbnQnKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgVW5zdXBwb3J0ZWRDb2luRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29pbjogc3RyaW5nKSB7XG4gICAgc3VwZXIoXG4gICAgICBgQ29pbiBvciB0b2tlbiB0eXBlICR7Y29pbn0gbm90IHN1cHBvcnRlZCBvciBub3QgY29tcGlsZWQuIFBsZWFzZSBiZSBzdXJlIHRoYXQgeW91IGFyZSB1c2luZyB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgQml0R29KUy4gSWYgdXNpbmcgQGJpdGdvLWJldGEvc2RrLWFwaSwgcGxlYXNlIGNvbmZpcm0geW91IGhhdmUgcmVnaXN0ZXJlZCAke2NvaW59IGZpcnN0LmBcbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBTYWZlTXBjQ2VyZW1vbnlVbnN1cHBvcnRlZEVycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKGNvaW5GYW1pbHk6IHN0cmluZykge1xuICAgIHN1cGVyKFxuICAgICAgYENhbm5vdCBjcmVhdGUgV2FsbGV0IFNhZmUgcm9vdCBrZXlzIGZvciBjb2luIGZhbWlseSAnJHtjb2luRmFtaWx5fSc6IGl0cyBUU1Mgc2V0dGluZ3MgcmVzb2x2ZSB0byB0aGUgbGVnYWN5IE1QQ3YxIGNlcmVtb255LCB3aGljaCBkb2VzIG5vdCBzdXBwb3J0IHNhZmUgcm9vdCB0YWdnaW5nIChzYWZlSWQpLiBFbmFibGUgTVBDdjIgZm9yICcke2NvaW5GYW1pbHl9JyBiZWZvcmUgY3JlYXRpbmcgYSBzYWZlIHdpdGggdGhpcyByb290IHR5cGUuYFxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEFkZHJlc3NUeXBlQ2hhaW5NaXNtYXRjaEVycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgY29uc3RydWN0b3IoYWRkcmVzc1R5cGU6IHN0cmluZywgY2hhaW46IG51bWJlciB8IHN0cmluZykge1xuICAgIHN1cGVyKGBhZGRyZXNzIHR5cGUgJHthZGRyZXNzVHlwZX0gZG9lcyBub3QgY29ycmVzcG9uZCB0byBjaGFpbiAke2NoYWlufWApO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBQMnNoUDJ3c2hVbnN1cHBvcnRlZEVycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ3Ayc2hQMndzaCBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMgY29pbicpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBQMndzaFVuc3VwcG9ydGVkRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ3Ayd3NoIG5vdCBzdXBwb3J0ZWQgYnkgdGhpcyBjb2luJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFAydHJVbnN1cHBvcnRlZEVycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICdwMnRyIG5vdCBzdXBwb3J0ZWQgYnkgdGhpcyBjb2luJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFAydHJNdXNpZzJVbnN1cHBvcnRlZEVycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICdwMnRyTXVzaWcyIG5vdCBzdXBwb3J0ZWQgYnkgdGhpcyBjb2luJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFVuc3VwcG9ydGVkQWRkcmVzc1R5cGVFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnaW52YWxpZCBhZGRyZXNzIHR5cGUnKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgSW52YWxpZEFkZHJlc3NFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnaW52YWxpZCBhZGRyZXNzJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEludmFsaWRBZGRyZXNzVmVyaWZpY2F0aW9uT2JqZWN0UHJvcGVydHlFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnYWRkcmVzcyB2YWxpZGF0aW9uIGZhaWx1cmUnKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgVW5leHBlY3RlZEFkZHJlc3NFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnYWRkcmVzcyB2YWxpZGF0aW9uIGZhaWx1cmUnKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgSW52YWxpZEFkZHJlc3NEZXJpdmF0aW9uUHJvcGVydHlFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnYWRkcmVzcyBjaGFpbiBhbmQvb3IgaW5kZXggYXJlIGludmFsaWQnKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgV2FsbGV0UmVjb3ZlcnlVbnN1cHBvcnRlZCBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnd2FsbGV0IHJlY292ZXJ5IGlzIG5vdCBzdXBwb3J0ZWQgYnkgdGhpcyBjb2luJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIE1ldGhvZE5vdEltcGxlbWVudGVkRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ21ldGhvZCBub3QgaW1wbGVtZW50ZWQnKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgQmxvY2tFeHBsb3JlclVuYXZhaWxhYmxlIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICd0aGlyZC1wYXJ0eSBibG9ja2V4cGxvcmVyIG5vdCByZXNwb25kaW5nJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEludmFsaWRNZW1vSWRFcnJvciBleHRlbmRzIEludmFsaWRBZGRyZXNzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ2ludmFsaWQgbWVtbyBpZCcpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBJbnZhbGlkUGF5bWVudElkRXJyb3IgZXh0ZW5kcyBJbnZhbGlkQWRkcmVzc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICdpbnZhbGlkIHBheW1lbnQgaWQnKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgS2V5UmVjb3ZlcnlTZXJ2aWNlRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ2tleSByZWNvdmVyeSBzZXJ2aWNlIGVuY291bnRlcmVkIGFuIGVycm9yJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEFkZHJlc3NHZW5lcmF0aW9uRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ2FkZHJlc3MgZ2VuZXJhdGlvbiBmYWlsZWQnKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgRXRoZXJldW1MaWJyYXJ5VW5hdmFpbGFibGVFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihwYWNrYWdlTmFtZTogc3RyaW5nKSB7XG4gICAgc3VwZXIoYEV0aGVyZXVtIGxpYnJhcnkgcmVxdWlyZWQgZm9yIG9wZXJhdGlvbiBpcyBub3QgYXZhaWxhYmxlLiBQbGVhc2UgaW5zdGFsbCBcIiR7cGFja2FnZU5hbWV9XCIuYCk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFN0ZWxsYXJGZWRlcmF0aW9uVXNlck5vdEZvdW5kRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ2FjY291bnQgbm90IGZvdW5kJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEVycm9yTm9JbnB1dFRvUmVjb3ZlciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb2RlID0gJ25vX2lucHV0X3RvX3JlY292ZXInO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnTm8gaW5wdXQgdG8gcmVjb3ZlciAtIGFib3J0aW5nIScpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBSZWNvdmVyeUtleU1pc21hdGNoRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29kZSA9ICdyZWNvdmVyeV9rZXlfbWlzbWF0Y2gnO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAncmVjb3Zlcnkga2V5cyBkbyBub3QgbWF0Y2ggdGhlIHdhbGxldCBvbi1jaGFpbiBzaWduZXIgc2V0Jyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFJlY292ZXJ5UHJvdmlkZXJFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb2RlID0gJ3JlY292ZXJ5X3Byb3ZpZGVyX2ZhaWxlZCc7XG4gIHB1YmxpYyBjYXVzZT86IHVua25vd247XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcsIGNhdXNlPzogdW5rbm93bikge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ1VuYWJsZSB0byByZWFjaCB0aGUgY2hhaW4gcHJvdmlkZXIgd2hpbGUgYXR0ZW1wdGluZyByZWNvdmVyeS4nKTtcbiAgICB0aGlzLmNhdXNlID0gY2F1c2U7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEludmFsaWRLZXlQYXRoRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3Ioa2V5UGF0aDogc3RyaW5nKSB7XG4gICAgc3VwZXIoYGludmFsaWQga2V5cGF0aDogJHtrZXlQYXRofWApO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnSW52YWxpZCB0cmFuc2FjdGlvbicpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBNaXNzaW5nRW5jcnlwdGVkS2V5Y2hhaW5FcnJvciBleHRlbmRzIEVycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICdObyBlbmNyeXB0ZWQga2V5Y2hhaW5zIG9uIHRoaXMgd2FsbGV0LicpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBJbmNvcnJlY3RQYXNzd29yZEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBwdWJsaWMgY29kZSA9ICd3YWxsZXRfcGFzc3BocmFzZV9pbmNvcnJlY3QnO1xuICBwdWJsaWMgc3RhdHVzID0gNDAxO1xuICBwdWJsaWMgY2F1c2U/OiB1bmtub3duO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nLCBjYXVzZT86IHVua25vd24pIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICd1bmFibGUgdG8gZGVjcnlwdCBrZXljaGFpbiB3aXRoIHRoZSBnaXZlbiB3YWxsZXQgcGFzc3BocmFzZScpO1xuICAgIHRoaXMubmFtZSA9ICdJbmNvcnJlY3RQYXNzd29yZEVycm9yJztcbiAgICB0aGlzLmNhdXNlID0gY2F1c2U7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIE5lZWRVc2VyU2lnbnVwRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ1VzZXIgc2lnbnVwIGlzIHJlcXVpcmVkJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEFwaVJlc3BvbnNlRXJyb3I8UmVzcG9uc2VCb2R5VHlwZSA9IGFueT4gZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBtZXNzYWdlOiBzdHJpbmc7XG4gIHN0YXR1czogbnVtYmVyO1xuICByZXN1bHQ/OiBSZXNwb25zZUJvZHlUeXBlO1xuICBpbnZhbGlkVG9rZW4/OiBib29sZWFuO1xuICBuZWVkc09UUD86IGJvb2xlYW47XG4gIC8vIEVjaG9lZCBiYWNrIHZpYSB0aGUgYFJlcXVlc3QtSURgIHJlc3BvbnNlIGhlYWRlciAoc2VlIGxvZ2dpbmctZXhwcmVzcydzIGBiZWdpbkxvZ2dpbmdgKSxcbiAgLy8gc28gaXQgY2FuIGJlIHVzZWQgdG8gY29ycmVsYXRlIHRoaXMgZXJyb3Igd2l0aCB0aGUgc2VydmVyLXNpZGUgcmVxdWVzdCBsb2dzLlxuICByZXF1ZXN0SWQ/OiBzdHJpbmc7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIG1lc3NhZ2U6IHN0cmluZyxcbiAgICBzdGF0dXM6IG51bWJlcixcbiAgICByZXN1bHQ/OiBSZXNwb25zZUJvZHlUeXBlLFxuICAgIGludmFsaWRUb2tlbj86IGJvb2xlYW4sXG4gICAgbmVlZHNPVFA/OiBib29sZWFuLFxuICAgIHJlcXVlc3RJZD86IHN0cmluZ1xuICApIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgICB0aGlzLm1lc3NhZ2UgPSBtZXNzYWdlO1xuICAgIHRoaXMuc3RhdHVzID0gc3RhdHVzO1xuICAgIHRoaXMucmVzdWx0ID0gcmVzdWx0O1xuICAgIHRoaXMuaW52YWxpZFRva2VuID0gaW52YWxpZFRva2VuO1xuICAgIHRoaXMubmVlZHNPVFAgPSBuZWVkc09UUDtcbiAgICB0aGlzLnJlcXVlc3RJZCA9IHJlcXVlc3RJZDtcbiAgfVxufVxuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgdG9rZW4gYXBwcm92YWwgaW5mb3JtYXRpb24gdXNlZCBpbiBzdXNwaWNpb3VzIHRyYW5zYWN0aW9uIGRldGVjdGlvblxuICpcbiAqIEBpbnRlcmZhY2UgVG9rZW5BcHByb3ZhbFxuICogQHByb3BlcnR5IHtzdHJpbmd9IFt0b2tlbk5hbWVdIC0gT3B0aW9uYWwgaHVtYW4tcmVhZGFibGUgbmFtZSBvZiB0aGUgdG9rZW5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSB0b2tlbkFkZHJlc3MgLSBUaGUgY29udHJhY3QgYWRkcmVzcyBvZiB0aGUgdG9rZW4gYmVpbmcgYXBwcm92ZWRcbiAqIEBwcm9wZXJ0eSB7T2JqZWN0fSBhdXRob3JpemluZ0Ftb3VudCAtIFRoZSBhbW91bnQgYmVpbmcgYXV0aG9yaXplZCBmb3Igc3BlbmRpbmdcbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBhdXRob3JpemluZ0FkZHJlc3MgLSBUaGUgYWRkcmVzcyBiZWluZyBhdXRob3JpemVkIHRvIHNwZW5kIHRoZSB0b2tlbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUb2tlbkFwcHJvdmFsIHtcbiAgdG9rZW5OYW1lPzogc3RyaW5nO1xuICB0b2tlbkFkZHJlc3M6IHN0cmluZztcbiAgYXV0aG9yaXppbmdBbW91bnQ6IHsgdHlwZTogJ3VubGltaXRlZCcgfSB8IHsgdHlwZTogJ2xpbWl0ZWQnOyBhbW91bnQ6IG51bWJlciB9O1xuICBhdXRob3JpemluZ0FkZHJlc3M6IHN0cmluZztcbn1cblxuLyoqXG4gKiBJbnRlcmZhY2UgZm9yIG1pc21hdGNoZWQgcmVjaXBpZW50IGluZm9ybWF0aW9uIGRldGVjdGVkIGR1cmluZyB0cmFuc2FjdGlvbiB2ZXJpZmljYXRpb25cbiAqXG4gKiBAaW50ZXJmYWNlIE1pc21hdGNoZWRSZWNpcGllbnRcbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBhZGRyZXNzIC0gVGhlIHJlY2lwaWVudCBhZGRyZXNzIHRoYXQgd2FzIGZvdW5kIGluIHRoZSB0cmFuc2FjdGlvblxuICogQHByb3BlcnR5IHtzdHJpbmd9IGFtb3VudCAtIFRoZSBhbW91bnQgYmVpbmcgc2VudCB0byB0aGlzIHJlY2lwaWVudFxuICogQHByb3BlcnR5IHtzdHJpbmcgfCBUb2tlblRyYW5zZmVyUmVjaXBpZW50UGFyYW1zfSBbZGF0YV0gLSBPcHRpb25hbCB0cmFuc2FjdGlvbiBkYXRhIG9yIHRva2VuIHRyYW5zZmVyIHBhcmFtZXRlcnNcbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBbdG9rZW5OYW1lXSAtIE9wdGlvbmFsIG5hbWUgb2YgdGhlIHRva2VuIGJlaW5nIHRyYW5zZmVycmVkXG4gKiBAcHJvcGVydHkge1Rva2VuVHJhbnNmZXJSZWNpcGllbnRQYXJhbXN9IFt0b2tlbkRhdGFdIC0gT3B0aW9uYWwgc3RydWN0dXJlZCB0b2tlbiB0cmFuc2ZlciBkYXRhXG4gKi9cbmV4cG9ydCB0eXBlIE1pc21hdGNoZWRSZWNpcGllbnQgPSBOb25OdWxsYWJsZTxTZW5kTWFueU9wdGlvbnNbJ3JlY2lwaWVudHMnXT5bMF07XG5cbi8qKlxuICogSW50ZXJmYWNlIGZvciBjb250cmFjdCBpbnRlcmFjdGlvbiBkYXRhIHBheWxvYWQgdXNlZCBpbiBzdXNwaWNpb3VzIHRyYW5zYWN0aW9uIGRldGVjdGlvblxuICpcbiAqIEBpbnRlcmZhY2UgQ29udHJhY3REYXRhUGF5bG9hZFxuICogQHByb3BlcnR5IHtzdHJpbmd9IGFkZHJlc3MgLSBUaGUgY29udHJhY3QgYWRkcmVzcyBiZWluZyBpbnRlcmFjdGVkIHdpdGhcbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSByYXdDb250cmFjdFBheWxvYWQgLSBUaGUgcmF3IGNvbnRyYWN0IHBheWxvYWQgaW4gc2VyaWFsaXplZCBmb3JtIHNwZWNpZmljIHRvIHRoZSBibG9ja2NoYWluXG4gKiBAcHJvcGVydHkge3Vua25vd259IGRlY29kZWRDb250cmFjdFBheWxvYWQgLSBUaGUgZGVjb2RlZCBjb250cmFjdCBwYXlsb2FkLCBzdHJ1Y3R1cmUgdmFyaWVzIGJ5IGNvaW4vY2hhaW4gaW1wbGVtZW50YXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb250cmFjdERhdGFQYXlsb2FkIHtcbiAgYWRkcmVzczogc3RyaW5nO1xuICAvLyBUaGUgcmF3IGNvbnRyYWN0IHBheWxvYWQgaW4gc2VyaWFsaXplZCBmb3JtIG9mIHRoZSBjaGFpblxuICByYXdDb250cmFjdFBheWxvYWQ6IHN0cmluZztcbiAgLy8gVG8gYmUgZGVmaW5lZCBvbiBhIHBlci1jb2luIGJhc2lzXG4gIGRlY29kZWRDb250cmFjdFBheWxvYWQ6IHVua25vd247XG59XG5cbi8qKlxuICogQmFzZSBlcnJvciBjbGFzcyBmb3IgdHJhbnNhY3Rpb24gaW50ZW50IG1pc21hdGNoIGRldGVjdGlvblxuICpcbiAqIFRoaXMgZXJyb3IgaXMgdGhyb3duIHdoZW4gYSB0cmFuc2FjdGlvbiBkb2VzIG5vdCBtYXRjaCB0aGUgdXNlcidzIG9yaWdpbmFsIGludGVudCxcbiAqIGluZGljYXRpbmcgcG90ZW50aWFsIHNlY3VyaXR5IGlzc3VlcyBvciBtYWxpY2lvdXMgbW9kaWZpY2F0aW9ucy5cbiAqXG4gKiBAY2xhc3MgVHhJbnRlbnRNaXNtYXRjaEVycm9yXG4gKiBAZXh0ZW5kcyB7Qml0R29Kc0Vycm9yfVxuICogQHByb3BlcnR5IHtzdHJpbmcgfCBJUmVxdWVzdFRyYWNlciB8IHVuZGVmaW5lZH0gaWQgLSBUcmFuc2FjdGlvbiBJRCBvciByZXF1ZXN0IHRyYWNlciBmb3IgdHJhY2tpbmdcbiAqIEBwcm9wZXJ0eSB7VHJhbnNhY3Rpb25QYXJhbXNbXX0gdHhQYXJhbXMgLSBBcnJheSBvZiB0cmFuc2FjdGlvbiBwYXJhbWV0ZXJzIHRoYXQgd2VyZSBhbmFseXplZFxuICogQHByb3BlcnR5IHtzdHJpbmcgfCB1bmRlZmluZWR9IHR4SGV4IC0gVGhlIHJhdyB0cmFuc2FjdGlvbiBpbiBoZXhhZGVjaW1hbCBmb3JtYXRcbiAqIEBwcm9wZXJ0eSB7c3RyaW5nIHwgdW5kZWZpbmVkfSB0eEV4cGxhbmF0aW9uIC0gU3RyaW5naWZpZWQgdHJhbnNhY3Rpb24gZXhwbGFuYXRpb25cbiAqL1xuZXhwb3J0IGNsYXNzIFR4SW50ZW50TWlzbWF0Y2hFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyByZWFkb25seSBpZDogc3RyaW5nIHwgSVJlcXVlc3RUcmFjZXIgfCB1bmRlZmluZWQ7XG4gIHB1YmxpYyByZWFkb25seSB0eFBhcmFtczogVHJhbnNhY3Rpb25QYXJhbXNbXTtcbiAgcHVibGljIHJlYWRvbmx5IHR4SGV4OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIHB1YmxpYyByZWFkb25seSB0eEV4cGxhbmF0aW9uOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgVHhJbnRlbnRNaXNtYXRjaEVycm9yXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBtZXNzYWdlIC0gRXJyb3IgbWVzc2FnZSBkZXNjcmliaW5nIHRoZSBpbnRlbnQgbWlzbWF0Y2hcbiAgICogQHBhcmFtIHtzdHJpbmcgfCBJUmVxdWVzdFRyYWNlciB8IHVuZGVmaW5lZH0gaWQgLSBUcmFuc2FjdGlvbiBJRCBvciByZXF1ZXN0IHRyYWNlclxuICAgKiBAcGFyYW0ge1RyYW5zYWN0aW9uUGFyYW1zW119IHR4UGFyYW1zIC0gVHJhbnNhY3Rpb24gcGFyYW1ldGVycyB0aGF0IHdlcmUgYW5hbHl6ZWRcbiAgICogQHBhcmFtIHtzdHJpbmcgfCB1bmRlZmluZWR9IHR4SGV4IC0gUmF3IHRyYW5zYWN0aW9uIGhleCBzdHJpbmdcbiAgICogQHBhcmFtIHt1bmtub3dufSB0eEV4cGxhbmF0aW9uIC0gVHJhbnNhY3Rpb24gZXhwbGFuYXRpb25cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBtZXNzYWdlOiBzdHJpbmcsXG4gICAgaWQ6IHN0cmluZyB8IElSZXF1ZXN0VHJhY2VyIHwgdW5kZWZpbmVkLFxuICAgIHR4UGFyYW1zOiBUcmFuc2FjdGlvblBhcmFtc1tdLFxuICAgIHR4SGV4OiBzdHJpbmcgfCB1bmRlZmluZWQsXG4gICAgdHhFeHBsYW5hdGlvbj86IHVua25vd25cbiAgKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gICAgdGhpcy5pZCA9IGlkO1xuICAgIHRoaXMudHhQYXJhbXMgPSB0eFBhcmFtcztcbiAgICB0aGlzLnR4SGV4ID0gdHhIZXg7XG4gICAgdGhpcy50eEV4cGxhbmF0aW9uID0gdHhFeHBsYW5hdGlvbiA/IFR4SW50ZW50TWlzbWF0Y2hFcnJvci5zYWZlU3RyaW5naWZ5KHR4RXhwbGFuYXRpb24pIDogdW5kZWZpbmVkO1xuICB9XG5cbiAgLyoqXG4gICAqIFNhZmVseSBzdHJpbmdpZnkgYSB2YWx1ZSB3aXRoIEJpZ0ludCBzdXBwb3J0XG4gICAqIEBwYXJhbSB2YWx1ZSAtIFZhbHVlIHRvIHN0cmluZ2lmeVxuICAgKiBAcmV0dXJucyBKU09OIHN0cmluZyB3aXRoIEJpZ0ludHMgY29udmVydGVkIHRvIHN0cmluZ3NcbiAgICovXG4gIHByaXZhdGUgc3RhdGljIHNhZmVTdHJpbmdpZnkodmFsdWU6IHVua25vd24pOiBzdHJpbmcge1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeSh2YWx1ZSwgKF8sIHYpID0+ICh0eXBlb2YgdiA9PT0gJ2JpZ2ludCcgPyB2LnRvU3RyaW5nKCkgOiB2KSwgMik7XG4gIH1cblxuICAvKipcbiAgICogVHJ5IHRvIGdldCB0cmFuc2FjdGlvbiBleHBsYW5hdGlvbiBmcm9tIGEgY29pbidzIGV4cGxhaW5UcmFuc2FjdGlvbiBtZXRob2QuXG4gICAqXG4gICAqIEBwYXJhbSBjb2luIC0gQ29pbiBpbnN0YW5jZSBpbXBsZW1lbnRpbmcgSUJhc2VDb2luXG4gICAqIEBwYXJhbSB0eFByZWJ1aWxkIC0gVHJhbnNhY3Rpb24gcHJlYnVpbGQgY29udGFpbmluZyB0eEhleCBhbmQgdHhJbmZvXG4gICAqIEByZXR1cm5zIFRyYW5zYWN0aW9uIGV4cGxhbmF0aW9uIG9iamVjdCBvciB1bmRlZmluZWRcbiAgICovXG4gIHN0YXRpYyBhc3luYyB0cnlHZXRUeEV4cGxhbmF0aW9uKFxuICAgIGNvaW46IElCYXNlQ29pbixcbiAgICB0eFByZWJ1aWxkOiB7IHR4SGV4Pzogc3RyaW5nOyB0eEluZm8/OiB1bmtub3duIH1cbiAgKTogUHJvbWlzZTx1bmtub3duPiB7XG4gICAgaWYgKCF0eFByZWJ1aWxkLnR4SGV4KSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICByZXR1cm4gYXdhaXQgY29pbi5leHBsYWluVHJhbnNhY3Rpb24oe1xuICAgICAgICB0eEhleDogdHhQcmVidWlsZC50eEhleCxcbiAgICAgICAgdHhJbmZvOiB0eFByZWJ1aWxkLnR4SW5mbyxcbiAgICAgIH0pO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGVycm9yOiAnRmFpbGVkIHRvIHBhcnNlIHRyYW5zYWN0aW9uIGV4cGxhbmF0aW9uJyxcbiAgICAgICAgdHhIZXg6IHR4UHJlYnVpbGQudHhIZXgsXG4gICAgICAgIGRldGFpbHM6IGUgaW5zdGFuY2VvZiBFcnJvciA/IGUubWVzc2FnZSA6IFN0cmluZyhlKSxcbiAgICAgIH07XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogRXJyb3IgdGhyb3duIHdoZW4gdHJhbnNhY3Rpb24gcmVjaXBpZW50cyBkb24ndCBtYXRjaCB0aGUgdXNlcidzIGludGVudFxuICpcbiAqIFRoaXMgZXJyb3Igb2NjdXJzIHdoZW4gdGhlIHRyYW5zYWN0aW9uIGNvbnRhaW5zIHJlY2lwaWVudHMgb3IgYW1vdW50cyB0aGF0IGRpZmZlclxuICogZnJvbSB3aGF0IHRoZSB1c2VyIG9yaWdpbmFsbHkgaW50ZW5kZWQgdG8gc2VuZC5cbiAqXG4gKiBAY2xhc3MgVHhJbnRlbnRNaXNtYXRjaFJlY2lwaWVudEVycm9yXG4gKiBAZXh0ZW5kcyB7VHhJbnRlbnRNaXNtYXRjaEVycm9yfVxuICogQHByb3BlcnR5IHtNaXNtYXRjaGVkUmVjaXBpZW50W119IG1pc21hdGNoZWRSZWNpcGllbnRzIC0gQXJyYXkgb2YgcmVjaXBpZW50cyB0aGF0IGRvbid0IG1hdGNoIHVzZXIgaW50ZW50XG4gKi9cbmV4cG9ydCBjbGFzcyBUeEludGVudE1pc21hdGNoUmVjaXBpZW50RXJyb3IgZXh0ZW5kcyBUeEludGVudE1pc21hdGNoRXJyb3Ige1xuICBwdWJsaWMgcmVhZG9ubHkgbWlzbWF0Y2hlZFJlY2lwaWVudHM6IE1pc21hdGNoZWRSZWNpcGllbnRbXTtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiBUeEludGVudE1pc21hdGNoUmVjaXBpZW50RXJyb3JcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IG1lc3NhZ2UgLSBFcnJvciBtZXNzYWdlIGRlc2NyaWJpbmcgdGhlIHJlY2lwaWVudCBpbnRlbnQgbWlzbWF0Y2hcbiAgICogQHBhcmFtIHtzdHJpbmcgfCBJUmVxdWVzdFRyYWNlciB8IHVuZGVmaW5lZH0gaWQgLSBUcmFuc2FjdGlvbiBJRCBvciByZXF1ZXN0IHRyYWNlclxuICAgKiBAcGFyYW0ge1RyYW5zYWN0aW9uUGFyYW1zW119IHR4UGFyYW1zIC0gVHJhbnNhY3Rpb24gcGFyYW1ldGVycyB0aGF0IHdlcmUgYW5hbHl6ZWRcbiAgICogQHBhcmFtIHtzdHJpbmcgfCB1bmRlZmluZWR9IHR4SGV4IC0gUmF3IHRyYW5zYWN0aW9uIGhleCBzdHJpbmdcbiAgICogQHBhcmFtIHtNaXNtYXRjaGVkUmVjaXBpZW50W119IG1pc21hdGNoZWRSZWNpcGllbnRzIC0gQXJyYXkgb2YgcmVjaXBpZW50cyB0aGF0IGRvbid0IG1hdGNoIHVzZXIgaW50ZW50XG4gICAqIEBwYXJhbSB7dW5rbm93bn0gdHhFeHBsYW5hdGlvbiAtIFRyYW5zYWN0aW9uIGV4cGxhbmF0aW9uXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgbWVzc2FnZTogc3RyaW5nLFxuICAgIGlkOiBzdHJpbmcgfCBJUmVxdWVzdFRyYWNlciB8IHVuZGVmaW5lZCxcbiAgICB0eFBhcmFtczogVHJhbnNhY3Rpb25QYXJhbXNbXSxcbiAgICB0eEhleDogc3RyaW5nIHwgdW5kZWZpbmVkLFxuICAgIG1pc21hdGNoZWRSZWNpcGllbnRzOiBNaXNtYXRjaGVkUmVjaXBpZW50W10sXG4gICAgdHhFeHBsYW5hdGlvbj86IHVua25vd25cbiAgKSB7XG4gICAgc3VwZXIobWVzc2FnZSwgaWQsIHR4UGFyYW1zLCB0eEhleCwgdHhFeHBsYW5hdGlvbik7XG4gICAgdGhpcy5taXNtYXRjaGVkUmVjaXBpZW50cyA9IG1pc21hdGNoZWRSZWNpcGllbnRzO1xuICB9XG59XG5cbi8qKlxuICogRXJyb3IgdGhyb3duIHdoZW4gY29udHJhY3QgaW50ZXJhY3Rpb24gZG9lc24ndCBtYXRjaCB0aGUgdXNlcidzIGludGVudFxuICpcbiAqIFRoaXMgZXJyb3Igb2NjdXJzIHdoZW4gYSB0cmFuc2FjdGlvbiBpbnRlcmFjdHMgd2l0aCBhIHNtYXJ0IGNvbnRyYWN0IGJ1dCB0aGVcbiAqIGNvbnRyYWN0IGNhbGwgZGF0YSBvciBtZXRob2QgZG9lc24ndCBtYXRjaCB3aGF0IHRoZSB1c2VyIGludGVuZGVkLlxuICpcbiAqIEBjbGFzcyBUeEludGVudE1pc21hdGNoQ29udHJhY3RFcnJvclxuICogQGV4dGVuZHMge1R4SW50ZW50TWlzbWF0Y2hFcnJvcn1cbiAqIEBwcm9wZXJ0eSB7Q29udHJhY3REYXRhUGF5bG9hZH0gbWlzbWF0Y2hlZERhdGFQYXlsb2FkIC0gVGhlIGNvbnRyYWN0IGludGVyYWN0aW9uIGRhdGEgdGhhdCBkb2Vzbid0IG1hdGNoIHVzZXIgaW50ZW50XG4gKi9cbmV4cG9ydCBjbGFzcyBUeEludGVudE1pc21hdGNoQ29udHJhY3RFcnJvciBleHRlbmRzIFR4SW50ZW50TWlzbWF0Y2hFcnJvciB7XG4gIHB1YmxpYyByZWFkb25seSBtaXNtYXRjaGVkRGF0YVBheWxvYWQ6IENvbnRyYWN0RGF0YVBheWxvYWQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgVHhJbnRlbnRNaXNtYXRjaENvbnRyYWN0RXJyb3JcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IG1lc3NhZ2UgLSBFcnJvciBtZXNzYWdlIGRlc2NyaWJpbmcgdGhlIGNvbnRyYWN0IGludGVudCBtaXNtYXRjaFxuICAgKiBAcGFyYW0ge3N0cmluZyB8IElSZXF1ZXN0VHJhY2VyIHwgdW5kZWZpbmVkfSBpZCAtIFRyYW5zYWN0aW9uIElEIG9yIHJlcXVlc3QgdHJhY2VyXG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb25QYXJhbXNbXX0gdHhQYXJhbXMgLSBUcmFuc2FjdGlvbiBwYXJhbWV0ZXJzIHRoYXQgd2VyZSBhbmFseXplZFxuICAgKiBAcGFyYW0ge3N0cmluZyB8IHVuZGVmaW5lZH0gdHhIZXggLSBSYXcgdHJhbnNhY3Rpb24gaGV4IHN0cmluZ1xuICAgKiBAcGFyYW0ge0NvbnRyYWN0RGF0YVBheWxvYWR9IG1pc21hdGNoZWREYXRhUGF5bG9hZCAtIFRoZSBjb250cmFjdCBpbnRlcmFjdGlvbiBkYXRhIHRoYXQgZG9lc24ndCBtYXRjaCB1c2VyIGludGVudFxuICAgKiBAcGFyYW0ge3Vua25vd259IHR4RXhwbGFuYXRpb24gLSBUcmFuc2FjdGlvbiBleHBsYW5hdGlvblxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIG1lc3NhZ2U6IHN0cmluZyxcbiAgICBpZDogc3RyaW5nIHwgSVJlcXVlc3RUcmFjZXIgfCB1bmRlZmluZWQsXG4gICAgdHhQYXJhbXM6IFRyYW5zYWN0aW9uUGFyYW1zW10sXG4gICAgdHhIZXg6IHN0cmluZyB8IHVuZGVmaW5lZCxcbiAgICBtaXNtYXRjaGVkRGF0YVBheWxvYWQ6IENvbnRyYWN0RGF0YVBheWxvYWQsXG4gICAgdHhFeHBsYW5hdGlvbj86IHVua25vd25cbiAgKSB7XG4gICAgc3VwZXIobWVzc2FnZSwgaWQsIHR4UGFyYW1zLCB0eEhleCwgdHhFeHBsYW5hdGlvbik7XG4gICAgdGhpcy5taXNtYXRjaGVkRGF0YVBheWxvYWQgPSBtaXNtYXRjaGVkRGF0YVBheWxvYWQ7XG4gIH1cbn1cblxuLyoqXG4gKiBFcnJvciB0aHJvd24gd2hlbiB0b2tlbiBhcHByb3ZhbCBkb2Vzbid0IG1hdGNoIHRoZSB1c2VyJ3MgaW50ZW50XG4gKlxuICogVGhpcyBlcnJvciBvY2N1cnMgd2hlbiBhIHRyYW5zYWN0aW9uIGNvbnRhaW5zIGEgdG9rZW4gYXBwcm92YWwgdGhhdCB0aGUgdXNlclxuICogZGlkIG5vdCBpbnRlbmQgdG8gYXV0aG9yaXplLCBwb3RlbnRpYWxseSBpbmRpY2F0aW5nIG1hbGljaW91cyBhY3Rpdml0eS5cbiAqXG4gKiBAY2xhc3MgVHhJbnRlbnRNaXNtYXRjaEFwcHJvdmFsRXJyb3JcbiAqIEBleHRlbmRzIHtUeEludGVudE1pc21hdGNoRXJyb3J9XG4gKiBAcHJvcGVydHkge1Rva2VuQXBwcm92YWx9IHRva2VuQXBwcm92YWwgLSBEZXRhaWxzIG9mIHRoZSB0b2tlbiBhcHByb3ZhbCB0aGF0IGRvZXNuJ3QgbWF0Y2ggdXNlciBpbnRlbnRcbiAqL1xuZXhwb3J0IGNsYXNzIFR4SW50ZW50TWlzbWF0Y2hBcHByb3ZhbEVycm9yIGV4dGVuZHMgVHhJbnRlbnRNaXNtYXRjaEVycm9yIHtcbiAgcHVibGljIHJlYWRvbmx5IHRva2VuQXBwcm92YWw6IFRva2VuQXBwcm92YWw7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgVHhJbnRlbnRNaXNtYXRjaEFwcHJvdmFsRXJyb3JcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IG1lc3NhZ2UgLSBFcnJvciBtZXNzYWdlIGRlc2NyaWJpbmcgdGhlIGFwcHJvdmFsIGludGVudCBtaXNtYXRjaFxuICAgKiBAcGFyYW0ge3N0cmluZyB8IElSZXF1ZXN0VHJhY2VyIHwgdW5kZWZpbmVkfSBpZCAtIFRyYW5zYWN0aW9uIElEIG9yIHJlcXVlc3QgdHJhY2VyXG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb25QYXJhbXNbXX0gdHhQYXJhbXMgLSBUcmFuc2FjdGlvbiBwYXJhbWV0ZXJzIHRoYXQgd2VyZSBhbmFseXplZFxuICAgKiBAcGFyYW0ge3N0cmluZyB8IHVuZGVmaW5lZH0gdHhIZXggLSBSYXcgdHJhbnNhY3Rpb24gaGV4IHN0cmluZ1xuICAgKiBAcGFyYW0ge1Rva2VuQXBwcm92YWx9IHRva2VuQXBwcm92YWwgLSBEZXRhaWxzIG9mIHRoZSB0b2tlbiBhcHByb3ZhbCB0aGF0IGRvZXNuJ3QgbWF0Y2ggdXNlciBpbnRlbnRcbiAgICogQHBhcmFtIHt1bmtub3dufSB0eEV4cGxhbmF0aW9uIC0gVHJhbnNhY3Rpb24gZXhwbGFuYXRpb25cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBtZXNzYWdlOiBzdHJpbmcsXG4gICAgaWQ6IHN0cmluZyB8IElSZXF1ZXN0VHJhY2VyIHwgdW5kZWZpbmVkLFxuICAgIHR4UGFyYW1zOiBUcmFuc2FjdGlvblBhcmFtc1tdLFxuICAgIHR4SGV4OiBzdHJpbmcgfCB1bmRlZmluZWQsXG4gICAgdG9rZW5BcHByb3ZhbDogVG9rZW5BcHByb3ZhbCxcbiAgICB0eEV4cGxhbmF0aW9uPzogdW5rbm93blxuICApIHtcbiAgICBzdXBlcihtZXNzYWdlLCBpZCwgdHhQYXJhbXMsIHR4SGV4LCB0eEV4cGxhbmF0aW9uKTtcbiAgICB0aGlzLnRva2VuQXBwcm92YWwgPSB0b2tlbkFwcHJvdmFsO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,26 @@
1
+ import { BitGoBase } from '../bitgoBase';
2
+ import { IBaseCoin } from '../baseCoin';
3
+ import { WalletWithKeychains } from '../wallet/iWallets';
4
+ /**
5
+ * Interface for EVM keyring wallet creation parameters
6
+ */
7
+ export interface CreateEvmKeyRingWalletParams {
8
+ label: string;
9
+ evmKeyRingReferenceWalletId: string;
10
+ bitgo: BitGoBase;
11
+ baseCoin: IBaseCoin;
12
+ }
13
+ /**
14
+ * @param params - The wallet creation parameters
15
+ * @param baseCoin - The base coin instance
16
+ * @throws Error if validation fails
17
+ * @returns boolean - true if validation passes
18
+ */
19
+ export declare function validateEvmKeyRingWalletParams(params: any, baseCoin: IBaseCoin): boolean;
20
+ /**
21
+ * Creates an EVM keyring wallet with shared keys from a reference wallet
22
+ * @param params - The parameters for creating the EVM keyring wallet
23
+ * @returns Promise<WalletWithKeychains> - The created wallet with its keychains
24
+ */
25
+ export declare function createEvmKeyRingWallet(params: CreateEvmKeyRingWalletParams): Promise<WalletWithKeychains>;
26
+ //# sourceMappingURL=evmUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evmUtils.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/evm/evmUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAIxC,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B,EAAE,MAAM,CAAC;IACpC,KAAK,EAAE,SAAS,CAAC;IACjB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,SAAS,GAAG,OAAO,CAUxF;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,CAAC,MAAM,EAAE,4BAA4B,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAyB/G"}