@bitgo-beta/sdk-core 8.2.1-beta.192 → 8.2.1-beta.1921

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 (664) 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 +41 -29
  9. package/dist/src/account-lib/baseCoin/enum.d.ts +54 -5
  10. package/dist/src/account-lib/baseCoin/enum.d.ts.map +1 -1
  11. package/dist/src/account-lib/baseCoin/enum.js +101 -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.js +23 -9
  49. package/dist/src/account-lib/mpc/index.d.ts +1 -1
  50. package/dist/src/account-lib/mpc/index.d.ts.map +1 -1
  51. package/dist/src/account-lib/mpc/index.js +6 -2
  52. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +2 -3
  53. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -1
  54. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.js +376 -354
  55. package/dist/src/account-lib/mpc/tss/ecdsa/index.js +23 -9
  56. package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts +2 -2
  57. package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts.map +1 -1
  58. package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.js +3 -3
  59. package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts +46 -53
  60. package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts.map +1 -1
  61. package/dist/src/account-lib/mpc/tss/ecdsa/types.js +1 -1
  62. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts +0 -1
  63. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts.map +1 -1
  64. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.js +66 -69
  65. package/dist/src/account-lib/mpc/tss/eddsa/index.js +23 -9
  66. package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts +1 -1
  67. package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts.map +1 -1
  68. package/dist/src/account-lib/mpc/tss/eddsa/types.js +1 -1
  69. package/dist/src/account-lib/mpc/tss/index.js +23 -9
  70. package/dist/src/account-lib/mpc/util.d.ts +7 -1
  71. package/dist/src/account-lib/mpc/util.d.ts.map +1 -1
  72. package/dist/src/account-lib/mpc/util.js +24 -1
  73. package/dist/src/account-lib/staking/index.js +6 -2
  74. package/dist/src/account-lib/staking/utils.js +3 -3
  75. package/dist/src/account-lib/util/crypto.d.ts +8 -2
  76. package/dist/src/account-lib/util/crypto.d.ts.map +1 -1
  77. package/dist/src/account-lib/util/crypto.js +69 -38
  78. package/dist/src/account-lib/util/ed25519KeyDeriver.d.ts +2 -1
  79. package/dist/src/account-lib/util/ed25519KeyDeriver.d.ts.map +1 -1
  80. package/dist/src/account-lib/util/ed25519KeyDeriver.js +5 -3
  81. package/dist/src/api/bip32path.js +2 -3
  82. package/dist/src/api/index.js +6 -2
  83. package/dist/src/api/types.d.ts +31 -0
  84. package/dist/src/api/types.d.ts.map +1 -1
  85. package/dist/src/api/types.js +1 -1
  86. package/dist/src/bitgo/address-book/address-book.d.ts +61 -0
  87. package/dist/src/bitgo/address-book/address-book.d.ts.map +1 -0
  88. package/dist/src/bitgo/address-book/address-book.js +150 -0
  89. package/dist/src/bitgo/address-book/index.d.ts +3 -0
  90. package/dist/src/bitgo/address-book/index.d.ts.map +1 -0
  91. package/dist/src/bitgo/address-book/index.js +19 -0
  92. package/dist/src/bitgo/address-book/types.d.ts +170 -0
  93. package/dist/src/bitgo/address-book/types.d.ts.map +1 -0
  94. package/dist/src/bitgo/address-book/types.js +3 -0
  95. package/dist/src/bitgo/baseCoin/baseCoin.d.ts +110 -11
  96. package/dist/src/bitgo/baseCoin/baseCoin.d.ts.map +1 -1
  97. package/dist/src/bitgo/baseCoin/baseCoin.js +169 -16
  98. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +270 -27
  99. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -1
  100. package/dist/src/bitgo/baseCoin/iBaseCoin.js +14 -3
  101. package/dist/src/bitgo/baseCoin/index.js +6 -2
  102. package/dist/src/bitgo/bip32util.d.ts +3 -16
  103. package/dist/src/bitgo/bip32util.d.ts.map +1 -1
  104. package/dist/src/bitgo/bip32util.js +4 -56
  105. package/dist/src/bitgo/bitcoin.d.ts +0 -1
  106. package/dist/src/bitgo/bitcoin.d.ts.map +1 -1
  107. package/dist/src/bitgo/bitcoin.js +26 -13
  108. package/dist/src/bitgo/bitgoBase.d.ts +7 -3
  109. package/dist/src/bitgo/bitgoBase.d.ts.map +1 -1
  110. package/dist/src/bitgo/bitgoBase.js +1 -1
  111. package/dist/src/bitgo/coinFactory.d.ts +17 -3
  112. package/dist/src/bitgo/coinFactory.d.ts.map +1 -1
  113. package/dist/src/bitgo/coinFactory.js +26 -3
  114. package/dist/src/bitgo/config.d.ts +3 -95
  115. package/dist/src/bitgo/config.d.ts.map +1 -1
  116. package/dist/src/bitgo/config.js +26 -15
  117. package/dist/src/bitgo/defi/defiVault.d.ts +117 -0
  118. package/dist/src/bitgo/defi/defiVault.d.ts.map +1 -0
  119. package/dist/src/bitgo/defi/defiVault.js +354 -0
  120. package/dist/src/bitgo/defi/iDefiVault.d.ts +80 -0
  121. package/dist/src/bitgo/defi/iDefiVault.d.ts.map +1 -0
  122. package/dist/src/bitgo/defi/iDefiVault.js +6 -0
  123. package/dist/src/bitgo/defi/index.d.ts +3 -0
  124. package/dist/src/bitgo/defi/index.d.ts.map +1 -0
  125. package/dist/src/bitgo/defi/index.js +22 -0
  126. package/dist/src/bitgo/ecdh.d.ts +0 -1
  127. package/dist/src/bitgo/ecdh.d.ts.map +1 -1
  128. package/dist/src/bitgo/ecdh.js +26 -13
  129. package/dist/src/bitgo/enterprise/enterprise.d.ts +9 -4
  130. package/dist/src/bitgo/enterprise/enterprise.d.ts.map +1 -1
  131. package/dist/src/bitgo/enterprise/enterprise.js +47 -21
  132. package/dist/src/bitgo/enterprise/enterprises.js +27 -13
  133. package/dist/src/bitgo/enterprise/iEnterprise.d.ts +5 -3
  134. package/dist/src/bitgo/enterprise/iEnterprise.d.ts.map +1 -1
  135. package/dist/src/bitgo/enterprise/iEnterprise.js +1 -1
  136. package/dist/src/bitgo/enterprise/index.js +6 -2
  137. package/dist/src/bitgo/environments.d.ts +68 -3
  138. package/dist/src/bitgo/environments.d.ts.map +1 -1
  139. package/dist/src/bitgo/environments.js +414 -34
  140. package/dist/src/bitgo/errors.d.ts +175 -0
  141. package/dist/src/bitgo/errors.d.ts.map +1 -1
  142. package/dist/src/bitgo/errors.js +166 -2
  143. package/dist/src/bitgo/evm/evmUtils.d.ts +26 -0
  144. package/dist/src/bitgo/evm/evmUtils.d.ts.map +1 -0
  145. package/dist/src/bitgo/evm/evmUtils.js +50 -0
  146. package/dist/src/bitgo/index.d.ts +5 -1
  147. package/dist/src/bitgo/index.d.ts.map +1 -1
  148. package/dist/src/bitgo/index.js +31 -11
  149. package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.d.ts +3 -3
  150. package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.d.ts.map +1 -1
  151. package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.js +1 -1
  152. package/dist/src/bitgo/inscriptionBuilder/index.js +6 -2
  153. package/dist/src/bitgo/internal/index.js +6 -2
  154. package/dist/src/bitgo/internal/internal.js +5 -6
  155. package/dist/src/bitgo/internal/keycard.d.ts +12 -8
  156. package/dist/src/bitgo/internal/keycard.d.ts.map +1 -1
  157. package/dist/src/bitgo/internal/keycard.js +60 -48
  158. package/dist/src/bitgo/keychain/decryptKeychain.d.ts +14 -0
  159. package/dist/src/bitgo/keychain/decryptKeychain.d.ts.map +1 -0
  160. package/dist/src/bitgo/keychain/decryptKeychain.js +36 -0
  161. package/dist/src/bitgo/keychain/iKeychains.d.ts +108 -11
  162. package/dist/src/bitgo/keychain/iKeychains.d.ts.map +1 -1
  163. package/dist/src/bitgo/keychain/iKeychains.js +2 -2
  164. package/dist/src/bitgo/keychain/index.d.ts +1 -0
  165. package/dist/src/bitgo/keychain/index.d.ts.map +1 -1
  166. package/dist/src/bitgo/keychain/index.js +7 -2
  167. package/dist/src/bitgo/keychain/keychains.d.ts +51 -7
  168. package/dist/src/bitgo/keychain/keychains.d.ts.map +1 -1
  169. package/dist/src/bitgo/keychain/keychains.js +245 -52
  170. package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts +3 -3
  171. package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts.map +1 -1
  172. package/dist/src/bitgo/keychain/ovcJsonCodec.js +23 -9
  173. package/dist/src/bitgo/legacyBitcoin.d.ts +0 -1
  174. package/dist/src/bitgo/legacyBitcoin.d.ts.map +1 -1
  175. package/dist/src/bitgo/legacyBitcoin.js +27 -13
  176. package/dist/src/bitgo/lightning/lightningWalletUtil.d.ts +7 -0
  177. package/dist/src/bitgo/lightning/lightningWalletUtil.d.ts.map +1 -0
  178. package/dist/src/bitgo/lightning/lightningWalletUtil.js +25 -0
  179. package/dist/src/bitgo/market/iMarkets.d.ts +2 -2
  180. package/dist/src/bitgo/market/iMarkets.d.ts.map +1 -1
  181. package/dist/src/bitgo/market/index.js +6 -2
  182. package/dist/src/bitgo/market/markets.js +23 -9
  183. package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts +1 -0
  184. package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts.map +1 -1
  185. package/dist/src/bitgo/pendingApproval/iPendingApproval.js +4 -4
  186. package/dist/src/bitgo/pendingApproval/index.js +6 -2
  187. package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts +20 -8
  188. package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts.map +1 -1
  189. package/dist/src/bitgo/pendingApproval/pendingApproval.js +228 -110
  190. package/dist/src/bitgo/pendingApproval/pendingApprovals.js +23 -9
  191. package/dist/src/bitgo/proofs/WalletProofs.d.ts +19 -0
  192. package/dist/src/bitgo/proofs/WalletProofs.d.ts.map +1 -0
  193. package/dist/src/bitgo/proofs/WalletProofs.js +37 -0
  194. package/dist/src/bitgo/proofs/index.d.ts +2 -0
  195. package/dist/src/bitgo/proofs/index.d.ts.map +1 -0
  196. package/dist/src/bitgo/proofs/index.js +6 -0
  197. package/dist/src/bitgo/proofs/types.d.ts +80 -0
  198. package/dist/src/bitgo/proofs/types.d.ts.map +1 -0
  199. package/dist/src/bitgo/proofs/types.js +80 -0
  200. package/dist/src/bitgo/recovery/index.js +6 -2
  201. package/dist/src/bitgo/recovery/initiate.d.ts +13 -3
  202. package/dist/src/bitgo/recovery/initiate.d.ts.map +1 -1
  203. package/dist/src/bitgo/recovery/initiate.js +49 -41
  204. package/dist/src/bitgo/safe/iSafe.d.ts +85 -0
  205. package/dist/src/bitgo/safe/iSafe.d.ts.map +1 -0
  206. package/dist/src/bitgo/safe/iSafe.js +3 -0
  207. package/dist/src/bitgo/safe/iSafes.d.ts +86 -0
  208. package/dist/src/bitgo/safe/iSafes.d.ts.map +1 -0
  209. package/dist/src/bitgo/safe/iSafes.js +3 -0
  210. package/dist/src/bitgo/safe/index.d.ts +5 -0
  211. package/dist/src/bitgo/safe/index.d.ts.map +1 -0
  212. package/dist/src/bitgo/safe/index.js +21 -0
  213. package/dist/src/bitgo/safe/safe.d.ts +66 -0
  214. package/dist/src/bitgo/safe/safe.d.ts.map +1 -0
  215. package/dist/src/bitgo/safe/safe.js +96 -0
  216. package/dist/src/bitgo/safe/safes.d.ts +104 -0
  217. package/dist/src/bitgo/safe/safes.d.ts.map +1 -0
  218. package/dist/src/bitgo/safe/safes.js +294 -0
  219. package/dist/src/bitgo/staking/goStakingInterfaces.d.ts +136 -0
  220. package/dist/src/bitgo/staking/goStakingInterfaces.d.ts.map +1 -0
  221. package/dist/src/bitgo/staking/goStakingInterfaces.js +3 -0
  222. package/dist/src/bitgo/staking/goStakingWallet.d.ts +62 -0
  223. package/dist/src/bitgo/staking/goStakingWallet.d.ts.map +1 -0
  224. package/dist/src/bitgo/staking/goStakingWallet.js +141 -0
  225. package/dist/src/bitgo/staking/iGoStakingWallet.d.ts +17 -0
  226. package/dist/src/bitgo/staking/iGoStakingWallet.d.ts.map +1 -0
  227. package/dist/src/bitgo/staking/iGoStakingWallet.js +3 -0
  228. package/dist/src/bitgo/staking/iStakingWallet.d.ts +178 -7
  229. package/dist/src/bitgo/staking/iStakingWallet.d.ts.map +1 -1
  230. package/dist/src/bitgo/staking/iStakingWallet.js +2 -2
  231. package/dist/src/bitgo/staking/index.d.ts +3 -0
  232. package/dist/src/bitgo/staking/index.d.ts.map +1 -1
  233. package/dist/src/bitgo/staking/index.js +9 -2
  234. package/dist/src/bitgo/staking/stakingWallet.d.ts +21 -8
  235. package/dist/src/bitgo/staking/stakingWallet.d.ts.map +1 -1
  236. package/dist/src/bitgo/staking/stakingWallet.js +140 -7
  237. package/dist/src/bitgo/trading/iTradingAccount.d.ts +15 -1
  238. package/dist/src/bitgo/trading/iTradingAccount.d.ts.map +1 -1
  239. package/dist/src/bitgo/trading/iTradingAccount.js +1 -1
  240. package/dist/src/bitgo/trading/index.d.ts +1 -0
  241. package/dist/src/bitgo/trading/index.d.ts.map +1 -1
  242. package/dist/src/bitgo/trading/index.js +7 -2
  243. package/dist/src/bitgo/trading/network/decrypt-aes-gcm.d.ts +8 -0
  244. package/dist/src/bitgo/trading/network/decrypt-aes-gcm.d.ts.map +1 -0
  245. package/dist/src/bitgo/trading/network/decrypt-aes-gcm.js +31 -0
  246. package/dist/src/bitgo/trading/network/decrypt-rsa.d.ts +8 -0
  247. package/dist/src/bitgo/trading/network/decrypt-rsa.d.ts.map +1 -0
  248. package/dist/src/bitgo/trading/network/decrypt-rsa.js +23 -0
  249. package/dist/src/bitgo/trading/network/decrypt.d.ts +14 -0
  250. package/dist/src/bitgo/trading/network/decrypt.d.ts.map +1 -0
  251. package/dist/src/bitgo/trading/network/decrypt.js +23 -0
  252. package/dist/src/bitgo/trading/network/encrypt-aes-gcm.d.ts +8 -0
  253. package/dist/src/bitgo/trading/network/encrypt-aes-gcm.d.ts.map +1 -0
  254. package/dist/src/bitgo/trading/network/encrypt-aes-gcm.js +25 -0
  255. package/dist/src/bitgo/trading/network/encrypt-rsa-browser.d.ts +8 -0
  256. package/dist/src/bitgo/trading/network/encrypt-rsa-browser.d.ts.map +1 -0
  257. package/dist/src/bitgo/trading/network/encrypt-rsa-browser.js +65 -0
  258. package/dist/src/bitgo/trading/network/encrypt-rsa.d.ts +8 -0
  259. package/dist/src/bitgo/trading/network/encrypt-rsa.d.ts.map +1 -0
  260. package/dist/src/bitgo/trading/network/encrypt-rsa.js +23 -0
  261. package/dist/src/bitgo/trading/network/encrypt.d.ts +37 -0
  262. package/dist/src/bitgo/trading/network/encrypt.d.ts.map +1 -0
  263. package/dist/src/bitgo/trading/network/encrypt.js +58 -0
  264. package/dist/src/bitgo/trading/network/index.d.ts +5 -0
  265. package/dist/src/bitgo/trading/network/index.d.ts.map +1 -0
  266. package/dist/src/bitgo/trading/network/index.js +21 -0
  267. package/dist/src/bitgo/trading/network/network.d.ts +36 -0
  268. package/dist/src/bitgo/trading/network/network.d.ts.map +1 -0
  269. package/dist/src/bitgo/trading/network/network.js +99 -0
  270. package/dist/src/bitgo/trading/network/types.d.ts +277 -0
  271. package/dist/src/bitgo/trading/network/types.d.ts.map +1 -0
  272. package/dist/src/bitgo/trading/network/types.js +3 -0
  273. package/dist/src/bitgo/trading/network/utils.d.ts +20 -0
  274. package/dist/src/bitgo/trading/network/utils.d.ts.map +1 -0
  275. package/dist/src/bitgo/trading/network/utils.js +54 -0
  276. package/dist/src/bitgo/trading/tradingAccount.d.ts +22 -1
  277. package/dist/src/bitgo/trading/tradingAccount.d.ts.map +1 -1
  278. package/dist/src/bitgo/trading/tradingAccount.js +64 -7
  279. package/dist/src/bitgo/tss/bitgoPubKeys.d.ts +38 -0
  280. package/dist/src/bitgo/tss/bitgoPubKeys.d.ts.map +1 -0
  281. package/dist/src/bitgo/tss/bitgoPubKeys.js +72 -0
  282. package/dist/src/bitgo/tss/common.d.ts +40 -6
  283. package/dist/src/bitgo/tss/common.d.ts.map +1 -1
  284. package/dist/src/bitgo/tss/common.js +124 -17
  285. package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts +6 -4
  286. package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts.map +1 -1
  287. package/dist/src/bitgo/tss/ecdsa/ecdsa.js +78 -66
  288. package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.d.ts +15 -0
  289. package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
  290. package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.js +167 -0
  291. package/dist/src/bitgo/tss/ecdsa/index.d.ts +1 -0
  292. package/dist/src/bitgo/tss/ecdsa/index.d.ts.map +1 -1
  293. package/dist/src/bitgo/tss/ecdsa/index.js +25 -10
  294. package/dist/src/bitgo/tss/ecdsa/types.d.ts +27 -27
  295. package/dist/src/bitgo/tss/ecdsa/types.d.ts.map +1 -1
  296. package/dist/src/bitgo/tss/ecdsa/types.js +3 -3
  297. package/dist/src/bitgo/tss/eddsa/eddsa.d.ts +15 -6
  298. package/dist/src/bitgo/tss/eddsa/eddsa.d.ts.map +1 -1
  299. package/dist/src/bitgo/tss/eddsa/eddsa.js +47 -40
  300. package/dist/src/bitgo/tss/eddsa/eddsaMPCv2.d.ts +37 -0
  301. package/dist/src/bitgo/tss/eddsa/eddsaMPCv2.d.ts.map +1 -0
  302. package/dist/src/bitgo/tss/eddsa/eddsaMPCv2.js +95 -0
  303. package/dist/src/bitgo/tss/eddsa/index.js +23 -9
  304. package/dist/src/bitgo/tss/eddsa/types.d.ts +4 -4
  305. package/dist/src/bitgo/tss/eddsa/types.d.ts.map +1 -1
  306. package/dist/src/bitgo/tss/index.d.ts +3 -2
  307. package/dist/src/bitgo/tss/index.d.ts.map +1 -1
  308. package/dist/src/bitgo/tss/index.js +26 -10
  309. package/dist/src/bitgo/tss/types.d.ts +3 -3
  310. package/dist/src/bitgo/tss/types.d.ts.map +1 -1
  311. package/dist/src/bitgo/tss/types.js +2 -2
  312. package/dist/src/bitgo/types.d.ts +3 -3
  313. package/dist/src/bitgo/types.d.ts.map +1 -1
  314. package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts +8 -0
  315. package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts.map +1 -1
  316. package/dist/src/bitgo/utils/abstractUtxoCoinUtil.js +55 -13
  317. package/dist/src/bitgo/utils/codecProps.js +24 -11
  318. package/dist/src/bitgo/utils/codecs.d.ts +11 -0
  319. package/dist/src/bitgo/utils/codecs.d.ts.map +1 -0
  320. package/dist/src/bitgo/utils/codecs.js +59 -0
  321. package/dist/src/bitgo/utils/decode.d.ts.map +1 -1
  322. package/dist/src/bitgo/utils/decode.js +30 -16
  323. package/dist/src/bitgo/utils/index.d.ts +4 -2
  324. package/dist/src/bitgo/utils/index.d.ts.map +1 -1
  325. package/dist/src/bitgo/utils/index.js +27 -11
  326. package/dist/src/bitgo/utils/messageTypes.d.ts +40 -0
  327. package/dist/src/bitgo/utils/messageTypes.d.ts.map +1 -0
  328. package/dist/src/bitgo/utils/messageTypes.js +17 -0
  329. package/dist/src/bitgo/utils/mpcUtils.d.ts +4 -4
  330. package/dist/src/bitgo/utils/mpcUtils.d.ts.map +1 -1
  331. package/dist/src/bitgo/utils/mpcUtils.js +160 -14
  332. package/dist/src/bitgo/utils/notEmpty.d.ts +2 -0
  333. package/dist/src/bitgo/utils/notEmpty.d.ts.map +1 -0
  334. package/dist/src/bitgo/utils/notEmpty.js +7 -0
  335. package/dist/src/bitgo/utils/opengpgUtils.d.ts +10 -7
  336. package/dist/src/bitgo/utils/opengpgUtils.d.ts.map +1 -1
  337. package/dist/src/bitgo/utils/opengpgUtils.js +75 -62
  338. package/dist/src/bitgo/utils/postWithCodec.d.ts.map +1 -1
  339. package/dist/src/bitgo/utils/postWithCodec.js +4 -38
  340. package/dist/src/bitgo/utils/promise-utils.d.ts +1 -1
  341. package/dist/src/bitgo/utils/promise-utils.d.ts.map +1 -1
  342. package/dist/src/bitgo/utils/promise-utils.js +2 -3
  343. package/dist/src/bitgo/utils/transactionUtils.d.ts +9 -0
  344. package/dist/src/bitgo/utils/transactionUtils.d.ts.map +1 -0
  345. package/dist/src/bitgo/utils/transactionUtils.js +29 -0
  346. package/dist/src/bitgo/utils/triple.d.ts +1 -1
  347. package/dist/src/bitgo/utils/triple.d.ts.map +1 -1
  348. package/dist/src/bitgo/utils/triple.js +2 -3
  349. package/dist/src/bitgo/utils/tss/addressVerification.d.ts +62 -0
  350. package/dist/src/bitgo/utils/tss/addressVerification.d.ts.map +1 -0
  351. package/dist/src/bitgo/utils/tss/addressVerification.js +93 -0
  352. package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts +97 -18
  353. package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -1
  354. package/dist/src/bitgo/utils/tss/baseTSSUtils.js +309 -46
  355. package/dist/src/bitgo/utils/tss/baseTypes.d.ts +417 -46
  356. package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -1
  357. package/dist/src/bitgo/utils/tss/baseTypes.js +47 -22
  358. package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.d.ts +23 -0
  359. package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.d.ts.map +1 -0
  360. package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.js +157 -0
  361. package/dist/src/bitgo/utils/tss/ecdsa/base.d.ts +28 -0
  362. package/dist/src/bitgo/utils/tss/ecdsa/base.d.ts.map +1 -0
  363. package/dist/src/bitgo/utils/tss/ecdsa/base.js +53 -0
  364. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts +25 -51
  365. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -1
  366. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +172 -246
  367. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts +216 -0
  368. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
  369. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.js +1050 -0
  370. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.d.ts +8 -0
  371. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.d.ts.map +1 -0
  372. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.js +16 -0
  373. package/dist/src/bitgo/utils/tss/ecdsa/index.d.ts +4 -0
  374. package/dist/src/bitgo/utils/tss/ecdsa/index.d.ts.map +1 -1
  375. package/dist/src/bitgo/utils/tss/ecdsa/index.js +10 -2
  376. package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts +7 -10
  377. package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts.map +1 -1
  378. package/dist/src/bitgo/utils/tss/ecdsa/types.js +1 -1
  379. package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.d.ts +107 -0
  380. package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.d.ts.map +1 -0
  381. package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.js +55 -0
  382. package/dist/src/bitgo/utils/tss/eddsa/SMC/utils.d.ts +21 -0
  383. package/dist/src/bitgo/utils/tss/eddsa/SMC/utils.d.ts.map +1 -0
  384. package/dist/src/bitgo/utils/tss/eddsa/SMC/utils.js +118 -0
  385. package/dist/src/bitgo/utils/tss/eddsa/base.d.ts +18 -0
  386. package/dist/src/bitgo/utils/tss/eddsa/base.d.ts.map +1 -0
  387. package/dist/src/bitgo/utils/tss/eddsa/base.js +64 -0
  388. package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts +38 -11
  389. package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts.map +1 -1
  390. package/dist/src/bitgo/utils/tss/eddsa/eddsa.js +254 -96
  391. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts +156 -0
  392. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts.map +1 -0
  393. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2.js +737 -0
  394. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2KeyGenSender.d.ts +6 -0
  395. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2KeyGenSender.d.ts.map +1 -0
  396. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2KeyGenSender.js +16 -0
  397. package/dist/src/bitgo/utils/tss/eddsa/index.d.ts +4 -0
  398. package/dist/src/bitgo/utils/tss/eddsa/index.d.ts.map +1 -1
  399. package/dist/src/bitgo/utils/tss/eddsa/index.js +29 -8
  400. package/dist/src/bitgo/utils/tss/eddsa/types.d.ts +12 -7
  401. package/dist/src/bitgo/utils/tss/eddsa/types.d.ts.map +1 -1
  402. package/dist/src/bitgo/utils/tss/eddsa/types.js +1 -1
  403. package/dist/src/bitgo/utils/tss/eddsa/typesEddsaMPCv2.d.ts +40 -0
  404. package/dist/src/bitgo/utils/tss/eddsa/typesEddsaMPCv2.d.ts.map +1 -0
  405. package/dist/src/bitgo/utils/tss/eddsa/typesEddsaMPCv2.js +44 -0
  406. package/dist/src/bitgo/utils/tss/index.d.ts +3 -0
  407. package/dist/src/bitgo/utils/tss/index.d.ts.map +1 -1
  408. package/dist/src/bitgo/utils/tss/index.js +26 -9
  409. package/dist/src/bitgo/utils/tss/preHashedSignable.d.ts +23 -0
  410. package/dist/src/bitgo/utils/tss/preHashedSignable.d.ts.map +1 -0
  411. package/dist/src/bitgo/utils/tss/preHashedSignable.js +26 -0
  412. package/dist/src/bitgo/utils/tss/recipientUtils.d.ts +33 -0
  413. package/dist/src/bitgo/utils/tss/recipientUtils.d.ts.map +1 -0
  414. package/dist/src/bitgo/utils/tss/recipientUtils.js +118 -0
  415. package/dist/src/bitgo/utils/txRequest.d.ts +10 -0
  416. package/dist/src/bitgo/utils/txRequest.d.ts.map +1 -0
  417. package/dist/src/bitgo/utils/txRequest.js +49 -0
  418. package/dist/src/bitgo/utils/util.js +24 -10
  419. package/dist/src/bitgo/utils/wallet.d.ts +7 -0
  420. package/dist/src/bitgo/utils/wallet.d.ts.map +1 -0
  421. package/dist/src/bitgo/utils/wallet.js +48 -0
  422. package/dist/src/bitgo/wallet/BuildParams.d.ts +80 -1
  423. package/dist/src/bitgo/wallet/BuildParams.d.ts.map +1 -1
  424. package/dist/src/bitgo/wallet/BuildParams.js +83 -11
  425. package/dist/src/bitgo/wallet/iWallet.d.ts +528 -25
  426. package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
  427. package/dist/src/bitgo/wallet/iWallet.js +1 -1
  428. package/dist/src/bitgo/wallet/iWallets.d.ts +298 -16
  429. package/dist/src/bitgo/wallet/iWallets.d.ts.map +1 -1
  430. package/dist/src/bitgo/wallet/iWallets.js +63 -3
  431. package/dist/src/bitgo/wallet/index.js +6 -2
  432. package/dist/src/bitgo/wallet/wallet.d.ts +353 -27
  433. package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
  434. package/dist/src/bitgo/wallet/wallet.js +2123 -371
  435. package/dist/src/bitgo/wallet/wallets.d.ts +93 -4
  436. package/dist/src/bitgo/wallet/wallets.d.ts.map +1 -1
  437. package/dist/src/bitgo/wallet/wallets.js +1146 -155
  438. package/dist/src/bitgo/walletUtil/iMessageProvider.d.ts +12 -0
  439. package/dist/src/bitgo/walletUtil/iMessageProvider.d.ts.map +1 -0
  440. package/dist/src/bitgo/walletUtil/iMessageProvider.js +3 -0
  441. package/dist/src/bitgo/walletUtil/index.d.ts +3 -0
  442. package/dist/src/bitgo/walletUtil/index.d.ts.map +1 -0
  443. package/dist/src/bitgo/walletUtil/index.js +19 -0
  444. package/dist/src/bitgo/walletUtil/midnightMessageProvider.d.ts +22 -0
  445. package/dist/src/bitgo/walletUtil/midnightMessageProvider.d.ts.map +1 -0
  446. package/dist/src/bitgo/walletUtil/midnightMessageProvider.js +95 -0
  447. package/dist/src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.d.ts +9 -0
  448. package/dist/src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.d.ts.map +1 -0
  449. package/dist/src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.js +72 -0
  450. package/dist/src/bitgo/walletUtil/utxoMessageProof.d.ts +15 -0
  451. package/dist/src/bitgo/walletUtil/utxoMessageProof.d.ts.map +1 -0
  452. package/dist/src/bitgo/walletUtil/utxoMessageProof.js +40 -0
  453. package/dist/src/bitgo/webhook/index.js +6 -2
  454. package/dist/src/bitgo/webhook/webhooks.js +23 -9
  455. package/dist/src/coins/fiat.d.ts +45 -0
  456. package/dist/src/coins/fiat.d.ts.map +1 -0
  457. package/dist/src/coins/fiat.js +94 -0
  458. package/dist/src/coins/index.d.ts +1 -6
  459. package/dist/src/coins/index.d.ts.map +1 -1
  460. package/dist/src/coins/index.js +7 -8
  461. package/dist/src/coins/ofc.d.ts +21 -2
  462. package/dist/src/coins/ofc.d.ts.map +1 -1
  463. package/dist/src/coins/ofc.js +29 -3
  464. package/dist/src/coins/ofcToken.d.ts +15 -4
  465. package/dist/src/coins/ofcToken.d.ts.map +1 -1
  466. package/dist/src/coins/ofcToken.js +43 -5
  467. package/dist/src/coins/susd.d.ts +3 -2
  468. package/dist/src/coins/susd.d.ts.map +1 -1
  469. package/dist/src/coins/susd.js +5 -1
  470. package/dist/src/common.js +27 -13
  471. package/dist/src/index.d.ts +7 -1
  472. package/dist/src/index.d.ts.map +1 -1
  473. package/dist/src/index.js +32 -11
  474. package/dist/src/lightning.d.ts +20 -0
  475. package/dist/src/lightning.d.ts.map +1 -0
  476. package/dist/src/lightning.js +13 -0
  477. package/dist/src/units.js +5 -6
  478. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.d.ts +2 -0
  479. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.d.ts.map +1 -0
  480. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.js +207 -0
  481. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.d.ts +2 -0
  482. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.d.ts.map +1 -0
  483. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.js +174 -0
  484. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts +2 -0
  485. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts.map +1 -0
  486. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +108 -0
  487. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts +46 -0
  488. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts.map +1 -0
  489. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.js +69 -0
  490. package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.js +91 -29
  491. package/dist/test/unit/account-lib/mpc/util.d.ts +2 -0
  492. package/dist/test/unit/account-lib/mpc/util.d.ts.map +1 -0
  493. package/dist/test/unit/account-lib/mpc/util.js +53 -0
  494. package/dist/test/unit/bitgo/address-book/address-book.d.ts +2 -0
  495. package/dist/test/unit/bitgo/address-book/address-book.d.ts.map +1 -0
  496. package/dist/test/unit/bitgo/address-book/address-book.js +159 -0
  497. package/dist/test/unit/bitgo/defi/defiVault.d.ts +2 -0
  498. package/dist/test/unit/bitgo/defi/defiVault.d.ts.map +1 -0
  499. package/dist/test/unit/bitgo/defi/defiVault.js +542 -0
  500. package/dist/test/unit/bitgo/environment.d.ts +2 -0
  501. package/dist/test/unit/bitgo/environment.d.ts.map +1 -0
  502. package/dist/test/unit/bitgo/environment.js +38 -0
  503. package/dist/test/unit/bitgo/errors.d.ts +2 -0
  504. package/dist/test/unit/bitgo/errors.d.ts.map +1 -0
  505. package/dist/test/unit/bitgo/errors.js +262 -0
  506. package/dist/test/unit/bitgo/recovery/initiate.d.ts +2 -0
  507. package/dist/test/unit/bitgo/recovery/initiate.d.ts.map +1 -0
  508. package/dist/test/unit/bitgo/recovery/initiate.js +159 -0
  509. package/dist/test/unit/bitgo/safe/safe.d.ts +2 -0
  510. package/dist/test/unit/bitgo/safe/safe.d.ts.map +1 -0
  511. package/dist/test/unit/bitgo/safe/safe.js +134 -0
  512. package/dist/test/unit/bitgo/safe/safes.d.ts +2 -0
  513. package/dist/test/unit/bitgo/safe/safes.d.ts.map +1 -0
  514. package/dist/test/unit/bitgo/safe/safes.js +297 -0
  515. package/dist/test/unit/bitgo/trading/network/encrypt.d.ts +2 -0
  516. package/dist/test/unit/bitgo/trading/network/encrypt.d.ts.map +1 -0
  517. package/dist/test/unit/bitgo/trading/network/encrypt.js +71 -0
  518. package/dist/test/unit/bitgo/trading/tradingAccount.d.ts +2 -0
  519. package/dist/test/unit/bitgo/trading/tradingAccount.d.ts.map +1 -0
  520. package/dist/test/unit/bitgo/trading/tradingAccount.js +192 -0
  521. package/dist/test/unit/bitgo/utils/abstractUtxoCoinUtil.js +24 -4
  522. package/dist/test/unit/bitgo/utils/messageTypes.d.ts +2 -0
  523. package/dist/test/unit/bitgo/utils/messageTypes.d.ts.map +1 -0
  524. package/dist/test/unit/bitgo/utils/messageTypes.js +64 -0
  525. package/dist/test/unit/bitgo/utils/notEmpty.d.ts +2 -0
  526. package/dist/test/unit/bitgo/utils/notEmpty.d.ts.map +1 -0
  527. package/dist/test/unit/bitgo/utils/notEmpty.js +15 -0
  528. package/dist/test/unit/bitgo/utils/postWithCodec.js +32 -38
  529. package/dist/test/unit/bitgo/utils/tss/addressVerification.d.ts +2 -0
  530. package/dist/test/unit/bitgo/utils/tss/addressVerification.d.ts.map +1 -0
  531. package/dist/test/unit/bitgo/utils/tss/addressVerification.js +251 -0
  532. package/dist/test/unit/bitgo/utils/tss/baseTSSUtils.d.ts +2 -0
  533. package/dist/test/unit/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -0
  534. package/dist/test/unit/bitgo/utils/tss/baseTSSUtils.js +399 -0
  535. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaEncryptionVersion.d.ts +2 -0
  536. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaEncryptionVersion.d.ts.map +1 -0
  537. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaEncryptionVersion.js +94 -0
  538. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts +2 -0
  539. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
  540. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaMPCv2.js +999 -0
  541. package/dist/test/unit/bitgo/utils/tss/ecdsa/gpgKeys.d.ts +5 -0
  542. package/dist/test/unit/bitgo/utils/tss/ecdsa/gpgKeys.d.ts.map +1 -0
  543. package/dist/test/unit/bitgo/utils/tss/ecdsa/gpgKeys.js +36 -0
  544. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaExternalSigner.d.ts +2 -0
  545. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaExternalSigner.d.ts.map +1 -0
  546. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaExternalSigner.js +158 -0
  547. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts +2 -0
  548. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts.map +1 -0
  549. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaMPCv2.js +1524 -0
  550. package/dist/test/unit/bitgo/utils/tss/eddsa/smcUtil.d.ts +2 -0
  551. package/dist/test/unit/bitgo/utils/tss/eddsa/smcUtil.d.ts.map +1 -0
  552. package/dist/test/unit/bitgo/utils/tss/eddsa/smcUtil.js +311 -0
  553. package/dist/test/unit/bitgo/utils/tss/preHashedSignable.d.ts +2 -0
  554. package/dist/test/unit/bitgo/utils/tss/preHashedSignable.d.ts.map +1 -0
  555. package/dist/test/unit/bitgo/utils/tss/preHashedSignable.js +55 -0
  556. package/dist/test/unit/bitgo/utils/tss/recipientUtils.d.ts +2 -0
  557. package/dist/test/unit/bitgo/utils/tss/recipientUtils.d.ts.map +1 -0
  558. package/dist/test/unit/bitgo/utils/tss/recipientUtils.js +172 -0
  559. package/dist/test/unit/bitgo/utils/txRequest.d.ts +2 -0
  560. package/dist/test/unit/bitgo/utils/txRequest.d.ts.map +1 -0
  561. package/dist/test/unit/bitgo/utils/txRequest.js +179 -0
  562. package/dist/test/unit/bitgo/wallet/BuildParams.d.ts +2 -0
  563. package/dist/test/unit/bitgo/wallet/BuildParams.d.ts.map +1 -0
  564. package/dist/test/unit/bitgo/wallet/BuildParams.js +124 -0
  565. package/dist/test/unit/bitgo/wallet/SendTransactionRequest.js +30 -9
  566. package/dist/test/unit/bitgo/wallet/getAccountResources.d.ts +2 -0
  567. package/dist/test/unit/bitgo/wallet/getAccountResources.d.ts.map +1 -0
  568. package/dist/test/unit/bitgo/wallet/getAccountResources.js +133 -0
  569. package/dist/test/unit/bitgo/wallet/getResourceDelegations.d.ts +2 -0
  570. package/dist/test/unit/bitgo/wallet/getResourceDelegations.d.ts.map +1 -0
  571. package/dist/test/unit/bitgo/wallet/getResourceDelegations.js +118 -0
  572. package/dist/test/unit/bitgo/wallet/ofcWalletAddressCreation.d.ts +2 -0
  573. package/dist/test/unit/bitgo/wallet/ofcWalletAddressCreation.d.ts.map +1 -0
  574. package/dist/test/unit/bitgo/wallet/ofcWalletAddressCreation.js +141 -0
  575. package/dist/test/unit/bitgo/wallet/ofcWalletSignTransaction.d.ts +2 -0
  576. package/dist/test/unit/bitgo/wallet/ofcWalletSignTransaction.d.ts.map +1 -0
  577. package/dist/test/unit/bitgo/wallet/ofcWalletSignTransaction.js +185 -0
  578. package/dist/test/unit/bitgo/wallet/resourceManagement.d.ts +3 -0
  579. package/dist/test/unit/bitgo/wallet/resourceManagement.d.ts.map +1 -0
  580. package/dist/test/unit/bitgo/wallet/resourceManagement.js +441 -0
  581. package/dist/test/unit/bitgo/wallet/tokenApproval.d.ts +2 -0
  582. package/dist/test/unit/bitgo/wallet/tokenApproval.d.ts.map +1 -0
  583. package/dist/test/unit/bitgo/wallet/tokenApproval.js +201 -0
  584. package/dist/test/unit/bitgo/wallet/walletEvmAddressCreation.d.ts +2 -0
  585. package/dist/test/unit/bitgo/wallet/walletEvmAddressCreation.d.ts.map +1 -0
  586. package/dist/test/unit/bitgo/wallet/walletEvmAddressCreation.js +181 -0
  587. package/dist/test/unit/bitgo/wallet/walletOptionsCodecs.d.ts +2 -0
  588. package/dist/test/unit/bitgo/wallet/walletOptionsCodecs.d.ts.map +1 -0
  589. package/dist/test/unit/bitgo/wallet/walletOptionsCodecs.js +43 -0
  590. package/dist/test/unit/bitgo/wallet/walletTssAddressVerification.d.ts +2 -0
  591. package/dist/test/unit/bitgo/wallet/walletTssAddressVerification.d.ts.map +1 -0
  592. package/dist/test/unit/bitgo/wallet/walletTssAddressVerification.js +320 -0
  593. package/dist/test/unit/bitgo/wallet/walletsEncryptionVersion.d.ts +2 -0
  594. package/dist/test/unit/bitgo/wallet/walletsEncryptionVersion.d.ts.map +1 -0
  595. package/dist/test/unit/bitgo/wallet/walletsEncryptionVersion.js +228 -0
  596. package/dist/test/unit/bitgo/wallet/walletsEvmKeyring.d.ts +2 -0
  597. package/dist/test/unit/bitgo/wallet/walletsEvmKeyring.d.ts.map +1 -0
  598. package/dist/test/unit/bitgo/wallet/walletsEvmKeyring.js +216 -0
  599. package/dist/test/unit/bitgo/wallet/walletsExternalSigner.d.ts +2 -0
  600. package/dist/test/unit/bitgo/wallet/walletsExternalSigner.d.ts.map +1 -0
  601. package/dist/test/unit/bitgo/wallet/walletsExternalSigner.js +670 -0
  602. package/dist/test/unit/bitgo/wallet/walletsWebauthn.d.ts +2 -0
  603. package/dist/test/unit/bitgo/wallet/walletsWebauthn.d.ts.map +1 -0
  604. package/dist/test/unit/bitgo/wallet/walletsWebauthn.js +201 -0
  605. package/dist/test/unit/coins/ofc.d.ts +2 -0
  606. package/dist/test/unit/coins/ofc.d.ts.map +1 -0
  607. package/dist/test/unit/coins/ofc.js +124 -0
  608. package/dist/test/unit/lightning.d.ts +2 -0
  609. package/dist/test/unit/lightning.d.ts.map +1 -0
  610. package/dist/test/unit/lightning.js +23 -0
  611. package/dist/test/unit/units.d.ts.map +1 -1
  612. package/dist/test/unit/units.js +64 -64
  613. package/dist/tsconfig.tsbuildinfo +1 -1
  614. package/package.json +24 -21
  615. package/.eslintignore +0 -5
  616. package/CHANGELOG.md +0 -1638
  617. package/dist/src/account-lib/baseCoin/blsKeyPair.d.ts +0 -77
  618. package/dist/src/account-lib/baseCoin/blsKeyPair.d.ts.map +0 -1
  619. package/dist/src/account-lib/baseCoin/blsKeyPair.js +0 -209
  620. package/dist/src/bitgo/lightning/iLightning.d.ts +0 -186
  621. package/dist/src/bitgo/lightning/iLightning.d.ts.map +0 -1
  622. package/dist/src/bitgo/lightning/iLightning.js +0 -106
  623. package/dist/src/bitgo/lightning/index.d.ts +0 -5
  624. package/dist/src/bitgo/lightning/index.d.ts.map +0 -1
  625. package/dist/src/bitgo/lightning/index.js +0 -17
  626. package/dist/src/bitgo/lightning/lightning.d.ts +0 -25
  627. package/dist/src/bitgo/lightning/lightning.d.ts.map +0 -1
  628. package/dist/src/bitgo/lightning/lightning.js +0 -111
  629. package/dist/src/bitgo/lightning/lightningUtils.d.ts +0 -46
  630. package/dist/src/bitgo/lightning/lightningUtils.d.ts.map +0 -1
  631. package/dist/src/bitgo/lightning/lightningUtils.js +0 -133
  632. package/dist/src/bitgo/lightning/lnurlCodec.d.ts +0 -3
  633. package/dist/src/bitgo/lightning/lnurlCodec.d.ts.map +0 -1
  634. package/dist/src/bitgo/lightning/lnurlCodec.js +0 -28
  635. package/dist/src/bitgo/utils/blsUtils.d.ts +0 -52
  636. package/dist/src/bitgo/utils/blsUtils.d.ts.map +0 -1
  637. package/dist/src/bitgo/utils/blsUtils.js +0 -237
  638. package/dist/src/bitgo/utils/iBlsUtils.d.ts +0 -14
  639. package/dist/src/bitgo/utils/iBlsUtils.d.ts.map +0 -1
  640. package/dist/src/bitgo/utils/iBlsUtils.js +0 -3
  641. package/dist/src/coins/fiateur.d.ts +0 -31
  642. package/dist/src/coins/fiateur.d.ts.map +0 -1
  643. package/dist/src/coins/fiateur.js +0 -57
  644. package/dist/src/coins/fiatgbp.d.ts +0 -31
  645. package/dist/src/coins/fiatgbp.d.ts.map +0 -1
  646. package/dist/src/coins/fiatgbp.js +0 -57
  647. package/dist/src/coins/fiatusd.d.ts +0 -31
  648. package/dist/src/coins/fiatusd.d.ts.map +0 -1
  649. package/dist/src/coins/fiatusd.js +0 -57
  650. package/dist/src/coins/tfiateur.d.ts +0 -11
  651. package/dist/src/coins/tfiateur.d.ts.map +0 -1
  652. package/dist/src/coins/tfiateur.js +0 -17
  653. package/dist/src/coins/tfiatgbp.d.ts +0 -11
  654. package/dist/src/coins/tfiatgbp.d.ts.map +0 -1
  655. package/dist/src/coins/tfiatgbp.js +0 -17
  656. package/dist/src/coins/tfiatusd.d.ts +0 -11
  657. package/dist/src/coins/tfiatusd.d.ts.map +0 -1
  658. package/dist/src/coins/tfiatusd.js +0 -17
  659. package/dist/src/openssl/index.d.ts +0 -5
  660. package/dist/src/openssl/index.d.ts.map +0 -1
  661. package/dist/src/openssl/index.js +0 -9
  662. package/dist/test/unit/openssl.d.ts +0 -2
  663. package/dist/test/unit/openssl.d.ts.map +0 -1
  664. 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);
@@ -75,6 +79,15 @@ export declare class InvalidKeyPathError extends BitGoJsError {
75
79
  export declare class InvalidTransactionError extends BitGoJsError {
76
80
  constructor(message?: string);
77
81
  }
82
+ export declare class MissingEncryptedKeychainError extends Error {
83
+ constructor(message?: string);
84
+ }
85
+ export declare class IncorrectPasswordError extends Error {
86
+ constructor(message?: string);
87
+ }
88
+ export declare class NeedUserSignupError extends BitGoJsError {
89
+ constructor(message?: string);
90
+ }
78
91
  export declare class ApiResponseError<ResponseBodyType = any> extends BitGoJsError {
79
92
  message: string;
80
93
  status: number;
@@ -83,4 +96,166 @@ export declare class ApiResponseError<ResponseBodyType = any> extends BitGoJsErr
83
96
  needsOTP?: boolean;
84
97
  constructor(message: string, status: number, result?: ResponseBodyType, invalidToken?: boolean, needsOTP?: boolean);
85
98
  }
99
+ /**
100
+ * Interface for token approval information used in suspicious transaction detection
101
+ *
102
+ * @interface TokenApproval
103
+ * @property {string} [tokenName] - Optional human-readable name of the token
104
+ * @property {string} tokenAddress - The contract address of the token being approved
105
+ * @property {Object} authorizingAmount - The amount being authorized for spending
106
+ * @property {string} authorizingAddress - The address being authorized to spend the tokens
107
+ */
108
+ export interface TokenApproval {
109
+ tokenName?: string;
110
+ tokenAddress: string;
111
+ authorizingAmount: {
112
+ type: 'unlimited';
113
+ } | {
114
+ type: 'limited';
115
+ amount: number;
116
+ };
117
+ authorizingAddress: string;
118
+ }
119
+ /**
120
+ * Interface for mismatched recipient information detected during transaction verification
121
+ *
122
+ * @interface MismatchedRecipient
123
+ * @property {string} address - The recipient address that was found in the transaction
124
+ * @property {string} amount - The amount being sent to this recipient
125
+ * @property {string | TokenTransferRecipientParams} [data] - Optional transaction data or token transfer parameters
126
+ * @property {string} [tokenName] - Optional name of the token being transferred
127
+ * @property {TokenTransferRecipientParams} [tokenData] - Optional structured token transfer data
128
+ */
129
+ export type MismatchedRecipient = NonNullable<SendManyOptions['recipients']>[0];
130
+ /**
131
+ * Interface for contract interaction data payload used in suspicious transaction detection
132
+ *
133
+ * @interface ContractDataPayload
134
+ * @property {string} address - The contract address being interacted with
135
+ * @property {string} rawContractPayload - The raw contract payload in serialized form specific to the blockchain
136
+ * @property {unknown} decodedContractPayload - The decoded contract payload, structure varies by coin/chain implementation
137
+ */
138
+ export interface ContractDataPayload {
139
+ address: string;
140
+ rawContractPayload: string;
141
+ decodedContractPayload: unknown;
142
+ }
143
+ /**
144
+ * Base error class for transaction intent mismatch detection
145
+ *
146
+ * This error is thrown when a transaction does not match the user's original intent,
147
+ * indicating potential security issues or malicious modifications.
148
+ *
149
+ * @class TxIntentMismatchError
150
+ * @extends {BitGoJsError}
151
+ * @property {string | IRequestTracer | undefined} id - Transaction ID or request tracer for tracking
152
+ * @property {TransactionParams[]} txParams - Array of transaction parameters that were analyzed
153
+ * @property {string | undefined} txHex - The raw transaction in hexadecimal format
154
+ * @property {string | undefined} txExplanation - Stringified transaction explanation
155
+ */
156
+ export declare class TxIntentMismatchError extends BitGoJsError {
157
+ readonly id: string | IRequestTracer | undefined;
158
+ readonly txParams: TransactionParams[];
159
+ readonly txHex: string | undefined;
160
+ readonly txExplanation: string | undefined;
161
+ /**
162
+ * Creates an instance of TxIntentMismatchError
163
+ *
164
+ * @param {string} message - Error message describing the intent mismatch
165
+ * @param {string | IRequestTracer | undefined} id - Transaction ID or request tracer
166
+ * @param {TransactionParams[]} txParams - Transaction parameters that were analyzed
167
+ * @param {string | undefined} txHex - Raw transaction hex string
168
+ * @param {unknown} txExplanation - Transaction explanation
169
+ */
170
+ constructor(message: string, id: string | IRequestTracer | undefined, txParams: TransactionParams[], txHex: string | undefined, txExplanation?: unknown);
171
+ /**
172
+ * Safely stringify a value with BigInt support
173
+ * @param value - Value to stringify
174
+ * @returns JSON string with BigInts converted to strings
175
+ */
176
+ private static safeStringify;
177
+ /**
178
+ * Try to get transaction explanation from a coin's explainTransaction method.
179
+ *
180
+ * @param coin - Coin instance implementing IBaseCoin
181
+ * @param txPrebuild - Transaction prebuild containing txHex and txInfo
182
+ * @returns Transaction explanation object or undefined
183
+ */
184
+ static tryGetTxExplanation(coin: IBaseCoin, txPrebuild: {
185
+ txHex?: string;
186
+ txInfo?: unknown;
187
+ }): Promise<unknown>;
188
+ }
189
+ /**
190
+ * Error thrown when transaction recipients don't match the user's intent
191
+ *
192
+ * This error occurs when the transaction contains recipients or amounts that differ
193
+ * from what the user originally intended to send.
194
+ *
195
+ * @class TxIntentMismatchRecipientError
196
+ * @extends {TxIntentMismatchError}
197
+ * @property {MismatchedRecipient[]} mismatchedRecipients - Array of recipients that don't match user intent
198
+ */
199
+ export declare class TxIntentMismatchRecipientError extends TxIntentMismatchError {
200
+ readonly mismatchedRecipients: MismatchedRecipient[];
201
+ /**
202
+ * Creates an instance of TxIntentMismatchRecipientError
203
+ *
204
+ * @param {string} message - Error message describing the recipient intent mismatch
205
+ * @param {string | IRequestTracer | undefined} id - Transaction ID or request tracer
206
+ * @param {TransactionParams[]} txParams - Transaction parameters that were analyzed
207
+ * @param {string | undefined} txHex - Raw transaction hex string
208
+ * @param {MismatchedRecipient[]} mismatchedRecipients - Array of recipients that don't match user intent
209
+ * @param {unknown} txExplanation - Transaction explanation
210
+ */
211
+ constructor(message: string, id: string | IRequestTracer | undefined, txParams: TransactionParams[], txHex: string | undefined, mismatchedRecipients: MismatchedRecipient[], txExplanation?: unknown);
212
+ }
213
+ /**
214
+ * Error thrown when contract interaction doesn't match the user's intent
215
+ *
216
+ * This error occurs when a transaction interacts with a smart contract but the
217
+ * contract call data or method doesn't match what the user intended.
218
+ *
219
+ * @class TxIntentMismatchContractError
220
+ * @extends {TxIntentMismatchError}
221
+ * @property {ContractDataPayload} mismatchedDataPayload - The contract interaction data that doesn't match user intent
222
+ */
223
+ export declare class TxIntentMismatchContractError extends TxIntentMismatchError {
224
+ readonly mismatchedDataPayload: ContractDataPayload;
225
+ /**
226
+ * Creates an instance of TxIntentMismatchContractError
227
+ *
228
+ * @param {string} message - Error message describing the contract intent mismatch
229
+ * @param {string | IRequestTracer | undefined} id - Transaction ID or request tracer
230
+ * @param {TransactionParams[]} txParams - Transaction parameters that were analyzed
231
+ * @param {string | undefined} txHex - Raw transaction hex string
232
+ * @param {ContractDataPayload} mismatchedDataPayload - The contract interaction data that doesn't match user intent
233
+ * @param {unknown} txExplanation - Transaction explanation
234
+ */
235
+ constructor(message: string, id: string | IRequestTracer | undefined, txParams: TransactionParams[], txHex: string | undefined, mismatchedDataPayload: ContractDataPayload, txExplanation?: unknown);
236
+ }
237
+ /**
238
+ * Error thrown when token approval doesn't match the user's intent
239
+ *
240
+ * This error occurs when a transaction contains a token approval that the user
241
+ * did not intend to authorize, potentially indicating malicious activity.
242
+ *
243
+ * @class TxIntentMismatchApprovalError
244
+ * @extends {TxIntentMismatchError}
245
+ * @property {TokenApproval} tokenApproval - Details of the token approval that doesn't match user intent
246
+ */
247
+ export declare class TxIntentMismatchApprovalError extends TxIntentMismatchError {
248
+ readonly tokenApproval: TokenApproval;
249
+ /**
250
+ * Creates an instance of TxIntentMismatchApprovalError
251
+ *
252
+ * @param {string} message - Error message describing the approval intent mismatch
253
+ * @param {string | IRequestTracer | undefined} id - Transaction ID or request tracer
254
+ * @param {TransactionParams[]} txParams - Transaction parameters that were analyzed
255
+ * @param {string | undefined} txHex - Raw transaction hex string
256
+ * @param {TokenApproval} tokenApproval - Details of the token approval that doesn't match user intent
257
+ * @param {unknown} txExplanation - Transaction explanation
258
+ */
259
+ constructor(message: string, id: string | IRequestTracer | undefined, txParams: TransactionParams[], txHex: string | undefined, tokenApproval: TokenApproval, txExplanation?: unknown);
260
+ }
86
261
  //# 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.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;
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");
@@ -155,6 +155,24 @@ class InvalidTransactionError extends bitgojsError_1.BitGoJsError {
155
155
  }
156
156
  }
157
157
  exports.InvalidTransactionError = InvalidTransactionError;
158
+ class MissingEncryptedKeychainError extends Error {
159
+ constructor(message) {
160
+ super(message || 'No encrypted keychains on this wallet.');
161
+ }
162
+ }
163
+ exports.MissingEncryptedKeychainError = MissingEncryptedKeychainError;
164
+ class IncorrectPasswordError extends Error {
165
+ constructor(message) {
166
+ super(message || 'Incorrect password');
167
+ }
168
+ }
169
+ exports.IncorrectPasswordError = IncorrectPasswordError;
170
+ class NeedUserSignupError extends bitgojsError_1.BitGoJsError {
171
+ constructor(message) {
172
+ super(message || 'User signup is required');
173
+ }
174
+ }
175
+ exports.NeedUserSignupError = NeedUserSignupError;
158
176
  class ApiResponseError extends bitgojsError_1.BitGoJsError {
159
177
  constructor(message, status, result, invalidToken, needsOTP) {
160
178
  super(message);
@@ -166,4 +184,150 @@ class ApiResponseError extends bitgojsError_1.BitGoJsError {
166
184
  }
167
185
  }
168
186
  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
187
+ /**
188
+ * Base error class for transaction intent mismatch detection
189
+ *
190
+ * This error is thrown when a transaction does not match the user's original intent,
191
+ * indicating potential security issues or malicious modifications.
192
+ *
193
+ * @class TxIntentMismatchError
194
+ * @extends {BitGoJsError}
195
+ * @property {string | IRequestTracer | undefined} id - Transaction ID or request tracer for tracking
196
+ * @property {TransactionParams[]} txParams - Array of transaction parameters that were analyzed
197
+ * @property {string | undefined} txHex - The raw transaction in hexadecimal format
198
+ * @property {string | undefined} txExplanation - Stringified transaction explanation
199
+ */
200
+ class TxIntentMismatchError extends bitgojsError_1.BitGoJsError {
201
+ /**
202
+ * Creates an instance of TxIntentMismatchError
203
+ *
204
+ * @param {string} message - Error message describing the intent mismatch
205
+ * @param {string | IRequestTracer | undefined} id - Transaction ID or request tracer
206
+ * @param {TransactionParams[]} txParams - Transaction parameters that were analyzed
207
+ * @param {string | undefined} txHex - Raw transaction hex string
208
+ * @param {unknown} txExplanation - Transaction explanation
209
+ */
210
+ constructor(message, id, txParams, txHex, txExplanation) {
211
+ super(message);
212
+ this.id = id;
213
+ this.txParams = txParams;
214
+ this.txHex = txHex;
215
+ this.txExplanation = txExplanation ? TxIntentMismatchError.safeStringify(txExplanation) : undefined;
216
+ }
217
+ /**
218
+ * Safely stringify a value with BigInt support
219
+ * @param value - Value to stringify
220
+ * @returns JSON string with BigInts converted to strings
221
+ */
222
+ static safeStringify(value) {
223
+ return JSON.stringify(value, (_, v) => (typeof v === 'bigint' ? v.toString() : v), 2);
224
+ }
225
+ /**
226
+ * Try to get transaction explanation from a coin's explainTransaction method.
227
+ *
228
+ * @param coin - Coin instance implementing IBaseCoin
229
+ * @param txPrebuild - Transaction prebuild containing txHex and txInfo
230
+ * @returns Transaction explanation object or undefined
231
+ */
232
+ static async tryGetTxExplanation(coin, txPrebuild) {
233
+ if (!txPrebuild.txHex) {
234
+ return undefined;
235
+ }
236
+ try {
237
+ return await coin.explainTransaction({
238
+ txHex: txPrebuild.txHex,
239
+ txInfo: txPrebuild.txInfo,
240
+ });
241
+ }
242
+ catch (e) {
243
+ return {
244
+ error: 'Failed to parse transaction explanation',
245
+ txHex: txPrebuild.txHex,
246
+ details: e instanceof Error ? e.message : String(e),
247
+ };
248
+ }
249
+ }
250
+ }
251
+ exports.TxIntentMismatchError = TxIntentMismatchError;
252
+ /**
253
+ * Error thrown when transaction recipients don't match the user's intent
254
+ *
255
+ * This error occurs when the transaction contains recipients or amounts that differ
256
+ * from what the user originally intended to send.
257
+ *
258
+ * @class TxIntentMismatchRecipientError
259
+ * @extends {TxIntentMismatchError}
260
+ * @property {MismatchedRecipient[]} mismatchedRecipients - Array of recipients that don't match user intent
261
+ */
262
+ class TxIntentMismatchRecipientError extends TxIntentMismatchError {
263
+ /**
264
+ * Creates an instance of TxIntentMismatchRecipientError
265
+ *
266
+ * @param {string} message - Error message describing the recipient intent mismatch
267
+ * @param {string | IRequestTracer | undefined} id - Transaction ID or request tracer
268
+ * @param {TransactionParams[]} txParams - Transaction parameters that were analyzed
269
+ * @param {string | undefined} txHex - Raw transaction hex string
270
+ * @param {MismatchedRecipient[]} mismatchedRecipients - Array of recipients that don't match user intent
271
+ * @param {unknown} txExplanation - Transaction explanation
272
+ */
273
+ constructor(message, id, txParams, txHex, mismatchedRecipients, txExplanation) {
274
+ super(message, id, txParams, txHex, txExplanation);
275
+ this.mismatchedRecipients = mismatchedRecipients;
276
+ }
277
+ }
278
+ exports.TxIntentMismatchRecipientError = TxIntentMismatchRecipientError;
279
+ /**
280
+ * Error thrown when contract interaction doesn't match the user's intent
281
+ *
282
+ * This error occurs when a transaction interacts with a smart contract but the
283
+ * contract call data or method doesn't match what the user intended.
284
+ *
285
+ * @class TxIntentMismatchContractError
286
+ * @extends {TxIntentMismatchError}
287
+ * @property {ContractDataPayload} mismatchedDataPayload - The contract interaction data that doesn't match user intent
288
+ */
289
+ class TxIntentMismatchContractError extends TxIntentMismatchError {
290
+ /**
291
+ * Creates an instance of TxIntentMismatchContractError
292
+ *
293
+ * @param {string} message - Error message describing the contract 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 {ContractDataPayload} mismatchedDataPayload - The contract interaction data that doesn't match user intent
298
+ * @param {unknown} txExplanation - Transaction explanation
299
+ */
300
+ constructor(message, id, txParams, txHex, mismatchedDataPayload, txExplanation) {
301
+ super(message, id, txParams, txHex, txExplanation);
302
+ this.mismatchedDataPayload = mismatchedDataPayload;
303
+ }
304
+ }
305
+ exports.TxIntentMismatchContractError = TxIntentMismatchContractError;
306
+ /**
307
+ * Error thrown when token approval doesn't match the user's intent
308
+ *
309
+ * This error occurs when a transaction contains a token approval that the user
310
+ * did not intend to authorize, potentially indicating malicious activity.
311
+ *
312
+ * @class TxIntentMismatchApprovalError
313
+ * @extends {TxIntentMismatchError}
314
+ * @property {TokenApproval} tokenApproval - Details of the token approval that doesn't match user intent
315
+ */
316
+ class TxIntentMismatchApprovalError extends TxIntentMismatchError {
317
+ /**
318
+ * Creates an instance of TxIntentMismatchApprovalError
319
+ *
320
+ * @param {string} message - Error message describing the approval 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 {TokenApproval} tokenApproval - Details of the token approval that doesn't match user intent
325
+ * @param {unknown} txExplanation - Transaction explanation
326
+ */
327
+ constructor(message, id, txParams, txHex, tokenApproval, txExplanation) {
328
+ super(message, id, txParams, txHex, txExplanation);
329
+ this.tokenApproval = tokenApproval;
330
+ }
331
+ }
332
+ exports.TxIntentMismatchApprovalError = TxIntentMismatchApprovalError;
333
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JpdGdvL2Vycm9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw0REFBNEQ7QUFDNUQsa0RBQWtEO0FBQ2xELGtEQUErQztBQU90Qyw2RkFQQSwyQkFBWSxPQU9BO0FBRXJCLE1BQWEscUJBQXNCLFNBQVEsMkJBQVk7SUFDckQsWUFBbUIsT0FBZ0I7UUFDakMsS0FBSyxDQUFDLE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7Q0FDRjtBQUpELHNEQUlDO0FBRUQsTUFBYSxvQkFBcUIsU0FBUSwyQkFBWTtJQUNwRCxZQUFtQixPQUFnQjtRQUNqQyxLQUFLLENBQUMsT0FBTyxJQUFJLHVEQUF1RCxDQUFDLENBQUM7SUFDNUUsQ0FBQztDQUNGO0FBSkQsb0RBSUM7QUFFRCxNQUFhLG9CQUFxQixTQUFRLDJCQUFZO0lBQ3BELFlBQW1CLElBQVk7UUFDN0IsS0FBSyxDQUNILHNCQUFzQixJQUFJLHFLQUFxSyxJQUFJLFNBQVMsQ0FDN00sQ0FBQztJQUNKLENBQUM7Q0FDRjtBQU5ELG9EQU1DO0FBRUQsTUFBYSw2QkFBOEIsU0FBUSwyQkFBWTtJQUM3RCxZQUFZLFdBQW1CLEVBQUUsS0FBc0I7UUFDckQsS0FBSyxDQUFDLGdCQUFnQixXQUFXLGlDQUFpQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzdFLENBQUM7Q0FDRjtBQUpELHNFQUlDO0FBRUQsTUFBYSx5QkFBMEIsU0FBUSwyQkFBWTtJQUN6RCxZQUFZLE9BQWdCO1FBQzFCLEtBQUssQ0FBQyxPQUFPLElBQUksc0NBQXNDLENBQUMsQ0FBQztJQUMzRCxDQUFDO0NBQ0Y7QUFKRCw4REFJQztBQUVELE1BQWEscUJBQXNCLFNBQVEsMkJBQVk7SUFDckQsWUFBbUIsT0FBZ0I7UUFDakMsS0FBSyxDQUFDLE9BQU8sSUFBSSxrQ0FBa0MsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7Q0FDRjtBQUpE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YUFBYSxDQUFDLENBQUM7UUFDbkQsSUFBSSxDQUFDLHFCQUFxQixHQUFHLHFCQUFxQixDQUFDO0lBQ3JELENBQUM7Q0FDRjtBQXhCRCxzRUF3QkM7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFhLDZCQUE4QixTQUFRLHFCQUFxQjtJQUd0RTs7Ozs7Ozs7O09BU0c7SUFDSCxZQUNFLE9BQWUsRUFDZixFQUF1QyxFQUN2QyxRQUE2QixFQUM3QixLQUF5QixFQUN6QixhQUE0QixFQUM1QixhQUF1QjtRQUV2QixLQUFLLENBQUMsT0FBTyxFQUFFLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO0lBQ3JDLENBQUM7Q0FDRjtBQXhCRCxzRUF3QkMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBEZXNjcmlwdGl2ZSBlcnJvciB0eXBlcyBmb3IgY29tbW9uIGlzc3VlcyB3aGljaCBtYXkgYXJpc2Vcbi8vIGR1cmluZyB0aGUgb3BlcmF0aW9uIG9mIEJpdEdvSlMgb3IgQml0R29FeHByZXNzXG5pbXBvcnQgeyBCaXRHb0pzRXJyb3IgfSBmcm9tICcuLi9iaXRnb2pzRXJyb3InO1xuaW1wb3J0IHsgSVJlcXVlc3RUcmFjZXIgfSBmcm9tICcuLi9hcGkvdHlwZXMnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25QYXJhbXMgfSBmcm9tICcuL2Jhc2VDb2luJztcbmltcG9ydCB7IElCYXNlQ29pbiB9IGZyb20gJy4vYmFzZUNvaW4vaUJhc2VDb2luJztcbmltcG9ydCB7IFNlbmRNYW55T3B0aW9ucyB9IGZyb20gJy4vd2FsbGV0JztcblxuLy8gcmUtZXhwb3J0IGZvciBiYWNrd2FyZHMgY29tcGF0XG5leHBvcnQgeyBCaXRHb0pzRXJyb3IgfTtcblxuZXhwb3J0IGNsYXNzIFRsc0NvbmZpZ3VyYXRpb25FcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnVExTIGlzIGNvbmZpZ3VyYXRpb24gaXMgaW52YWxpZCcpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBOb2RlRW52aXJvbm1lbnRFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnTk9ERV9FTlYgaXMgaW52YWxpZCBmb3IgdGhlIGN1cnJlbnQgYml0Z28gZW52aXJvbm1lbnQnKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgVW5zdXBwb3J0ZWRDb2luRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29pbjogc3RyaW5nKSB7XG4gICAgc3VwZXIoXG4gICAgICBgQ29pbiBvciB0b2tlbiB0eXBlICR7Y29pbn0gbm90IHN1cHBvcnRlZCBvciBub3QgY29tcGlsZWQuIFBsZWFzZSBiZSBzdXJlIHRoYXQgeW91IGFyZSB1c2luZyB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgQml0R29KUy4gSWYgdXNpbmcgQGJpdGdvLWJldGEvc2RrLWFwaSwgcGxlYXNlIGNvbmZpcm0geW91IGhhdmUgcmVnaXN0ZXJlZCAke2NvaW59IGZpcnN0LmBcbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBBZGRyZXNzVHlwZUNoYWluTWlzbWF0Y2hFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIGNvbnN0cnVjdG9yKGFkZHJlc3NUeXBlOiBzdHJpbmcsIGNoYWluOiBudW1iZXIgfCBzdHJpbmcpIHtcbiAgICBzdXBlcihgYWRkcmVzcyB0eXBlICR7YWRkcmVzc1R5cGV9IGRvZXMgbm90IGNvcnJlc3BvbmQgdG8gY2hhaW4gJHtjaGFpbn1gKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUDJzaFAyd3NoVW5zdXBwb3J0ZWRFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICdwMnNoUDJ3c2ggbm90IHN1cHBvcnRlZCBieSB0aGlzIGNvaW4nKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgUDJ3c2hVbnN1cHBvcnRlZEVycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICdwMndzaCBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMgY29pbicpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBQMnRyVW5zdXBwb3J0ZWRFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAncDJ0ciBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMgY29pbicpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBQMnRyTXVzaWcyVW5zdXBwb3J0ZWRFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAncDJ0ck11c2lnMiBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMgY29pbicpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBVbnN1cHBvcnRlZEFkZHJlc3NUeXBlRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ2ludmFsaWQgYWRkcmVzcyB0eXBlJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEludmFsaWRBZGRyZXNzRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ2ludmFsaWQgYWRkcmVzcycpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBJbnZhbGlkQWRkcmVzc1ZlcmlmaWNhdGlvbk9iamVjdFByb3BlcnR5RXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ2FkZHJlc3MgdmFsaWRhdGlvbiBmYWlsdXJlJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFVuZXhwZWN0ZWRBZGRyZXNzRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ2FkZHJlc3MgdmFsaWRhdGlvbiBmYWlsdXJlJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEludmFsaWRBZGRyZXNzRGVyaXZhdGlvblByb3BlcnR5RXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ2FkZHJlc3MgY2hhaW4gYW5kL29yIGluZGV4IGFyZSBpbnZhbGlkJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIFdhbGxldFJlY292ZXJ5VW5zdXBwb3J0ZWQgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ3dhbGxldCByZWNvdmVyeSBpcyBub3Qgc3VwcG9ydGVkIGJ5IHRoaXMgY29pbicpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBNZXRob2ROb3RJbXBsZW1lbnRlZEVycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICdtZXRob2Qgbm90IGltcGxlbWVudGVkJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEJsb2NrRXhwbG9yZXJVbmF2YWlsYWJsZSBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAndGhpcmQtcGFydHkgYmxvY2tleHBsb3JlciBub3QgcmVzcG9uZGluZycpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBJbnZhbGlkTWVtb0lkRXJyb3IgZXh0ZW5kcyBJbnZhbGlkQWRkcmVzc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICdpbnZhbGlkIG1lbW8gaWQnKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgSW52YWxpZFBheW1lbnRJZEVycm9yIGV4dGVuZHMgSW52YWxpZEFkZHJlc3NFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnaW52YWxpZCBwYXltZW50IGlkJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEtleVJlY292ZXJ5U2VydmljZUVycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICdrZXkgcmVjb3Zlcnkgc2VydmljZSBlbmNvdW50ZXJlZCBhbiBlcnJvcicpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBBZGRyZXNzR2VuZXJhdGlvbkVycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICdhZGRyZXNzIGdlbmVyYXRpb24gZmFpbGVkJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEV0aGVyZXVtTGlicmFyeVVuYXZhaWxhYmxlRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IocGFja2FnZU5hbWU6IHN0cmluZykge1xuICAgIHN1cGVyKGBFdGhlcmV1bSBsaWJyYXJ5IHJlcXVpcmVkIGZvciBvcGVyYXRpb24gaXMgbm90IGF2YWlsYWJsZS4gUGxlYXNlIGluc3RhbGwgXCIke3BhY2thZ2VOYW1lfVwiLmApO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBTdGVsbGFyRmVkZXJhdGlvblVzZXJOb3RGb3VuZEVycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICdhY2NvdW50IG5vdCBmb3VuZCcpO1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBFcnJvck5vSW5wdXRUb1JlY292ZXIgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ05vIGlucHV0IHRvIHJlY292ZXIgLSBhYm9ydGluZyEnKTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgSW52YWxpZEtleVBhdGhFcnJvciBleHRlbmRzIEJpdEdvSnNFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihrZXlQYXRoOiBzdHJpbmcpIHtcbiAgICBzdXBlcihgaW52YWxpZCBrZXlwYXRoOiAke2tleVBhdGh9YCk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEludmFsaWRUcmFuc2FjdGlvbkVycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKG1lc3NhZ2U/OiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlIHx8ICdJbnZhbGlkIHRyYW5zYWN0aW9uJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIE1pc3NpbmdFbmNyeXB0ZWRLZXljaGFpbkVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ05vIGVuY3J5cHRlZCBrZXljaGFpbnMgb24gdGhpcyB3YWxsZXQuJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEluY29ycmVjdFBhc3N3b3JkRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihtZXNzYWdlPzogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSB8fCAnSW5jb3JyZWN0IHBhc3N3b3JkJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIE5lZWRVc2VyU2lnbnVwRXJyb3IgZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBwdWJsaWMgY29uc3RydWN0b3IobWVzc2FnZT86IHN0cmluZykge1xuICAgIHN1cGVyKG1lc3NhZ2UgfHwgJ1VzZXIgc2lnbnVwIGlzIHJlcXVpcmVkJyk7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEFwaVJlc3BvbnNlRXJyb3I8UmVzcG9uc2VCb2R5VHlwZSA9IGFueT4gZXh0ZW5kcyBCaXRHb0pzRXJyb3Ige1xuICBtZXNzYWdlOiBzdHJpbmc7XG4gIHN0YXR1czogbnVtYmVyO1xuICByZXN1bHQ/OiBSZXNwb25zZUJvZHlUeXBlO1xuICBpbnZhbGlkVG9rZW4/OiBib29sZWFuO1xuICBuZWVkc09UUD86IGJvb2xlYW47XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIG1lc3NhZ2U6IHN0cmluZyxcbiAgICBzdGF0dXM6IG51bWJlcixcbiAgICByZXN1bHQ/OiBSZXNwb25zZUJvZHlUeXBlLFxuICAgIGludmFsaWRUb2tlbj86IGJvb2xlYW4sXG4gICAgbmVlZHNPVFA/OiBib29sZWFuXG4gICkge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICAgIHRoaXMubWVzc2FnZSA9IG1lc3NhZ2U7XG4gICAgdGhpcy5zdGF0dXMgPSBzdGF0dXM7XG4gICAgdGhpcy5yZXN1bHQgPSByZXN1bHQ7XG4gICAgdGhpcy5pbnZhbGlkVG9rZW4gPSBpbnZhbGlkVG9rZW47XG4gICAgdGhpcy5uZWVkc09UUCA9IG5lZWRzT1RQO1xuICB9XG59XG5cbi8qKlxuICogSW50ZXJmYWNlIGZvciB0b2tlbiBhcHByb3ZhbCBpbmZvcm1hdGlvbiB1c2VkIGluIHN1c3BpY2lvdXMgdHJhbnNhY3Rpb24gZGV0ZWN0aW9uXG4gKlxuICogQGludGVyZmFjZSBUb2tlbkFwcHJvdmFsXG4gKiBAcHJvcGVydHkge3N0cmluZ30gW3Rva2VuTmFtZV0gLSBPcHRpb25hbCBodW1hbi1yZWFkYWJsZSBuYW1lIG9mIHRoZSB0b2tlblxuICogQHByb3BlcnR5IHtzdHJpbmd9IHRva2VuQWRkcmVzcyAtIFRoZSBjb250cmFjdCBhZGRyZXNzIG9mIHRoZSB0b2tlbiBiZWluZyBhcHByb3ZlZFxuICogQHByb3BlcnR5IHtPYmplY3R9IGF1dGhvcml6aW5nQW1vdW50IC0gVGhlIGFtb3VudCBiZWluZyBhdXRob3JpemVkIGZvciBzcGVuZGluZ1xuICogQHByb3BlcnR5IHtzdHJpbmd9IGF1dGhvcml6aW5nQWRkcmVzcyAtIFRoZSBhZGRyZXNzIGJlaW5nIGF1dGhvcml6ZWQgdG8gc3BlbmQgdGhlIHRva2Vuc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFRva2VuQXBwcm92YWwge1xuICB0b2tlbk5hbWU/OiBzdHJpbmc7XG4gIHRva2VuQWRkcmVzczogc3RyaW5nO1xuICBhdXRob3JpemluZ0Ftb3VudDogeyB0eXBlOiAndW5saW1pdGVkJyB9IHwgeyB0eXBlOiAnbGltaXRlZCc7IGFtb3VudDogbnVtYmVyIH07XG4gIGF1dGhvcml6aW5nQWRkcmVzczogc3RyaW5nO1xufVxuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgbWlzbWF0Y2hlZCByZWNpcGllbnQgaW5mb3JtYXRpb24gZGV0ZWN0ZWQgZHVyaW5nIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvblxuICpcbiAqIEBpbnRlcmZhY2UgTWlzbWF0Y2hlZFJlY2lwaWVudFxuICogQHByb3BlcnR5IHtzdHJpbmd9IGFkZHJlc3MgLSBUaGUgcmVjaXBpZW50IGFkZHJlc3MgdGhhdCB3YXMgZm91bmQgaW4gdGhlIHRyYW5zYWN0aW9uXG4gKiBAcHJvcGVydHkge3N0cmluZ30gYW1vdW50IC0gVGhlIGFtb3VudCBiZWluZyBzZW50IHRvIHRoaXMgcmVjaXBpZW50XG4gKiBAcHJvcGVydHkge3N0cmluZyB8IFRva2VuVHJhbnNmZXJSZWNpcGllbnRQYXJhbXN9IFtkYXRhXSAtIE9wdGlvbmFsIHRyYW5zYWN0aW9uIGRhdGEgb3IgdG9rZW4gdHJhbnNmZXIgcGFyYW1ldGVyc1xuICogQHByb3BlcnR5IHtzdHJpbmd9IFt0b2tlbk5hbWVdIC0gT3B0aW9uYWwgbmFtZSBvZiB0aGUgdG9rZW4gYmVpbmcgdHJhbnNmZXJyZWRcbiAqIEBwcm9wZXJ0eSB7VG9rZW5UcmFuc2ZlclJlY2lwaWVudFBhcmFtc30gW3Rva2VuRGF0YV0gLSBPcHRpb25hbCBzdHJ1Y3R1cmVkIHRva2VuIHRyYW5zZmVyIGRhdGFcbiAqL1xuZXhwb3J0IHR5cGUgTWlzbWF0Y2hlZFJlY2lwaWVudCA9IE5vbk51bGxhYmxlPFNlbmRNYW55T3B0aW9uc1sncmVjaXBpZW50cyddPlswXTtcblxuLyoqXG4gKiBJbnRlcmZhY2UgZm9yIGNvbnRyYWN0IGludGVyYWN0aW9uIGRhdGEgcGF5bG9hZCB1c2VkIGluIHN1c3BpY2lvdXMgdHJhbnNhY3Rpb24gZGV0ZWN0aW9uXG4gKlxuICogQGludGVyZmFjZSBDb250cmFjdERhdGFQYXlsb2FkXG4gKiBAcHJvcGVydHkge3N0cmluZ30gYWRkcmVzcyAtIFRoZSBjb250cmFjdCBhZGRyZXNzIGJlaW5nIGludGVyYWN0ZWQgd2l0aFxuICogQHByb3BlcnR5IHtzdHJpbmd9IHJhd0NvbnRyYWN0UGF5bG9hZCAtIFRoZSByYXcgY29udHJhY3QgcGF5bG9hZCBpbiBzZXJpYWxpemVkIGZvcm0gc3BlY2lmaWMgdG8gdGhlIGJsb2NrY2hhaW5cbiAqIEBwcm9wZXJ0eSB7dW5rbm93bn0gZGVjb2RlZENvbnRyYWN0UGF5bG9hZCAtIFRoZSBkZWNvZGVkIGNvbnRyYWN0IHBheWxvYWQsIHN0cnVjdHVyZSB2YXJpZXMgYnkgY29pbi9jaGFpbiBpbXBsZW1lbnRhdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbnRyYWN0RGF0YVBheWxvYWQge1xuICBhZGRyZXNzOiBzdHJpbmc7XG4gIC8vIFRoZSByYXcgY29udHJhY3QgcGF5bG9hZCBpbiBzZXJpYWxpemVkIGZvcm0gb2YgdGhlIGNoYWluXG4gIHJhd0NvbnRyYWN0UGF5bG9hZDogc3RyaW5nO1xuICAvLyBUbyBiZSBkZWZpbmVkIG9uIGEgcGVyLWNvaW4gYmFzaXNcbiAgZGVjb2RlZENvbnRyYWN0UGF5bG9hZDogdW5rbm93bjtcbn1cblxuLyoqXG4gKiBCYXNlIGVycm9yIGNsYXNzIGZvciB0cmFuc2FjdGlvbiBpbnRlbnQgbWlzbWF0Y2ggZGV0ZWN0aW9uXG4gKlxuICogVGhpcyBlcnJvciBpcyB0aHJvd24gd2hlbiBhIHRyYW5zYWN0aW9uIGRvZXMgbm90IG1hdGNoIHRoZSB1c2VyJ3Mgb3JpZ2luYWwgaW50ZW50LFxuICogaW5kaWNhdGluZyBwb3RlbnRpYWwgc2VjdXJpdHkgaXNzdWVzIG9yIG1hbGljaW91cyBtb2RpZmljYXRpb25zLlxuICpcbiAqIEBjbGFzcyBUeEludGVudE1pc21hdGNoRXJyb3JcbiAqIEBleHRlbmRzIHtCaXRHb0pzRXJyb3J9XG4gKiBAcHJvcGVydHkge3N0cmluZyB8IElSZXF1ZXN0VHJhY2VyIHwgdW5kZWZpbmVkfSBpZCAtIFRyYW5zYWN0aW9uIElEIG9yIHJlcXVlc3QgdHJhY2VyIGZvciB0cmFja2luZ1xuICogQHByb3BlcnR5IHtUcmFuc2FjdGlvblBhcmFtc1tdfSB0eFBhcmFtcyAtIEFycmF5IG9mIHRyYW5zYWN0aW9uIHBhcmFtZXRlcnMgdGhhdCB3ZXJlIGFuYWx5emVkXG4gKiBAcHJvcGVydHkge3N0cmluZyB8IHVuZGVmaW5lZH0gdHhIZXggLSBUaGUgcmF3IHRyYW5zYWN0aW9uIGluIGhleGFkZWNpbWFsIGZvcm1hdFxuICogQHByb3BlcnR5IHtzdHJpbmcgfCB1bmRlZmluZWR9IHR4RXhwbGFuYXRpb24gLSBTdHJpbmdpZmllZCB0cmFuc2FjdGlvbiBleHBsYW5hdGlvblxuICovXG5leHBvcnQgY2xhc3MgVHhJbnRlbnRNaXNtYXRjaEVycm9yIGV4dGVuZHMgQml0R29Kc0Vycm9yIHtcbiAgcHVibGljIHJlYWRvbmx5IGlkOiBzdHJpbmcgfCBJUmVxdWVzdFRyYWNlciB8IHVuZGVmaW5lZDtcbiAgcHVibGljIHJlYWRvbmx5IHR4UGFyYW1zOiBUcmFuc2FjdGlvblBhcmFtc1tdO1xuICBwdWJsaWMgcmVhZG9ubHkgdHhIZXg6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgcHVibGljIHJlYWRvbmx5IHR4RXhwbGFuYXRpb246IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiBUeEludGVudE1pc21hdGNoRXJyb3JcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IG1lc3NhZ2UgLSBFcnJvciBtZXNzYWdlIGRlc2NyaWJpbmcgdGhlIGludGVudCBtaXNtYXRjaFxuICAgKiBAcGFyYW0ge3N0cmluZyB8IElSZXF1ZXN0VHJhY2VyIHwgdW5kZWZpbmVkfSBpZCAtIFRyYW5zYWN0aW9uIElEIG9yIHJlcXVlc3QgdHJhY2VyXG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb25QYXJhbXNbXX0gdHhQYXJhbXMgLSBUcmFuc2FjdGlvbiBwYXJhbWV0ZXJzIHRoYXQgd2VyZSBhbmFseXplZFxuICAgKiBAcGFyYW0ge3N0cmluZyB8IHVuZGVmaW5lZH0gdHhIZXggLSBSYXcgdHJhbnNhY3Rpb24gaGV4IHN0cmluZ1xuICAgKiBAcGFyYW0ge3Vua25vd259IHR4RXhwbGFuYXRpb24gLSBUcmFuc2FjdGlvbiBleHBsYW5hdGlvblxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIG1lc3NhZ2U6IHN0cmluZyxcbiAgICBpZDogc3RyaW5nIHwgSVJlcXVlc3RUcmFjZXIgfCB1bmRlZmluZWQsXG4gICAgdHhQYXJhbXM6IFRyYW5zYWN0aW9uUGFyYW1zW10sXG4gICAgdHhIZXg6IHN0cmluZyB8IHVuZGVmaW5lZCxcbiAgICB0eEV4cGxhbmF0aW9uPzogdW5rbm93blxuICApIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgICB0aGlzLmlkID0gaWQ7XG4gICAgdGhpcy50eFBhcmFtcyA9IHR4UGFyYW1zO1xuICAgIHRoaXMudHhIZXggPSB0eEhleDtcbiAgICB0aGlzLnR4RXhwbGFuYXRpb24gPSB0eEV4cGxhbmF0aW9uID8gVHhJbnRlbnRNaXNtYXRjaEVycm9yLnNhZmVTdHJpbmdpZnkodHhFeHBsYW5hdGlvbikgOiB1bmRlZmluZWQ7XG4gIH1cblxuICAvKipcbiAgICogU2FmZWx5IHN0cmluZ2lmeSBhIHZhbHVlIHdpdGggQmlnSW50IHN1cHBvcnRcbiAgICogQHBhcmFtIHZhbHVlIC0gVmFsdWUgdG8gc3RyaW5naWZ5XG4gICAqIEByZXR1cm5zIEpTT04gc3RyaW5nIHdpdGggQmlnSW50cyBjb252ZXJ0ZWQgdG8gc3RyaW5nc1xuICAgKi9cbiAgcHJpdmF0ZSBzdGF0aWMgc2FmZVN0cmluZ2lmeSh2YWx1ZTogdW5rbm93bik6IHN0cmluZyB7XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHZhbHVlLCAoXywgdikgPT4gKHR5cGVvZiB2ID09PSAnYmlnaW50JyA/IHYudG9TdHJpbmcoKSA6IHYpLCAyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcnkgdG8gZ2V0IHRyYW5zYWN0aW9uIGV4cGxhbmF0aW9uIGZyb20gYSBjb2luJ3MgZXhwbGFpblRyYW5zYWN0aW9uIG1ldGhvZC5cbiAgICpcbiAgICogQHBhcmFtIGNvaW4gLSBDb2luIGluc3RhbmNlIGltcGxlbWVudGluZyBJQmFzZUNvaW5cbiAgICogQHBhcmFtIHR4UHJlYnVpbGQgLSBUcmFuc2FjdGlvbiBwcmVidWlsZCBjb250YWluaW5nIHR4SGV4IGFuZCB0eEluZm9cbiAgICogQHJldHVybnMgVHJhbnNhY3Rpb24gZXhwbGFuYXRpb24gb2JqZWN0IG9yIHVuZGVmaW5lZFxuICAgKi9cbiAgc3RhdGljIGFzeW5jIHRyeUdldFR4RXhwbGFuYXRpb24oXG4gICAgY29pbjogSUJhc2VDb2luLFxuICAgIHR4UHJlYnVpbGQ6IHsgdHhIZXg/OiBzdHJpbmc7IHR4SW5mbz86IHVua25vd24gfVxuICApOiBQcm9taXNlPHVua25vd24+IHtcbiAgICBpZiAoIXR4UHJlYnVpbGQudHhIZXgpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhd2FpdCBjb2luLmV4cGxhaW5UcmFuc2FjdGlvbih7XG4gICAgICAgIHR4SGV4OiB0eFByZWJ1aWxkLnR4SGV4LFxuICAgICAgICB0eEluZm86IHR4UHJlYnVpbGQudHhJbmZvLFxuICAgICAgfSk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgZXJyb3I6ICdGYWlsZWQgdG8gcGFyc2UgdHJhbnNhY3Rpb24gZXhwbGFuYXRpb24nLFxuICAgICAgICB0eEhleDogdHhQcmVidWlsZC50eEhleCxcbiAgICAgICAgZGV0YWlsczogZSBpbnN0YW5jZW9mIEVycm9yID8gZS5tZXNzYWdlIDogU3RyaW5nKGUpLFxuICAgICAgfTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBFcnJvciB0aHJvd24gd2hlbiB0cmFuc2FjdGlvbiByZWNpcGllbnRzIGRvbid0IG1hdGNoIHRoZSB1c2VyJ3MgaW50ZW50XG4gKlxuICogVGhpcyBlcnJvciBvY2N1cnMgd2hlbiB0aGUgdHJhbnNhY3Rpb24gY29udGFpbnMgcmVjaXBpZW50cyBvciBhbW91bnRzIHRoYXQgZGlmZmVyXG4gKiBmcm9tIHdoYXQgdGhlIHVzZXIgb3JpZ2luYWxseSBpbnRlbmRlZCB0byBzZW5kLlxuICpcbiAqIEBjbGFzcyBUeEludGVudE1pc21hdGNoUmVjaXBpZW50RXJyb3JcbiAqIEBleHRlbmRzIHtUeEludGVudE1pc21hdGNoRXJyb3J9XG4gKiBAcHJvcGVydHkge01pc21hdGNoZWRSZWNpcGllbnRbXX0gbWlzbWF0Y2hlZFJlY2lwaWVudHMgLSBBcnJheSBvZiByZWNpcGllbnRzIHRoYXQgZG9uJ3QgbWF0Y2ggdXNlciBpbnRlbnRcbiAqL1xuZXhwb3J0IGNsYXNzIFR4SW50ZW50TWlzbWF0Y2hSZWNpcGllbnRFcnJvciBleHRlbmRzIFR4SW50ZW50TWlzbWF0Y2hFcnJvciB7XG4gIHB1YmxpYyByZWFkb25seSBtaXNtYXRjaGVkUmVjaXBpZW50czogTWlzbWF0Y2hlZFJlY2lwaWVudFtdO1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIFR4SW50ZW50TWlzbWF0Y2hSZWNpcGllbnRFcnJvclxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbWVzc2FnZSAtIEVycm9yIG1lc3NhZ2UgZGVzY3JpYmluZyB0aGUgcmVjaXBpZW50IGludGVudCBtaXNtYXRjaFxuICAgKiBAcGFyYW0ge3N0cmluZyB8IElSZXF1ZXN0VHJhY2VyIHwgdW5kZWZpbmVkfSBpZCAtIFRyYW5zYWN0aW9uIElEIG9yIHJlcXVlc3QgdHJhY2VyXG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb25QYXJhbXNbXX0gdHhQYXJhbXMgLSBUcmFuc2FjdGlvbiBwYXJhbWV0ZXJzIHRoYXQgd2VyZSBhbmFseXplZFxuICAgKiBAcGFyYW0ge3N0cmluZyB8IHVuZGVmaW5lZH0gdHhIZXggLSBSYXcgdHJhbnNhY3Rpb24gaGV4IHN0cmluZ1xuICAgKiBAcGFyYW0ge01pc21hdGNoZWRSZWNpcGllbnRbXX0gbWlzbWF0Y2hlZFJlY2lwaWVudHMgLSBBcnJheSBvZiByZWNpcGllbnRzIHRoYXQgZG9uJ3QgbWF0Y2ggdXNlciBpbnRlbnRcbiAgICogQHBhcmFtIHt1bmtub3dufSB0eEV4cGxhbmF0aW9uIC0gVHJhbnNhY3Rpb24gZXhwbGFuYXRpb25cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBtZXNzYWdlOiBzdHJpbmcsXG4gICAgaWQ6IHN0cmluZyB8IElSZXF1ZXN0VHJhY2VyIHwgdW5kZWZpbmVkLFxuICAgIHR4UGFyYW1zOiBUcmFuc2FjdGlvblBhcmFtc1tdLFxuICAgIHR4SGV4OiBzdHJpbmcgfCB1bmRlZmluZWQsXG4gICAgbWlzbWF0Y2hlZFJlY2lwaWVudHM6IE1pc21hdGNoZWRSZWNpcGllbnRbXSxcbiAgICB0eEV4cGxhbmF0aW9uPzogdW5rbm93blxuICApIHtcbiAgICBzdXBlcihtZXNzYWdlLCBpZCwgdHhQYXJhbXMsIHR4SGV4LCB0eEV4cGxhbmF0aW9uKTtcbiAgICB0aGlzLm1pc21hdGNoZWRSZWNpcGllbnRzID0gbWlzbWF0Y2hlZFJlY2lwaWVudHM7XG4gIH1cbn1cblxuLyoqXG4gKiBFcnJvciB0aHJvd24gd2hlbiBjb250cmFjdCBpbnRlcmFjdGlvbiBkb2Vzbid0IG1hdGNoIHRoZSB1c2VyJ3MgaW50ZW50XG4gKlxuICogVGhpcyBlcnJvciBvY2N1cnMgd2hlbiBhIHRyYW5zYWN0aW9uIGludGVyYWN0cyB3aXRoIGEgc21hcnQgY29udHJhY3QgYnV0IHRoZVxuICogY29udHJhY3QgY2FsbCBkYXRhIG9yIG1ldGhvZCBkb2Vzbid0IG1hdGNoIHdoYXQgdGhlIHVzZXIgaW50ZW5kZWQuXG4gKlxuICogQGNsYXNzIFR4SW50ZW50TWlzbWF0Y2hDb250cmFjdEVycm9yXG4gKiBAZXh0ZW5kcyB7VHhJbnRlbnRNaXNtYXRjaEVycm9yfVxuICogQHByb3BlcnR5IHtDb250cmFjdERhdGFQYXlsb2FkfSBtaXNtYXRjaGVkRGF0YVBheWxvYWQgLSBUaGUgY29udHJhY3QgaW50ZXJhY3Rpb24gZGF0YSB0aGF0IGRvZXNuJ3QgbWF0Y2ggdXNlciBpbnRlbnRcbiAqL1xuZXhwb3J0IGNsYXNzIFR4SW50ZW50TWlzbWF0Y2hDb250cmFjdEVycm9yIGV4dGVuZHMgVHhJbnRlbnRNaXNtYXRjaEVycm9yIHtcbiAgcHVibGljIHJlYWRvbmx5IG1pc21hdGNoZWREYXRhUGF5bG9hZDogQ29udHJhY3REYXRhUGF5bG9hZDtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiBUeEludGVudE1pc21hdGNoQ29udHJhY3RFcnJvclxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbWVzc2FnZSAtIEVycm9yIG1lc3NhZ2UgZGVzY3JpYmluZyB0aGUgY29udHJhY3QgaW50ZW50IG1pc21hdGNoXG4gICAqIEBwYXJhbSB7c3RyaW5nIHwgSVJlcXVlc3RUcmFjZXIgfCB1bmRlZmluZWR9IGlkIC0gVHJhbnNhY3Rpb24gSUQgb3IgcmVxdWVzdCB0cmFjZXJcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvblBhcmFtc1tdfSB0eFBhcmFtcyAtIFRyYW5zYWN0aW9uIHBhcmFtZXRlcnMgdGhhdCB3ZXJlIGFuYWx5emVkXG4gICAqIEBwYXJhbSB7c3RyaW5nIHwgdW5kZWZpbmVkfSB0eEhleCAtIFJhdyB0cmFuc2FjdGlvbiBoZXggc3RyaW5nXG4gICAqIEBwYXJhbSB7Q29udHJhY3REYXRhUGF5bG9hZH0gbWlzbWF0Y2hlZERhdGFQYXlsb2FkIC0gVGhlIGNvbnRyYWN0IGludGVyYWN0aW9uIGRhdGEgdGhhdCBkb2Vzbid0IG1hdGNoIHVzZXIgaW50ZW50XG4gICAqIEBwYXJhbSB7dW5rbm93bn0gdHhFeHBsYW5hdGlvbiAtIFRyYW5zYWN0aW9uIGV4cGxhbmF0aW9uXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgbWVzc2FnZTogc3RyaW5nLFxuICAgIGlkOiBzdHJpbmcgfCBJUmVxdWVzdFRyYWNlciB8IHVuZGVmaW5lZCxcbiAgICB0eFBhcmFtczogVHJhbnNhY3Rpb25QYXJhbXNbXSxcbiAgICB0eEhleDogc3RyaW5nIHwgdW5kZWZpbmVkLFxuICAgIG1pc21hdGNoZWREYXRhUGF5bG9hZDogQ29udHJhY3REYXRhUGF5bG9hZCxcbiAgICB0eEV4cGxhbmF0aW9uPzogdW5rbm93blxuICApIHtcbiAgICBzdXBlcihtZXNzYWdlLCBpZCwgdHhQYXJhbXMsIHR4SGV4LCB0eEV4cGxhbmF0aW9uKTtcbiAgICB0aGlzLm1pc21hdGNoZWREYXRhUGF5bG9hZCA9IG1pc21hdGNoZWREYXRhUGF5bG9hZDtcbiAgfVxufVxuXG4vKipcbiAqIEVycm9yIHRocm93biB3aGVuIHRva2VuIGFwcHJvdmFsIGRvZXNuJ3QgbWF0Y2ggdGhlIHVzZXIncyBpbnRlbnRcbiAqXG4gKiBUaGlzIGVycm9yIG9jY3VycyB3aGVuIGEgdHJhbnNhY3Rpb24gY29udGFpbnMgYSB0b2tlbiBhcHByb3ZhbCB0aGF0IHRoZSB1c2VyXG4gKiBkaWQgbm90IGludGVuZCB0byBhdXRob3JpemUsIHBvdGVudGlhbGx5IGluZGljYXRpbmcgbWFsaWNpb3VzIGFjdGl2aXR5LlxuICpcbiAqIEBjbGFzcyBUeEludGVudE1pc21hdGNoQXBwcm92YWxFcnJvclxuICogQGV4dGVuZHMge1R4SW50ZW50TWlzbWF0Y2hFcnJvcn1cbiAqIEBwcm9wZXJ0eSB7VG9rZW5BcHByb3ZhbH0gdG9rZW5BcHByb3ZhbCAtIERldGFpbHMgb2YgdGhlIHRva2VuIGFwcHJvdmFsIHRoYXQgZG9lc24ndCBtYXRjaCB1c2VyIGludGVudFxuICovXG5leHBvcnQgY2xhc3MgVHhJbnRlbnRNaXNtYXRjaEFwcHJvdmFsRXJyb3IgZXh0ZW5kcyBUeEludGVudE1pc21hdGNoRXJyb3Ige1xuICBwdWJsaWMgcmVhZG9ubHkgdG9rZW5BcHByb3ZhbDogVG9rZW5BcHByb3ZhbDtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiBUeEludGVudE1pc21hdGNoQXBwcm92YWxFcnJvclxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbWVzc2FnZSAtIEVycm9yIG1lc3NhZ2UgZGVzY3JpYmluZyB0aGUgYXBwcm92YWwgaW50ZW50IG1pc21hdGNoXG4gICAqIEBwYXJhbSB7c3RyaW5nIHwgSVJlcXVlc3RUcmFjZXIgfCB1bmRlZmluZWR9IGlkIC0gVHJhbnNhY3Rpb24gSUQgb3IgcmVxdWVzdCB0cmFjZXJcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvblBhcmFtc1tdfSB0eFBhcmFtcyAtIFRyYW5zYWN0aW9uIHBhcmFtZXRlcnMgdGhhdCB3ZXJlIGFuYWx5emVkXG4gICAqIEBwYXJhbSB7c3RyaW5nIHwgdW5kZWZpbmVkfSB0eEhleCAtIFJhdyB0cmFuc2FjdGlvbiBoZXggc3RyaW5nXG4gICAqIEBwYXJhbSB7VG9rZW5BcHByb3ZhbH0gdG9rZW5BcHByb3ZhbCAtIERldGFpbHMgb2YgdGhlIHRva2VuIGFwcHJvdmFsIHRoYXQgZG9lc24ndCBtYXRjaCB1c2VyIGludGVudFxuICAgKiBAcGFyYW0ge3Vua25vd259IHR4RXhwbGFuYXRpb24gLSBUcmFuc2FjdGlvbiBleHBsYW5hdGlvblxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIG1lc3NhZ2U6IHN0cmluZyxcbiAgICBpZDogc3RyaW5nIHwgSVJlcXVlc3RUcmFjZXIgfCB1bmRlZmluZWQsXG4gICAgdHhQYXJhbXM6IFRyYW5zYWN0aW9uUGFyYW1zW10sXG4gICAgdHhIZXg6IHN0cmluZyB8IHVuZGVmaW5lZCxcbiAgICB0b2tlbkFwcHJvdmFsOiBUb2tlbkFwcHJvdmFsLFxuICAgIHR4RXhwbGFuYXRpb24/OiB1bmtub3duXG4gICkge1xuICAgIHN1cGVyKG1lc3NhZ2UsIGlkLCB0eFBhcmFtcywgdHhIZXgsIHR4RXhwbGFuYXRpb24pO1xuICAgIHRoaXMudG9rZW5BcHByb3ZhbCA9IHRva2VuQXBwcm92YWw7XG4gIH1cbn1cbiJdfQ==
@@ -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"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.validateEvmKeyRingWalletParams = validateEvmKeyRingWalletParams;
4
+ exports.createEvmKeyRingWallet = createEvmKeyRingWallet;
5
+ const wallet_1 = require("../wallet");
6
+ const keychain_1 = require("../keychain");
7
+ /**
8
+ * @param params - The wallet creation parameters
9
+ * @param baseCoin - The base coin instance
10
+ * @throws Error if validation fails
11
+ * @returns boolean - true if validation passes
12
+ */
13
+ function validateEvmKeyRingWalletParams(params, baseCoin) {
14
+ if (!params.evmKeyRingReferenceWalletId)
15
+ return false;
16
+ if (typeof params.evmKeyRingReferenceWalletId !== 'string') {
17
+ throw new Error('invalid evmKeyRingReferenceWalletId argument, expecting string');
18
+ }
19
+ if (!baseCoin.isEVM()) {
20
+ throw new Error('evmKeyRingReferenceWalletId is only supported for EVM chains');
21
+ }
22
+ return true;
23
+ }
24
+ /**
25
+ * Creates an EVM keyring wallet with shared keys from a reference wallet
26
+ * @param params - The parameters for creating the EVM keyring wallet
27
+ * @returns Promise<WalletWithKeychains> - The created wallet with its keychains
28
+ */
29
+ async function createEvmKeyRingWallet(params) {
30
+ const { label, evmKeyRingReferenceWalletId, bitgo, baseCoin } = params;
31
+ // For EVM keyring wallets, this bypasses the normal key generation process since keys are shared via keyring
32
+ const addWalletParams = {
33
+ label,
34
+ evmKeyRingReferenceWalletId,
35
+ };
36
+ const newWallet = await bitgo.post(baseCoin.url('/wallet/add')).send(addWalletParams).result();
37
+ const userKeychain = baseCoin.keychains().get({ id: newWallet.keys[keychain_1.KeyIndices.USER] });
38
+ const backupKeychain = baseCoin.keychains().get({ id: newWallet.keys[keychain_1.KeyIndices.BACKUP] });
39
+ const bitgoKeychain = baseCoin.keychains().get({ id: newWallet.keys[keychain_1.KeyIndices.BITGO] });
40
+ const [userKey, backupKey, bitgoKey] = await Promise.all([userKeychain, backupKeychain, bitgoKeychain]);
41
+ const result = {
42
+ wallet: new wallet_1.Wallet(bitgo, baseCoin, newWallet),
43
+ userKeychain: userKey,
44
+ backupKeychain: backupKey,
45
+ bitgoKeychain: bitgoKey,
46
+ responseType: 'WalletWithKeychains',
47
+ };
48
+ return result;
49
+ }
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZtVXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vZXZtL2V2bVV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBdUJBLHdFQVVDO0FBT0Qsd0RBeUJDO0FBOURELHNDQUFtQztBQUNuQywwQ0FBeUM7QUFhekM7Ozs7O0dBS0c7QUFDSCxTQUFnQiw4QkFBOEIsQ0FBQyxNQUFXLEVBQUUsUUFBbUI7SUFDN0UsSUFBSSxDQUFDLE1BQU0sQ0FBQywyQkFBMkI7UUFBRSxPQUFPLEtBQUssQ0FBQztJQUV0RCxJQUFJLE9BQU8sTUFBTSxDQUFDLDJCQUEyQixLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzNELE1BQU0sSUFBSSxLQUFLLENBQUMsZ0VBQWdFLENBQUMsQ0FBQztJQUNwRixDQUFDO0lBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDO1FBQ3RCLE1BQU0sSUFBSSxLQUFLLENBQUMsOERBQThELENBQUMsQ0FBQztJQUNsRixDQUFDO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNJLEtBQUssVUFBVSxzQkFBc0IsQ0FBQyxNQUFvQztJQUMvRSxNQUFNLEVBQUUsS0FBSyxFQUFFLDJCQUEyQixFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFDdkUsNkdBQTZHO0lBQzdHLE1BQU0sZUFBZSxHQUFHO1FBQ3RCLEtBQUs7UUFDTCwyQkFBMkI7S0FDNUIsQ0FBQztJQUVGLE1BQU0sU0FBUyxHQUFHLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBRS9GLE1BQU0sWUFBWSxHQUFHLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxxQkFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN2RixNQUFNLGNBQWMsR0FBRyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMscUJBQVUsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDM0YsTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLHFCQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRXpGLE1BQU0sQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsQ0FBQyxHQUFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFlBQVksRUFBRSxjQUFjLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUV4RyxNQUFNLE1BQU0sR0FBd0I7UUFDbEMsTUFBTSxFQUFFLElBQUksZUFBTSxDQUFDLEtBQUssRUFBRSxRQUFRLEVBQUUsU0FBUyxDQUFDO1FBQzlDLFlBQVksRUFBRSxPQUFPO1FBQ3JCLGNBQWMsRUFBRSxTQUFTO1FBQ3pCLGFBQWEsRUFBRSxRQUFRO1FBQ3ZCLFlBQVksRUFBRSxxQkFBcUI7S0FDcEMsQ0FBQztJQUVGLE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCaXRHb0Jhc2UgfSBmcm9tICcuLi9iaXRnb0Jhc2UnO1xuaW1wb3J0IHsgSUJhc2VDb2luIH0gZnJvbSAnLi4vYmFzZUNvaW4nO1xuXG5pbXBvcnQgeyBXYWxsZXQgfSBmcm9tICcuLi93YWxsZXQnO1xuaW1wb3J0IHsgS2V5SW5kaWNlcyB9IGZyb20gJy4uL2tleWNoYWluJztcbmltcG9ydCB7IFdhbGxldFdpdGhLZXljaGFpbnMgfSBmcm9tICcuLi93YWxsZXQvaVdhbGxldHMnO1xuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgRVZNIGtleXJpbmcgd2FsbGV0IGNyZWF0aW9uIHBhcmFtZXRlcnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVFdm1LZXlSaW5nV2FsbGV0UGFyYW1zIHtcbiAgbGFiZWw6IHN0cmluZztcbiAgZXZtS2V5UmluZ1JlZmVyZW5jZVdhbGxldElkOiBzdHJpbmc7XG4gIGJpdGdvOiBCaXRHb0Jhc2U7XG4gIGJhc2VDb2luOiBJQmFzZUNvaW47XG59XG5cbi8qKlxuICogQHBhcmFtIHBhcmFtcyAtIFRoZSB3YWxsZXQgY3JlYXRpb24gcGFyYW1ldGVyc1xuICogQHBhcmFtIGJhc2VDb2luIC0gVGhlIGJhc2UgY29pbiBpbnN0YW5jZVxuICogQHRocm93cyBFcnJvciBpZiB2YWxpZGF0aW9uIGZhaWxzXG4gKiBAcmV0dXJucyBib29sZWFuIC0gdHJ1ZSBpZiB2YWxpZGF0aW9uIHBhc3Nlc1xuICovXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVFdm1LZXlSaW5nV2FsbGV0UGFyYW1zKHBhcmFtczogYW55LCBiYXNlQ29pbjogSUJhc2VDb2luKTogYm9vbGVhbiB7XG4gIGlmICghcGFyYW1zLmV2bUtleVJpbmdSZWZlcmVuY2VXYWxsZXRJZCkgcmV0dXJuIGZhbHNlO1xuXG4gIGlmICh0eXBlb2YgcGFyYW1zLmV2bUtleVJpbmdSZWZlcmVuY2VXYWxsZXRJZCAhPT0gJ3N0cmluZycpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgZXZtS2V5UmluZ1JlZmVyZW5jZVdhbGxldElkIGFyZ3VtZW50LCBleHBlY3Rpbmcgc3RyaW5nJyk7XG4gIH1cbiAgaWYgKCFiYXNlQ29pbi5pc0VWTSgpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdldm1LZXlSaW5nUmVmZXJlbmNlV2FsbGV0SWQgaXMgb25seSBzdXBwb3J0ZWQgZm9yIEVWTSBjaGFpbnMnKTtcbiAgfVxuICByZXR1cm4gdHJ1ZTtcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGFuIEVWTSBrZXlyaW5nIHdhbGxldCB3aXRoIHNoYXJlZCBrZXlzIGZyb20gYSByZWZlcmVuY2Ugd2FsbGV0XG4gKiBAcGFyYW0gcGFyYW1zIC0gVGhlIHBhcmFtZXRlcnMgZm9yIGNyZWF0aW5nIHRoZSBFVk0ga2V5cmluZyB3YWxsZXRcbiAqIEByZXR1cm5zIFByb21pc2U8V2FsbGV0V2l0aEtleWNoYWlucz4gLSBUaGUgY3JlYXRlZCB3YWxsZXQgd2l0aCBpdHMga2V5Y2hhaW5zXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjcmVhdGVFdm1LZXlSaW5nV2FsbGV0KHBhcmFtczogQ3JlYXRlRXZtS2V5UmluZ1dhbGxldFBhcmFtcyk6IFByb21pc2U8V2FsbGV0V2l0aEtleWNoYWlucz4ge1xuICBjb25zdCB7IGxhYmVsLCBldm1LZXlSaW5nUmVmZXJlbmNlV2FsbGV0SWQsIGJpdGdvLCBiYXNlQ29pbiB9ID0gcGFyYW1zO1xuICAvLyBGb3IgRVZNIGtleXJpbmcgd2FsbGV0cywgdGhpcyBieXBhc3NlcyB0aGUgbm9ybWFsIGtleSBnZW5lcmF0aW9uIHByb2Nlc3Mgc2luY2Uga2V5cyBhcmUgc2hhcmVkIHZpYSBrZXlyaW5nXG4gIGNvbnN0IGFkZFdhbGxldFBhcmFtcyA9IHtcbiAgICBsYWJlbCxcbiAgICBldm1LZXlSaW5nUmVmZXJlbmNlV2FsbGV0SWQsXG4gIH07XG5cbiAgY29uc3QgbmV3V2FsbGV0ID0gYXdhaXQgYml0Z28ucG9zdChiYXNlQ29pbi51cmwoJy93YWxsZXQvYWRkJykpLnNlbmQoYWRkV2FsbGV0UGFyYW1zKS5yZXN1bHQoKTtcblxuICBjb25zdCB1c2VyS2V5Y2hhaW4gPSBiYXNlQ29pbi5rZXljaGFpbnMoKS5nZXQoeyBpZDogbmV3V2FsbGV0LmtleXNbS2V5SW5kaWNlcy5VU0VSXSB9KTtcbiAgY29uc3QgYmFja3VwS2V5Y2hhaW4gPSBiYXNlQ29pbi5rZXljaGFpbnMoKS5nZXQoeyBpZDogbmV3V2FsbGV0LmtleXNbS2V5SW5kaWNlcy5CQUNLVVBdIH0pO1xuICBjb25zdCBiaXRnb0tleWNoYWluID0gYmFzZUNvaW4ua2V5Y2hhaW5zKCkuZ2V0KHsgaWQ6IG5ld1dhbGxldC5rZXlzW0tleUluZGljZXMuQklUR09dIH0pO1xuXG4gIGNvbnN0IFt1c2VyS2V5LCBiYWNrdXBLZXksIGJpdGdvS2V5XSA9IGF3YWl0IFByb21pc2UuYWxsKFt1c2VyS2V5Y2hhaW4sIGJhY2t1cEtleWNoYWluLCBiaXRnb0tleWNoYWluXSk7XG5cbiAgY29uc3QgcmVzdWx0OiBXYWxsZXRXaXRoS2V5Y2hhaW5zID0ge1xuICAgIHdhbGxldDogbmV3IFdhbGxldChiaXRnbywgYmFzZUNvaW4sIG5ld1dhbGxldCksXG4gICAgdXNlcktleWNoYWluOiB1c2VyS2V5LFxuICAgIGJhY2t1cEtleWNoYWluOiBiYWNrdXBLZXksXG4gICAgYml0Z29LZXljaGFpbjogYml0Z29LZXksXG4gICAgcmVzcG9uc2VUeXBlOiAnV2FsbGV0V2l0aEtleWNoYWlucycsXG4gIH07XG5cbiAgcmV0dXJuIHJlc3VsdDtcbn1cbiJdfQ==
@@ -1,11 +1,13 @@
1
1
  import * as bitcoinUtil from './bitcoin';
2
2
  import * as tss from './tss';
3
+ export * as walletUtil from './walletUtil';
3
4
  export * from './baseCoin';
4
5
  export * from './bip32util';
5
6
  export * from './bitcoin';
6
7
  export * from './bitgoBase';
7
8
  export * from './config';
8
9
  export * from './coinFactory';
10
+ export * from './defi';
9
11
  export * from './ecdh';
10
12
  export * from './enterprise';
11
13
  export * from './environments';
@@ -14,15 +16,17 @@ export * from './inscriptionBuilder';
14
16
  export * from './internal';
15
17
  export * from './keychain';
16
18
  export * as bitcoin from './legacyBitcoin';
17
- export * from './lightning';
18
19
  export * from './market';
19
20
  export * from './pendingApproval';
21
+ export { WalletProofs } from './proofs';
20
22
  export * from './recovery';
21
23
  export * from './staking';
22
24
  export * from './trading';
23
25
  export * from './tss';
26
+ export { sendSignatureShare } from './tss';
24
27
  export * from './types';
25
28
  export * from './utils';
29
+ export * from './safe';
26
30
  export * from './wallet';
27
31
  export * from './webhook';
28
32
  export { bitcoinUtil };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bitgo/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAE7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,sBAAsB,CAAC;AACrC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAC;AAC3C,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,OAAO,EAAE,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/bitgo/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,WAAW,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,GAAG,MAAM,OAAO,CAAC;AAE7B,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,sBAAsB,CAAC;AACrC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAC;AAC3C,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACxC,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,OAAO,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAC3C,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,OAAO,EAAE,GAAG,EAAE,CAAC"}