@bitgo-beta/sdk-core 8.2.1-beta.21 → 8.2.1-beta.2100

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 (892) hide show
  1. package/dist/src/account-lib/baseCoin/baseTransaction.d.ts +0 -1
  2. package/dist/src/account-lib/baseCoin/baseTransaction.d.ts.map +1 -1
  3. package/dist/src/account-lib/baseCoin/baseTransactionBuilder.d.ts +3 -3
  4. package/dist/src/account-lib/baseCoin/baseTransactionBuilder.d.ts.map +1 -1
  5. package/dist/src/account-lib/baseCoin/baseTransactionBuilder.js +4 -3
  6. package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts +1 -0
  7. package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts.map +1 -1
  8. package/dist/src/account-lib/baseCoin/ed25519KeyPair.js +43 -31
  9. package/dist/src/account-lib/baseCoin/enum.d.ts +61 -2
  10. package/dist/src/account-lib/baseCoin/enum.d.ts.map +1 -1
  11. package/dist/src/account-lib/baseCoin/enum.js +118 -6
  12. package/dist/src/account-lib/baseCoin/errors.d.ts +3 -0
  13. package/dist/src/account-lib/baseCoin/errors.d.ts.map +1 -1
  14. package/dist/src/account-lib/baseCoin/errors.js +8 -2
  15. package/dist/src/account-lib/baseCoin/iface.d.ts +19 -35
  16. package/dist/src/account-lib/baseCoin/iface.d.ts.map +1 -1
  17. package/dist/src/account-lib/baseCoin/iface.js +26 -18
  18. package/dist/src/account-lib/baseCoin/index.d.ts +1 -1
  19. package/dist/src/account-lib/baseCoin/index.d.ts.map +1 -1
  20. package/dist/src/account-lib/baseCoin/index.js +8 -5
  21. package/dist/src/account-lib/baseCoin/messages/baseMessage.d.ts +88 -0
  22. package/dist/src/account-lib/baseCoin/messages/baseMessage.d.ts.map +1 -0
  23. package/dist/src/account-lib/baseCoin/messages/baseMessage.js +154 -0
  24. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.d.ts +67 -0
  25. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.d.ts.map +1 -0
  26. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.js +144 -0
  27. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts +33 -0
  28. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts.map +1 -0
  29. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +45 -0
  30. package/dist/src/account-lib/baseCoin/messages/iface.d.ts +164 -0
  31. package/dist/src/account-lib/baseCoin/messages/iface.d.ts.map +1 -0
  32. package/dist/src/account-lib/baseCoin/messages/iface.js +3 -0
  33. package/dist/src/account-lib/baseCoin/messages/index.d.ts +6 -0
  34. package/dist/src/account-lib/baseCoin/messages/index.d.ts.map +1 -0
  35. package/dist/src/account-lib/baseCoin/messages/index.js +22 -0
  36. package/dist/src/account-lib/baseCoin/messages/simple/index.d.ts +3 -0
  37. package/dist/src/account-lib/baseCoin/messages/simple/index.d.ts.map +1 -0
  38. package/dist/src/account-lib/baseCoin/messages/simple/index.js +19 -0
  39. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessage.d.ts +13 -0
  40. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessage.d.ts.map +1 -0
  41. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessage.js +28 -0
  42. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.d.ts +21 -0
  43. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.d.ts.map +1 -0
  44. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.js +28 -0
  45. package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.d.ts +1 -2
  46. package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.d.ts.map +1 -1
  47. package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.js +38 -26
  48. package/dist/src/account-lib/index.d.ts +0 -1
  49. package/dist/src/account-lib/index.d.ts.map +1 -1
  50. package/dist/src/account-lib/index.js +23 -10
  51. package/dist/src/account-lib/mpc/curves/ed25519.d.ts +4 -18
  52. package/dist/src/account-lib/mpc/curves/ed25519.d.ts.map +1 -1
  53. package/dist/src/account-lib/mpc/curves/ed25519.js +6 -60
  54. package/dist/src/account-lib/mpc/index.d.ts +4 -4
  55. package/dist/src/account-lib/mpc/index.d.ts.map +1 -1
  56. package/dist/src/account-lib/mpc/index.js +11 -7
  57. package/dist/src/account-lib/mpc/shamir.d.ts +5 -37
  58. package/dist/src/account-lib/mpc/shamir.d.ts.map +1 -1
  59. package/dist/src/account-lib/mpc/shamir.js +6 -130
  60. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +40 -11
  61. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -1
  62. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.js +521 -378
  63. package/dist/src/account-lib/mpc/tss/ecdsa/index.js +23 -9
  64. package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts +2 -2
  65. package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts.map +1 -1
  66. package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.js +3 -3
  67. package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts +73 -52
  68. package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts.map +1 -1
  69. package/dist/src/account-lib/mpc/tss/ecdsa/types.js +1 -1
  70. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts +1 -2
  71. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts.map +1 -1
  72. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.js +66 -69
  73. package/dist/src/account-lib/mpc/tss/eddsa/index.js +23 -9
  74. package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts +1 -4
  75. package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts.map +1 -1
  76. package/dist/src/account-lib/mpc/tss/eddsa/types.js +1 -1
  77. package/dist/src/account-lib/mpc/tss/index.js +23 -9
  78. package/dist/src/account-lib/mpc/util.d.ts +7 -1
  79. package/dist/src/account-lib/mpc/util.d.ts.map +1 -1
  80. package/dist/src/account-lib/mpc/util.js +24 -1
  81. package/dist/src/account-lib/staking/index.js +6 -2
  82. package/dist/src/account-lib/staking/utils.js +3 -3
  83. package/dist/src/account-lib/util/crypto.d.ts +8 -2
  84. package/dist/src/account-lib/util/crypto.d.ts.map +1 -1
  85. package/dist/src/account-lib/util/crypto.js +69 -38
  86. package/dist/src/api/bip32path.js +2 -3
  87. package/dist/src/api/index.js +6 -2
  88. package/dist/src/api/types.d.ts +37 -0
  89. package/dist/src/api/types.d.ts.map +1 -1
  90. package/dist/src/api/types.js +8 -1
  91. package/dist/src/bitgo/address-book/address-book.d.ts +61 -0
  92. package/dist/src/bitgo/address-book/address-book.d.ts.map +1 -0
  93. package/dist/src/bitgo/address-book/address-book.js +150 -0
  94. package/dist/src/bitgo/address-book/index.d.ts +3 -0
  95. package/dist/src/bitgo/address-book/index.d.ts.map +1 -0
  96. package/dist/src/{openssl → bitgo/address-book}/index.js +8 -3
  97. package/dist/src/bitgo/address-book/types.d.ts +170 -0
  98. package/dist/src/bitgo/address-book/types.d.ts.map +1 -0
  99. package/dist/src/bitgo/address-book/types.js +3 -0
  100. package/dist/src/bitgo/baseCoin/baseCoin.d.ts +139 -12
  101. package/dist/src/bitgo/baseCoin/baseCoin.d.ts.map +1 -1
  102. package/dist/src/bitgo/baseCoin/baseCoin.js +217 -16
  103. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +366 -29
  104. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -1
  105. package/dist/src/bitgo/baseCoin/iBaseCoin.js +14 -3
  106. package/dist/src/bitgo/baseCoin/index.js +6 -2
  107. package/dist/src/bitgo/bip32util.d.ts +3 -16
  108. package/dist/src/bitgo/bip32util.d.ts.map +1 -1
  109. package/dist/src/bitgo/bip32util.js +4 -56
  110. package/dist/src/bitgo/bitcoin.d.ts +0 -1
  111. package/dist/src/bitgo/bitcoin.d.ts.map +1 -1
  112. package/dist/src/bitgo/bitcoin.js +26 -13
  113. package/dist/src/bitgo/bitgoBase.d.ts +19 -5
  114. package/dist/src/bitgo/bitgoBase.d.ts.map +1 -1
  115. package/dist/src/bitgo/bitgoBase.js +1 -1
  116. package/dist/src/bitgo/coinFactory.d.ts +24 -3
  117. package/dist/src/bitgo/coinFactory.d.ts.map +1 -1
  118. package/dist/src/bitgo/coinFactory.js +35 -3
  119. package/dist/src/bitgo/config.d.ts +3 -89
  120. package/dist/src/bitgo/config.d.ts.map +1 -1
  121. package/dist/src/bitgo/config.js +26 -15
  122. package/dist/src/bitgo/defi/defiVault.d.ts +171 -0
  123. package/dist/src/bitgo/defi/defiVault.d.ts.map +1 -0
  124. package/dist/src/bitgo/defi/defiVault.js +445 -0
  125. package/dist/src/bitgo/defi/iDefiVault.d.ts +101 -0
  126. package/dist/src/bitgo/defi/iDefiVault.d.ts.map +1 -0
  127. package/dist/src/bitgo/defi/iDefiVault.js +6 -0
  128. package/dist/src/bitgo/defi/index.d.ts +3 -0
  129. package/dist/src/bitgo/defi/index.d.ts.map +1 -0
  130. package/dist/src/bitgo/defi/index.js +22 -0
  131. package/dist/src/bitgo/ecdh.d.ts +0 -1
  132. package/dist/src/bitgo/ecdh.d.ts.map +1 -1
  133. package/dist/src/bitgo/ecdh.js +26 -13
  134. package/dist/src/bitgo/enterprise/enterprise.d.ts +22 -14
  135. package/dist/src/bitgo/enterprise/enterprise.d.ts.map +1 -1
  136. package/dist/src/bitgo/enterprise/enterprise.js +72 -31
  137. package/dist/src/bitgo/enterprise/enterprises.d.ts +6 -0
  138. package/dist/src/bitgo/enterprise/enterprises.d.ts.map +1 -1
  139. package/dist/src/bitgo/enterprise/enterprises.js +48 -9
  140. package/dist/src/bitgo/enterprise/iEnterprise.d.ts +9 -7
  141. package/dist/src/bitgo/enterprise/iEnterprise.d.ts.map +1 -1
  142. package/dist/src/bitgo/enterprise/iEnterprise.js +1 -1
  143. package/dist/src/bitgo/enterprise/iEnterprises.d.ts +2 -0
  144. package/dist/src/bitgo/enterprise/iEnterprises.d.ts.map +1 -1
  145. package/dist/src/bitgo/enterprise/iEnterprises.js +1 -1
  146. package/dist/src/bitgo/enterprise/index.js +6 -2
  147. package/dist/src/bitgo/environments.d.ts +88 -5
  148. package/dist/src/bitgo/environments.d.ts.map +1 -1
  149. package/dist/src/bitgo/environments.js +436 -30
  150. package/dist/src/bitgo/errors.d.ts +189 -1
  151. package/dist/src/bitgo/errors.d.ts.map +1 -1
  152. package/dist/src/bitgo/errors.js +187 -3
  153. package/dist/src/bitgo/evm/evmUtils.d.ts +26 -0
  154. package/dist/src/bitgo/evm/evmUtils.d.ts.map +1 -0
  155. package/dist/src/bitgo/evm/evmUtils.js +50 -0
  156. package/dist/src/bitgo/index.d.ts +6 -1
  157. package/dist/src/bitgo/index.d.ts.map +1 -1
  158. package/dist/src/bitgo/index.js +32 -11
  159. package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.d.ts +3 -3
  160. package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.d.ts.map +1 -1
  161. package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.js +1 -1
  162. package/dist/src/bitgo/inscriptionBuilder/index.js +6 -2
  163. package/dist/src/bitgo/internal/index.js +6 -2
  164. package/dist/src/bitgo/internal/internal.js +5 -6
  165. package/dist/src/bitgo/internal/keycard.d.ts +13 -8
  166. package/dist/src/bitgo/internal/keycard.d.ts.map +1 -1
  167. package/dist/src/bitgo/internal/keycard.js +63 -48
  168. package/dist/src/bitgo/keychain/decryptKeychain.d.ts +14 -0
  169. package/dist/src/bitgo/keychain/decryptKeychain.d.ts.map +1 -0
  170. package/dist/src/bitgo/keychain/decryptKeychain.js +36 -0
  171. package/dist/src/bitgo/keychain/iKeychains.d.ts +189 -10
  172. package/dist/src/bitgo/keychain/iKeychains.d.ts.map +1 -1
  173. package/dist/src/bitgo/keychain/iKeychains.js +2 -2
  174. package/dist/src/bitgo/keychain/index.d.ts +1 -0
  175. package/dist/src/bitgo/keychain/index.d.ts.map +1 -1
  176. package/dist/src/bitgo/keychain/index.js +7 -2
  177. package/dist/src/bitgo/keychain/keychains.d.ts +106 -13
  178. package/dist/src/bitgo/keychain/keychains.d.ts.map +1 -1
  179. package/dist/src/bitgo/keychain/keychains.js +451 -93
  180. package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts +126 -91
  181. package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts.map +1 -1
  182. package/dist/src/bitgo/keychain/ovcJsonCodec.js +53 -32
  183. package/dist/src/bitgo/legacyBitcoin.d.ts +0 -1
  184. package/dist/src/bitgo/legacyBitcoin.d.ts.map +1 -1
  185. package/dist/src/bitgo/legacyBitcoin.js +27 -13
  186. package/dist/src/bitgo/lightning/lightningWalletUtil.d.ts +7 -0
  187. package/dist/src/bitgo/lightning/lightningWalletUtil.d.ts.map +1 -0
  188. package/dist/src/bitgo/lightning/lightningWalletUtil.js +25 -0
  189. package/dist/src/bitgo/market/iMarkets.d.ts +2 -2
  190. package/dist/src/bitgo/market/iMarkets.d.ts.map +1 -1
  191. package/dist/src/bitgo/market/index.js +6 -2
  192. package/dist/src/bitgo/market/markets.js +23 -9
  193. package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts +7 -1
  194. package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts.map +1 -1
  195. package/dist/src/bitgo/pendingApproval/iPendingApproval.js +4 -4
  196. package/dist/src/bitgo/pendingApproval/index.js +6 -2
  197. package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts +20 -8
  198. package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts.map +1 -1
  199. package/dist/src/bitgo/pendingApproval/pendingApproval.js +251 -110
  200. package/dist/src/bitgo/pendingApproval/pendingApprovals.js +23 -9
  201. package/dist/src/bitgo/proofs/WalletProofs.d.ts +19 -0
  202. package/dist/src/bitgo/proofs/WalletProofs.d.ts.map +1 -0
  203. package/dist/src/bitgo/proofs/WalletProofs.js +37 -0
  204. package/dist/src/bitgo/proofs/index.d.ts +2 -0
  205. package/dist/src/bitgo/proofs/index.d.ts.map +1 -0
  206. package/dist/src/bitgo/proofs/index.js +6 -0
  207. package/dist/src/bitgo/proofs/types.d.ts +80 -0
  208. package/dist/src/bitgo/proofs/types.d.ts.map +1 -0
  209. package/dist/src/bitgo/proofs/types.js +80 -0
  210. package/dist/src/bitgo/recovery/index.js +6 -2
  211. package/dist/src/bitgo/recovery/initiate.d.ts +20 -4
  212. package/dist/src/bitgo/recovery/initiate.d.ts.map +1 -1
  213. package/dist/src/bitgo/recovery/initiate.js +49 -41
  214. package/dist/src/bitgo/safe/derivableEd25519Pub.d.ts +13 -0
  215. package/dist/src/bitgo/safe/derivableEd25519Pub.d.ts.map +1 -0
  216. package/dist/src/bitgo/safe/derivableEd25519Pub.js +35 -0
  217. package/dist/src/bitgo/safe/iSafe.d.ts +124 -0
  218. package/dist/src/bitgo/safe/iSafe.d.ts.map +1 -0
  219. package/dist/src/bitgo/safe/iSafe.js +3 -0
  220. package/dist/src/bitgo/safe/iSafes.d.ts +94 -0
  221. package/dist/src/bitgo/safe/iSafes.d.ts.map +1 -0
  222. package/dist/src/bitgo/safe/iSafes.js +3 -0
  223. package/dist/src/bitgo/safe/index.d.ts +8 -0
  224. package/dist/src/bitgo/safe/index.d.ts.map +1 -0
  225. package/dist/src/bitgo/safe/index.js +24 -0
  226. package/dist/src/bitgo/safe/recovery.d.ts +92 -0
  227. package/dist/src/bitgo/safe/recovery.d.ts.map +1 -0
  228. package/dist/src/bitgo/safe/recovery.js +148 -0
  229. package/dist/src/bitgo/safe/rootCoin.d.ts +15 -0
  230. package/dist/src/bitgo/safe/rootCoin.d.ts.map +1 -0
  231. package/dist/src/bitgo/safe/rootCoin.js +47 -0
  232. package/dist/src/bitgo/safe/safe.d.ts +88 -0
  233. package/dist/src/bitgo/safe/safe.d.ts.map +1 -0
  234. package/dist/src/bitgo/safe/safe.js +409 -0
  235. package/dist/src/bitgo/safe/safes.d.ts +102 -0
  236. package/dist/src/bitgo/safe/safes.d.ts.map +1 -0
  237. package/dist/src/bitgo/safe/safes.js +281 -0
  238. package/dist/src/bitgo/staking/goStakingInterfaces.d.ts +136 -0
  239. package/dist/src/bitgo/staking/goStakingInterfaces.d.ts.map +1 -0
  240. package/dist/src/bitgo/staking/goStakingInterfaces.js +3 -0
  241. package/dist/src/bitgo/staking/goStakingWallet.d.ts +62 -0
  242. package/dist/src/bitgo/staking/goStakingWallet.d.ts.map +1 -0
  243. package/dist/src/bitgo/staking/goStakingWallet.js +141 -0
  244. package/dist/src/bitgo/staking/iGoStakingWallet.d.ts +17 -0
  245. package/dist/src/bitgo/staking/iGoStakingWallet.d.ts.map +1 -0
  246. package/dist/src/bitgo/staking/iGoStakingWallet.js +3 -0
  247. package/dist/src/bitgo/staking/iStakingWallet.d.ts +197 -8
  248. package/dist/src/bitgo/staking/iStakingWallet.d.ts.map +1 -1
  249. package/dist/src/bitgo/staking/iStakingWallet.js +2 -2
  250. package/dist/src/bitgo/staking/index.d.ts +3 -0
  251. package/dist/src/bitgo/staking/index.d.ts.map +1 -1
  252. package/dist/src/bitgo/staking/index.js +9 -2
  253. package/dist/src/bitgo/staking/stakingWallet.d.ts +27 -8
  254. package/dist/src/bitgo/staking/stakingWallet.d.ts.map +1 -1
  255. package/dist/src/bitgo/staking/stakingWallet.js +161 -7
  256. package/dist/src/bitgo/trading/iTradingAccount.d.ts +15 -33
  257. package/dist/src/bitgo/trading/iTradingAccount.d.ts.map +1 -1
  258. package/dist/src/bitgo/trading/iTradingAccount.js +1 -1
  259. package/dist/src/bitgo/trading/index.d.ts +1 -15
  260. package/dist/src/bitgo/trading/index.d.ts.map +1 -1
  261. package/dist/src/bitgo/trading/index.js +7 -17
  262. package/dist/src/bitgo/trading/network/decrypt-aes-gcm.d.ts +8 -0
  263. package/dist/src/bitgo/trading/network/decrypt-aes-gcm.d.ts.map +1 -0
  264. package/dist/src/bitgo/trading/network/decrypt-aes-gcm.js +31 -0
  265. package/dist/src/bitgo/trading/network/decrypt-rsa.d.ts +8 -0
  266. package/dist/src/bitgo/trading/network/decrypt-rsa.d.ts.map +1 -0
  267. package/dist/src/bitgo/trading/network/decrypt-rsa.js +23 -0
  268. package/dist/src/bitgo/trading/network/decrypt.d.ts +14 -0
  269. package/dist/src/bitgo/trading/network/decrypt.d.ts.map +1 -0
  270. package/dist/src/bitgo/trading/network/decrypt.js +23 -0
  271. package/dist/src/bitgo/trading/network/encrypt-aes-gcm.d.ts +8 -0
  272. package/dist/src/bitgo/trading/network/encrypt-aes-gcm.d.ts.map +1 -0
  273. package/dist/src/bitgo/trading/network/encrypt-aes-gcm.js +25 -0
  274. package/dist/src/bitgo/trading/network/encrypt-rsa-browser.d.ts +8 -0
  275. package/dist/src/bitgo/trading/network/encrypt-rsa-browser.d.ts.map +1 -0
  276. package/dist/src/bitgo/trading/network/encrypt-rsa-browser.js +65 -0
  277. package/dist/src/bitgo/trading/network/encrypt-rsa.d.ts +8 -0
  278. package/dist/src/bitgo/trading/network/encrypt-rsa.d.ts.map +1 -0
  279. package/dist/src/bitgo/trading/network/encrypt-rsa.js +23 -0
  280. package/dist/src/bitgo/trading/network/encrypt.d.ts +37 -0
  281. package/dist/src/bitgo/trading/network/encrypt.d.ts.map +1 -0
  282. package/dist/src/bitgo/trading/network/encrypt.js +58 -0
  283. package/dist/src/bitgo/trading/network/index.d.ts +5 -0
  284. package/dist/src/bitgo/trading/network/index.d.ts.map +1 -0
  285. package/dist/src/bitgo/trading/network/index.js +21 -0
  286. package/dist/src/bitgo/trading/network/network.d.ts +36 -0
  287. package/dist/src/bitgo/trading/network/network.d.ts.map +1 -0
  288. package/dist/src/bitgo/trading/network/network.js +94 -0
  289. package/dist/src/bitgo/trading/network/types.d.ts +277 -0
  290. package/dist/src/bitgo/trading/network/types.d.ts.map +1 -0
  291. package/dist/src/bitgo/trading/network/types.js +3 -0
  292. package/dist/src/bitgo/trading/network/utils.d.ts +20 -0
  293. package/dist/src/bitgo/trading/network/utils.d.ts.map +1 -0
  294. package/dist/src/bitgo/trading/network/utils.js +54 -0
  295. package/dist/src/bitgo/trading/tradingAccount.d.ts +23 -33
  296. package/dist/src/bitgo/trading/tradingAccount.d.ts.map +1 -1
  297. package/dist/src/bitgo/trading/tradingAccount.js +58 -97
  298. package/dist/src/bitgo/tss/bitgoPubKeys.d.ts +49 -0
  299. package/dist/src/bitgo/tss/bitgoPubKeys.d.ts.map +1 -0
  300. package/dist/src/bitgo/tss/bitgoPubKeys.js +92 -0
  301. package/dist/src/bitgo/tss/common.d.ts +52 -6
  302. package/dist/src/bitgo/tss/common.d.ts.map +1 -1
  303. package/dist/src/bitgo/tss/common.js +144 -15
  304. package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts +6 -4
  305. package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts.map +1 -1
  306. package/dist/src/bitgo/tss/ecdsa/ecdsa.js +85 -81
  307. package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.d.ts +15 -0
  308. package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
  309. package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.js +167 -0
  310. package/dist/src/bitgo/tss/ecdsa/index.d.ts +1 -0
  311. package/dist/src/bitgo/tss/ecdsa/index.d.ts.map +1 -1
  312. package/dist/src/bitgo/tss/ecdsa/index.js +25 -10
  313. package/dist/src/bitgo/tss/ecdsa/types.d.ts +27 -27
  314. package/dist/src/bitgo/tss/ecdsa/types.d.ts.map +1 -1
  315. package/dist/src/bitgo/tss/ecdsa/types.js +3 -3
  316. package/dist/src/bitgo/tss/eddsa/eddsa.d.ts +19 -9
  317. package/dist/src/bitgo/tss/eddsa/eddsa.d.ts.map +1 -1
  318. package/dist/src/bitgo/tss/eddsa/eddsa.js +56 -38
  319. package/dist/src/bitgo/tss/eddsa/eddsaMPCv2.d.ts +42 -0
  320. package/dist/src/bitgo/tss/eddsa/eddsaMPCv2.d.ts.map +1 -0
  321. package/dist/src/bitgo/tss/eddsa/eddsaMPCv2.js +104 -0
  322. package/dist/src/bitgo/tss/eddsa/index.js +23 -9
  323. package/dist/src/bitgo/tss/eddsa/types.d.ts +4 -4
  324. package/dist/src/bitgo/tss/eddsa/types.d.ts.map +1 -1
  325. package/dist/src/bitgo/tss/index.d.ts +3 -2
  326. package/dist/src/bitgo/tss/index.d.ts.map +1 -1
  327. package/dist/src/bitgo/tss/index.js +26 -10
  328. package/dist/src/bitgo/tss/redpallas/redpallasMPCv2.d.ts +79 -0
  329. package/dist/src/bitgo/tss/redpallas/redpallasMPCv2.d.ts.map +1 -0
  330. package/dist/src/bitgo/tss/redpallas/redpallasMPCv2.js +179 -0
  331. package/dist/src/bitgo/tss/types.d.ts +19 -0
  332. package/dist/src/bitgo/tss/types.d.ts.map +1 -1
  333. package/dist/src/bitgo/tss/types.js +2 -2
  334. package/dist/src/bitgo/types.d.ts +3 -3
  335. package/dist/src/bitgo/types.d.ts.map +1 -1
  336. package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts +14 -0
  337. package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts.map +1 -1
  338. package/dist/src/bitgo/utils/abstractUtxoCoinUtil.js +87 -10
  339. package/dist/src/bitgo/utils/codecProps.d.ts +7 -0
  340. package/dist/src/bitgo/utils/codecProps.d.ts.map +1 -0
  341. package/dist/src/bitgo/utils/codecProps.js +54 -0
  342. package/dist/src/bitgo/utils/codecs.d.ts +11 -0
  343. package/dist/src/bitgo/utils/codecs.d.ts.map +1 -0
  344. package/dist/src/bitgo/utils/codecs.js +59 -0
  345. package/dist/src/bitgo/utils/decode.d.ts.map +1 -1
  346. package/dist/src/bitgo/utils/decode.js +30 -16
  347. package/dist/src/bitgo/utils/index.d.ts +5 -2
  348. package/dist/src/bitgo/utils/index.d.ts.map +1 -1
  349. package/dist/src/bitgo/utils/index.js +28 -11
  350. package/dist/src/bitgo/utils/messageTypes.d.ts +46 -0
  351. package/dist/src/bitgo/utils/messageTypes.d.ts.map +1 -0
  352. package/dist/src/bitgo/utils/messageTypes.js +23 -0
  353. package/dist/src/bitgo/utils/mpcUtils.d.ts +4 -4
  354. package/dist/src/bitgo/utils/mpcUtils.d.ts.map +1 -1
  355. package/dist/src/bitgo/utils/mpcUtils.js +208 -14
  356. package/dist/src/bitgo/utils/notEmpty.d.ts +2 -0
  357. package/dist/src/bitgo/utils/notEmpty.d.ts.map +1 -0
  358. package/dist/src/bitgo/utils/notEmpty.js +7 -0
  359. package/dist/src/bitgo/utils/opengpgUtils.d.ts +13 -9
  360. package/dist/src/bitgo/utils/opengpgUtils.d.ts.map +1 -1
  361. package/dist/src/bitgo/utils/opengpgUtils.js +87 -73
  362. package/dist/src/bitgo/utils/postWithCodec.d.ts +18 -0
  363. package/dist/src/bitgo/utils/postWithCodec.d.ts.map +1 -0
  364. package/dist/src/bitgo/utils/postWithCodec.js +25 -0
  365. package/dist/src/bitgo/utils/promise-utils.d.ts +1 -1
  366. package/dist/src/bitgo/utils/promise-utils.d.ts.map +1 -1
  367. package/dist/src/bitgo/utils/promise-utils.js +2 -3
  368. package/dist/src/bitgo/utils/siws.d.ts +17 -0
  369. package/dist/src/bitgo/utils/siws.d.ts.map +1 -0
  370. package/dist/src/bitgo/utils/siws.js +171 -0
  371. package/dist/src/bitgo/utils/transactionUtils.d.ts +9 -0
  372. package/dist/src/bitgo/utils/transactionUtils.d.ts.map +1 -0
  373. package/dist/src/bitgo/utils/transactionUtils.js +29 -0
  374. package/dist/src/bitgo/utils/triple.d.ts +1 -1
  375. package/dist/src/bitgo/utils/triple.d.ts.map +1 -1
  376. package/dist/src/bitgo/utils/triple.js +2 -3
  377. package/dist/src/bitgo/utils/tss/addressVerification.d.ts +62 -0
  378. package/dist/src/bitgo/utils/tss/addressVerification.d.ts.map +1 -0
  379. package/dist/src/bitgo/utils/tss/addressVerification.js +93 -0
  380. package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts +157 -28
  381. package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -1
  382. package/dist/src/bitgo/utils/tss/baseTSSUtils.js +381 -43
  383. package/dist/src/bitgo/utils/tss/baseTypes.d.ts +620 -44
  384. package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -1
  385. package/dist/src/bitgo/utils/tss/baseTypes.js +60 -10
  386. package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.d.ts +23 -0
  387. package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.d.ts.map +1 -0
  388. package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.js +157 -0
  389. package/dist/src/bitgo/utils/tss/ecdsa/base.d.ts +28 -0
  390. package/dist/src/bitgo/utils/tss/ecdsa/base.d.ts.map +1 -0
  391. package/dist/src/bitgo/utils/tss/ecdsa/base.js +53 -0
  392. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts +63 -53
  393. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -1
  394. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +356 -327
  395. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts +240 -0
  396. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
  397. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.js +1076 -0
  398. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.d.ts +16 -0
  399. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.d.ts.map +1 -0
  400. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.js +37 -0
  401. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaVrfMPCv2.d.ts +69 -0
  402. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaVrfMPCv2.d.ts.map +1 -0
  403. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaVrfMPCv2.js +442 -0
  404. package/dist/src/bitgo/utils/tss/ecdsa/index.d.ts +5 -0
  405. package/dist/src/bitgo/utils/tss/ecdsa/index.d.ts.map +1 -1
  406. package/dist/src/bitgo/utils/tss/ecdsa/index.js +11 -2
  407. package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts +15 -9
  408. package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts.map +1 -1
  409. package/dist/src/bitgo/utils/tss/ecdsa/types.js +1 -1
  410. package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.d.ts +125 -0
  411. package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.d.ts.map +1 -0
  412. package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.js +55 -0
  413. package/dist/src/bitgo/utils/tss/eddsa/SMC/utils.d.ts +21 -0
  414. package/dist/src/bitgo/utils/tss/eddsa/SMC/utils.d.ts.map +1 -0
  415. package/dist/src/bitgo/utils/tss/eddsa/SMC/utils.js +119 -0
  416. package/dist/src/bitgo/utils/tss/eddsa/base.d.ts +18 -0
  417. package/dist/src/bitgo/utils/tss/eddsa/base.d.ts.map +1 -0
  418. package/dist/src/bitgo/utils/tss/eddsa/base.js +64 -0
  419. package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts +59 -14
  420. package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts.map +1 -1
  421. package/dist/src/bitgo/utils/tss/eddsa/eddsa.js +318 -99
  422. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts +260 -0
  423. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts.map +1 -0
  424. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2.js +995 -0
  425. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2KeyGenSender.d.ts +11 -0
  426. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2KeyGenSender.d.ts.map +1 -0
  427. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2KeyGenSender.js +26 -0
  428. package/dist/src/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.d.ts +42 -0
  429. package/dist/src/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.d.ts.map +1 -0
  430. package/dist/src/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.js +267 -0
  431. package/dist/src/bitgo/utils/tss/eddsa/index.d.ts +5 -0
  432. package/dist/src/bitgo/utils/tss/eddsa/index.d.ts.map +1 -1
  433. package/dist/src/bitgo/utils/tss/eddsa/index.js +30 -8
  434. package/dist/src/bitgo/utils/tss/eddsa/types.d.ts +15 -7
  435. package/dist/src/bitgo/utils/tss/eddsa/types.d.ts.map +1 -1
  436. package/dist/src/bitgo/utils/tss/eddsa/types.js +1 -1
  437. package/dist/src/bitgo/utils/tss/eddsa/typesEddsaMPCv2.d.ts +75 -0
  438. package/dist/src/bitgo/utils/tss/eddsa/typesEddsaMPCv2.d.ts.map +1 -0
  439. package/dist/src/bitgo/utils/tss/eddsa/typesEddsaMPCv2.js +44 -0
  440. package/dist/src/bitgo/utils/tss/index.d.ts +7 -0
  441. package/dist/src/bitgo/utils/tss/index.d.ts.map +1 -1
  442. package/dist/src/bitgo/utils/tss/index.js +31 -10
  443. package/dist/src/bitgo/utils/tss/keyShareEnvelope.d.ts +40 -0
  444. package/dist/src/bitgo/utils/tss/keyShareEnvelope.d.ts.map +1 -0
  445. package/dist/src/bitgo/utils/tss/keyShareEnvelope.js +103 -0
  446. package/dist/src/bitgo/utils/tss/keyVerification.d.ts +45 -0
  447. package/dist/src/bitgo/utils/tss/keyVerification.d.ts.map +1 -0
  448. package/dist/src/bitgo/utils/tss/keyVerification.js +192 -0
  449. package/dist/src/bitgo/utils/tss/preHashedSignable.d.ts +23 -0
  450. package/dist/src/bitgo/utils/tss/preHashedSignable.d.ts.map +1 -0
  451. package/dist/src/bitgo/utils/tss/preHashedSignable.js +26 -0
  452. package/dist/src/bitgo/utils/tss/recipientUtils.d.ts +42 -0
  453. package/dist/src/bitgo/utils/tss/recipientUtils.d.ts.map +1 -0
  454. package/dist/src/bitgo/utils/tss/recipientUtils.js +168 -0
  455. package/dist/src/bitgo/utils/tss/redpallas/SMC/utils.d.ts +29 -0
  456. package/dist/src/bitgo/utils/tss/redpallas/SMC/utils.d.ts.map +1 -0
  457. package/dist/src/bitgo/utils/tss/redpallas/SMC/utils.js +126 -0
  458. package/dist/src/bitgo/utils/tss/redpallas/index.d.ts +4 -0
  459. package/dist/src/bitgo/utils/tss/redpallas/index.d.ts.map +1 -0
  460. package/dist/src/bitgo/utils/tss/redpallas/index.js +20 -0
  461. package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2.d.ts +27 -0
  462. package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2.d.ts.map +1 -0
  463. package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2.js +43 -0
  464. package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2KeyGenSender.d.ts +45 -0
  465. package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2KeyGenSender.d.ts.map +1 -0
  466. package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2KeyGenSender.js +55 -0
  467. package/dist/src/bitgo/utils/tss/serializedTxHexVerify.d.ts +8 -0
  468. package/dist/src/bitgo/utils/tss/serializedTxHexVerify.d.ts.map +1 -0
  469. package/dist/src/bitgo/utils/tss/serializedTxHexVerify.js +13 -0
  470. package/dist/src/bitgo/utils/tss/signableConsistency.d.ts +12 -0
  471. package/dist/src/bitgo/utils/tss/signableConsistency.d.ts.map +1 -0
  472. package/dist/src/bitgo/utils/tss/signableConsistency.js +9 -0
  473. package/dist/src/bitgo/utils/txRequest.d.ts +10 -0
  474. package/dist/src/bitgo/utils/txRequest.d.ts.map +1 -0
  475. package/dist/src/bitgo/utils/txRequest.js +49 -0
  476. package/dist/src/bitgo/utils/util.js +24 -10
  477. package/dist/src/bitgo/utils/wallet.d.ts +7 -0
  478. package/dist/src/bitgo/utils/wallet.d.ts.map +1 -0
  479. package/dist/src/bitgo/utils/wallet.js +48 -0
  480. package/dist/src/bitgo/v1Wallets.d.ts +170 -0
  481. package/dist/src/bitgo/v1Wallets.d.ts.map +1 -0
  482. package/dist/src/bitgo/v1Wallets.js +3 -0
  483. package/dist/src/bitgo/wallet/BuildParams.d.ts +201 -0
  484. package/dist/src/bitgo/wallet/BuildParams.d.ts.map +1 -0
  485. package/dist/src/bitgo/wallet/BuildParams.js +202 -0
  486. package/dist/src/bitgo/wallet/iWallet.d.ts +682 -30
  487. package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
  488. package/dist/src/bitgo/wallet/iWallet.js +1 -1
  489. package/dist/src/bitgo/wallet/iWallets.d.ts +325 -19
  490. package/dist/src/bitgo/wallet/iWallets.d.ts.map +1 -1
  491. package/dist/src/bitgo/wallet/iWallets.js +84 -3
  492. package/dist/src/bitgo/wallet/index.d.ts +1 -0
  493. package/dist/src/bitgo/wallet/index.d.ts.map +1 -1
  494. package/dist/src/bitgo/wallet/index.js +7 -2
  495. package/dist/src/bitgo/wallet/safeKeychain.d.ts +75 -0
  496. package/dist/src/bitgo/wallet/safeKeychain.d.ts.map +1 -0
  497. package/dist/src/bitgo/wallet/safeKeychain.js +151 -0
  498. package/dist/src/bitgo/wallet/wallet.d.ts +485 -29
  499. package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
  500. package/dist/src/bitgo/wallet/wallet.js +2723 -478
  501. package/dist/src/bitgo/wallet/wallets.d.ts +124 -9
  502. package/dist/src/bitgo/wallet/wallets.d.ts.map +1 -1
  503. package/dist/src/bitgo/wallet/wallets.js +1398 -181
  504. package/dist/src/bitgo/walletUtil/iMessageProvider.d.ts +12 -0
  505. package/dist/src/bitgo/walletUtil/iMessageProvider.d.ts.map +1 -0
  506. package/dist/src/bitgo/walletUtil/iMessageProvider.js +3 -0
  507. package/dist/src/bitgo/walletUtil/index.d.ts +3 -0
  508. package/dist/src/bitgo/walletUtil/index.d.ts.map +1 -0
  509. package/dist/src/bitgo/walletUtil/index.js +19 -0
  510. package/dist/src/bitgo/walletUtil/midnightMessageProvider.d.ts +22 -0
  511. package/dist/src/bitgo/walletUtil/midnightMessageProvider.d.ts.map +1 -0
  512. package/dist/src/bitgo/walletUtil/midnightMessageProvider.js +95 -0
  513. package/dist/src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.d.ts +9 -0
  514. package/dist/src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.d.ts.map +1 -0
  515. package/dist/src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.js +72 -0
  516. package/dist/src/bitgo/walletUtil/utxoMessageProof.d.ts +15 -0
  517. package/dist/src/bitgo/walletUtil/utxoMessageProof.d.ts.map +1 -0
  518. package/dist/src/bitgo/walletUtil/utxoMessageProof.js +40 -0
  519. package/dist/src/bitgo/webauthn/base64url.d.ts +16 -0
  520. package/dist/src/bitgo/webauthn/base64url.d.ts.map +1 -0
  521. package/dist/src/bitgo/webauthn/base64url.js +27 -0
  522. package/dist/src/bitgo/webauthn/deriveEnterpriseSalt.d.ts +18 -0
  523. package/dist/src/bitgo/webauthn/deriveEnterpriseSalt.d.ts.map +1 -0
  524. package/dist/src/bitgo/webauthn/deriveEnterpriseSalt.js +26 -0
  525. package/dist/src/bitgo/webauthn/derivePassword.d.ts +11 -0
  526. package/dist/src/bitgo/webauthn/derivePassword.d.ts.map +1 -0
  527. package/dist/src/bitgo/webauthn/derivePassword.js +16 -0
  528. package/dist/src/bitgo/webauthn/index.d.ts +5 -0
  529. package/dist/src/bitgo/webauthn/index.d.ts.map +1 -0
  530. package/dist/src/bitgo/webauthn/index.js +21 -0
  531. package/dist/src/bitgo/webauthn/types.d.ts +18 -0
  532. package/dist/src/bitgo/webauthn/types.d.ts.map +1 -0
  533. package/dist/src/bitgo/webauthn/types.js +3 -0
  534. package/dist/src/bitgo/webhook/index.js +6 -2
  535. package/dist/src/bitgo/webhook/webhooks.js +23 -9
  536. package/dist/src/coins/fiat.d.ts +45 -0
  537. package/dist/src/coins/fiat.d.ts.map +1 -0
  538. package/dist/src/coins/fiat.js +94 -0
  539. package/dist/src/coins/index.d.ts +1 -6
  540. package/dist/src/coins/index.d.ts.map +1 -1
  541. package/dist/src/coins/index.js +7 -8
  542. package/dist/src/coins/ofc.d.ts +21 -2
  543. package/dist/src/coins/ofc.d.ts.map +1 -1
  544. package/dist/src/coins/ofc.js +29 -3
  545. package/dist/src/coins/ofcToken.d.ts +15 -4
  546. package/dist/src/coins/ofcToken.d.ts.map +1 -1
  547. package/dist/src/coins/ofcToken.js +43 -5
  548. package/dist/src/coins/susd.d.ts +3 -2
  549. package/dist/src/coins/susd.d.ts.map +1 -1
  550. package/dist/src/coins/susd.js +5 -1
  551. package/dist/src/common.js +27 -13
  552. package/dist/src/index.d.ts +13 -1
  553. package/dist/src/index.d.ts.map +1 -1
  554. package/dist/src/index.js +42 -11
  555. package/dist/src/lightning.d.ts +20 -0
  556. package/dist/src/lightning.d.ts.map +1 -0
  557. package/dist/src/lightning.js +13 -0
  558. package/dist/src/units.js +5 -6
  559. package/dist/test/node.utils.d.ts +2 -0
  560. package/dist/test/node.utils.d.ts.map +1 -0
  561. package/dist/test/node.utils.js +5 -0
  562. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.d.ts +2 -0
  563. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.d.ts.map +1 -0
  564. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.js +207 -0
  565. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.d.ts +2 -0
  566. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.d.ts.map +1 -0
  567. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.js +174 -0
  568. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts +2 -0
  569. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts.map +1 -0
  570. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +108 -0
  571. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts +46 -0
  572. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts.map +1 -0
  573. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.js +69 -0
  574. package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +2 -0
  575. package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -0
  576. package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.js +279 -0
  577. package/dist/test/unit/account-lib/mpc/tss/ecdsa/fixtures.d.ts +3 -0
  578. package/dist/test/unit/account-lib/mpc/tss/ecdsa/fixtures.d.ts.map +1 -0
  579. package/dist/test/unit/account-lib/mpc/tss/ecdsa/fixtures.js +24 -0
  580. package/dist/test/unit/account-lib/mpc/util.d.ts +2 -0
  581. package/dist/test/unit/account-lib/mpc/util.d.ts.map +1 -0
  582. package/dist/test/unit/account-lib/mpc/util.js +53 -0
  583. package/dist/test/unit/bitgo/address-book/address-book.d.ts +2 -0
  584. package/dist/test/unit/bitgo/address-book/address-book.d.ts.map +1 -0
  585. package/dist/test/unit/bitgo/address-book/address-book.js +159 -0
  586. package/dist/test/unit/bitgo/defi/defiVault.d.ts +2 -0
  587. package/dist/test/unit/bitgo/defi/defiVault.d.ts.map +1 -0
  588. package/dist/test/unit/bitgo/defi/defiVault.js +863 -0
  589. package/dist/test/unit/bitgo/environment.d.ts +2 -0
  590. package/dist/test/unit/bitgo/environment.d.ts.map +1 -0
  591. package/dist/test/unit/bitgo/environment.js +38 -0
  592. package/dist/test/unit/bitgo/errors.d.ts +2 -0
  593. package/dist/test/unit/bitgo/errors.d.ts.map +1 -0
  594. package/dist/test/unit/bitgo/errors.js +262 -0
  595. package/dist/test/unit/bitgo/keychain/keychains.d.ts +2 -0
  596. package/dist/test/unit/bitgo/keychain/keychains.d.ts.map +1 -0
  597. package/dist/test/unit/bitgo/keychain/keychains.js +426 -0
  598. package/dist/test/unit/bitgo/recovery/initiate.d.ts +2 -0
  599. package/dist/test/unit/bitgo/recovery/initiate.d.ts.map +1 -0
  600. package/dist/test/unit/bitgo/recovery/initiate.js +159 -0
  601. package/dist/test/unit/bitgo/safe/derivableEd25519Pub.d.ts +2 -0
  602. package/dist/test/unit/bitgo/safe/derivableEd25519Pub.d.ts.map +1 -0
  603. package/dist/test/unit/bitgo/safe/derivableEd25519Pub.js +133 -0
  604. package/dist/test/unit/bitgo/safe/fixtures/derivableEd25519Pub.json +72 -0
  605. package/dist/test/unit/bitgo/safe/recovery.d.ts +2 -0
  606. package/dist/test/unit/bitgo/safe/recovery.d.ts.map +1 -0
  607. package/dist/test/unit/bitgo/safe/recovery.js +313 -0
  608. package/dist/test/unit/bitgo/safe/rootCoin.d.ts +2 -0
  609. package/dist/test/unit/bitgo/safe/rootCoin.d.ts.map +1 -0
  610. package/dist/test/unit/bitgo/safe/rootCoin.js +13 -0
  611. package/dist/test/unit/bitgo/safe/safe.d.ts +2 -0
  612. package/dist/test/unit/bitgo/safe/safe.d.ts.map +1 -0
  613. package/dist/test/unit/bitgo/safe/safe.js +585 -0
  614. package/dist/test/unit/bitgo/safe/safeDerivation.d.ts +2 -0
  615. package/dist/test/unit/bitgo/safe/safeDerivation.d.ts.map +1 -0
  616. package/dist/test/unit/bitgo/safe/safeDerivation.js +75 -0
  617. package/dist/test/unit/bitgo/safe/safes.d.ts +2 -0
  618. package/dist/test/unit/bitgo/safe/safes.d.ts.map +1 -0
  619. package/dist/test/unit/bitgo/safe/safes.js +376 -0
  620. package/dist/test/unit/bitgo/trading/network/encrypt.d.ts +2 -0
  621. package/dist/test/unit/bitgo/trading/network/encrypt.d.ts.map +1 -0
  622. package/dist/test/unit/bitgo/trading/network/encrypt.js +71 -0
  623. package/dist/test/unit/bitgo/trading/network/network.test.d.ts +2 -0
  624. package/dist/test/unit/bitgo/trading/network/network.test.d.ts.map +1 -0
  625. package/dist/test/unit/bitgo/trading/network/network.test.js +136 -0
  626. package/dist/test/unit/bitgo/trading/tradingAccount.d.ts +2 -0
  627. package/dist/test/unit/bitgo/trading/tradingAccount.d.ts.map +1 -0
  628. package/dist/test/unit/bitgo/trading/tradingAccount.js +192 -0
  629. package/dist/test/unit/bitgo/tss/bitgoPubKeys.d.ts +2 -0
  630. package/dist/test/unit/bitgo/tss/bitgoPubKeys.d.ts.map +1 -0
  631. package/dist/test/unit/bitgo/tss/bitgoPubKeys.js +66 -0
  632. package/dist/test/unit/bitgo/tss/common.d.ts +2 -0
  633. package/dist/test/unit/bitgo/tss/common.d.ts.map +1 -0
  634. package/dist/test/unit/bitgo/tss/common.js +77 -0
  635. package/dist/test/unit/bitgo/tss/redpallas/redpallasMPCv2.d.ts +2 -0
  636. package/dist/test/unit/bitgo/tss/redpallas/redpallasMPCv2.d.ts.map +1 -0
  637. package/dist/test/unit/bitgo/tss/redpallas/redpallasMPCv2.js +249 -0
  638. package/dist/test/unit/bitgo/utils/abstractUtxoCoinUtil.d.ts +2 -0
  639. package/dist/test/unit/bitgo/utils/abstractUtxoCoinUtil.d.ts.map +1 -0
  640. package/dist/test/unit/bitgo/utils/abstractUtxoCoinUtil.js +66 -0
  641. package/dist/test/unit/bitgo/utils/messageTypes.d.ts +2 -0
  642. package/dist/test/unit/bitgo/utils/messageTypes.d.ts.map +1 -0
  643. package/dist/test/unit/bitgo/utils/messageTypes.js +64 -0
  644. package/dist/test/unit/bitgo/utils/mpcUtils.unwrap.d.ts +2 -0
  645. package/dist/test/unit/bitgo/utils/mpcUtils.unwrap.d.ts.map +1 -0
  646. package/dist/test/unit/bitgo/utils/mpcUtils.unwrap.js +109 -0
  647. package/dist/test/unit/bitgo/utils/mpcUtils.wrapApprove.d.ts +2 -0
  648. package/dist/test/unit/bitgo/utils/mpcUtils.wrapApprove.d.ts.map +1 -0
  649. package/dist/test/unit/bitgo/utils/mpcUtils.wrapApprove.js +106 -0
  650. package/dist/test/unit/bitgo/utils/notEmpty.d.ts +2 -0
  651. package/dist/test/unit/bitgo/utils/notEmpty.d.ts.map +1 -0
  652. package/dist/test/unit/bitgo/utils/notEmpty.js +15 -0
  653. package/dist/test/unit/bitgo/utils/postWithCodec.d.ts +2 -0
  654. package/dist/test/unit/bitgo/utils/postWithCodec.d.ts.map +1 -0
  655. package/dist/test/unit/bitgo/utils/postWithCodec.js +73 -0
  656. package/dist/test/unit/bitgo/utils/siws.d.ts +2 -0
  657. package/dist/test/unit/bitgo/utils/siws.d.ts.map +1 -0
  658. package/dist/test/unit/bitgo/utils/siws.js +206 -0
  659. package/dist/test/unit/bitgo/utils/tss/addressVerification.d.ts +2 -0
  660. package/dist/test/unit/bitgo/utils/tss/addressVerification.d.ts.map +1 -0
  661. package/dist/test/unit/bitgo/utils/tss/addressVerification.js +251 -0
  662. package/dist/test/unit/bitgo/utils/tss/baseTSSUtils.d.ts +2 -0
  663. package/dist/test/unit/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -0
  664. package/dist/test/unit/bitgo/utils/tss/baseTSSUtils.js +348 -0
  665. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaEncryptionVersion.d.ts +2 -0
  666. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaEncryptionVersion.d.ts.map +1 -0
  667. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaEncryptionVersion.js +94 -0
  668. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts +2 -0
  669. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
  670. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaMPCv2.js +1068 -0
  671. package/dist/test/unit/bitgo/utils/tss/ecdsa/gpgKeys.d.ts +5 -0
  672. package/dist/test/unit/bitgo/utils/tss/ecdsa/gpgKeys.d.ts.map +1 -0
  673. package/dist/test/unit/bitgo/utils/tss/ecdsa/gpgKeys.js +36 -0
  674. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaExternalSigner.d.ts +2 -0
  675. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaExternalSigner.d.ts.map +1 -0
  676. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaExternalSigner.js +158 -0
  677. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts +2 -0
  678. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts.map +1 -0
  679. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaMPCv2.js +2410 -0
  680. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.d.ts +2 -0
  681. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.d.ts.map +1 -0
  682. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.js +549 -0
  683. package/dist/test/unit/bitgo/utils/tss/eddsa/smcUtil.d.ts +2 -0
  684. package/dist/test/unit/bitgo/utils/tss/eddsa/smcUtil.d.ts.map +1 -0
  685. package/dist/test/unit/bitgo/utils/tss/eddsa/smcUtil.js +376 -0
  686. package/dist/test/unit/bitgo/utils/tss/keyShareEnvelope.d.ts +2 -0
  687. package/dist/test/unit/bitgo/utils/tss/keyShareEnvelope.d.ts.map +1 -0
  688. package/dist/test/unit/bitgo/utils/tss/keyShareEnvelope.js +83 -0
  689. package/dist/test/unit/bitgo/utils/tss/keyVerification.d.ts +2 -0
  690. package/dist/test/unit/bitgo/utils/tss/keyVerification.d.ts.map +1 -0
  691. package/dist/test/unit/bitgo/utils/tss/keyVerification.js +229 -0
  692. package/dist/test/unit/bitgo/utils/tss/preHashedSignable.d.ts +2 -0
  693. package/dist/test/unit/bitgo/utils/tss/preHashedSignable.d.ts.map +1 -0
  694. package/dist/test/unit/bitgo/utils/tss/preHashedSignable.js +55 -0
  695. package/dist/test/unit/bitgo/utils/tss/recipientUtils.d.ts +2 -0
  696. package/dist/test/unit/bitgo/utils/tss/recipientUtils.d.ts.map +1 -0
  697. package/dist/test/unit/bitgo/utils/tss/recipientUtils.js +462 -0
  698. package/dist/test/unit/bitgo/utils/tss/redpallas/redpallasMPCv2.d.ts +2 -0
  699. package/dist/test/unit/bitgo/utils/tss/redpallas/redpallasMPCv2.d.ts.map +1 -0
  700. package/dist/test/unit/bitgo/utils/tss/redpallas/redpallasMPCv2.js +80 -0
  701. package/dist/test/unit/bitgo/utils/tss/redpallas/smcUtil.d.ts +2 -0
  702. package/dist/test/unit/bitgo/utils/tss/redpallas/smcUtil.d.ts.map +1 -0
  703. package/dist/test/unit/bitgo/utils/tss/redpallas/smcUtil.js +279 -0
  704. package/dist/test/unit/bitgo/utils/tss/redpallasBitgoGpgKey.d.ts +2 -0
  705. package/dist/test/unit/bitgo/utils/tss/redpallasBitgoGpgKey.d.ts.map +1 -0
  706. package/dist/test/unit/bitgo/utils/tss/redpallasBitgoGpgKey.js +111 -0
  707. package/dist/test/unit/bitgo/utils/txRequest.d.ts +2 -0
  708. package/dist/test/unit/bitgo/utils/txRequest.d.ts.map +1 -0
  709. package/dist/test/unit/bitgo/utils/txRequest.js +179 -0
  710. package/dist/test/unit/bitgo/utils/wallet.d.ts +2 -0
  711. package/dist/test/unit/bitgo/utils/wallet.d.ts.map +1 -0
  712. package/dist/test/unit/bitgo/utils/wallet.js +55 -0
  713. package/dist/test/unit/bitgo/wallet/BuildParams.d.ts +2 -0
  714. package/dist/test/unit/bitgo/wallet/BuildParams.d.ts.map +1 -0
  715. package/dist/test/unit/bitgo/wallet/BuildParams.js +154 -0
  716. package/dist/test/unit/bitgo/wallet/SendTransactionRequest.d.ts +2 -0
  717. package/dist/test/unit/bitgo/wallet/SendTransactionRequest.d.ts.map +1 -0
  718. package/dist/test/unit/bitgo/wallet/SendTransactionRequest.js +114 -0
  719. package/dist/test/unit/bitgo/wallet/getAccountResources.d.ts +2 -0
  720. package/dist/test/unit/bitgo/wallet/getAccountResources.d.ts.map +1 -0
  721. package/dist/test/unit/bitgo/wallet/getAccountResources.js +133 -0
  722. package/dist/test/unit/bitgo/wallet/getPotentialStuckTxs.d.ts +2 -0
  723. package/dist/test/unit/bitgo/wallet/getPotentialStuckTxs.d.ts.map +1 -0
  724. package/dist/test/unit/bitgo/wallet/getPotentialStuckTxs.js +88 -0
  725. package/dist/test/unit/bitgo/wallet/getResourceDelegations.d.ts +2 -0
  726. package/dist/test/unit/bitgo/wallet/getResourceDelegations.d.ts.map +1 -0
  727. package/dist/test/unit/bitgo/wallet/getResourceDelegations.js +118 -0
  728. package/dist/test/unit/bitgo/wallet/ofcWalletAddressCreation.d.ts +2 -0
  729. package/dist/test/unit/bitgo/wallet/ofcWalletAddressCreation.d.ts.map +1 -0
  730. package/dist/test/unit/bitgo/wallet/ofcWalletAddressCreation.js +141 -0
  731. package/dist/test/unit/bitgo/wallet/ofcWalletSignTransaction.d.ts +2 -0
  732. package/dist/test/unit/bitgo/wallet/ofcWalletSignTransaction.d.ts.map +1 -0
  733. package/dist/test/unit/bitgo/wallet/ofcWalletSignTransaction.js +185 -0
  734. package/dist/test/unit/bitgo/wallet/prebuildTransactionTypes.d.ts +2 -0
  735. package/dist/test/unit/bitgo/wallet/prebuildTransactionTypes.d.ts.map +1 -0
  736. package/dist/test/unit/bitgo/wallet/prebuildTransactionTypes.js +20 -0
  737. package/dist/test/unit/bitgo/wallet/resourceManagement.d.ts +3 -0
  738. package/dist/test/unit/bitgo/wallet/resourceManagement.d.ts.map +1 -0
  739. package/dist/test/unit/bitgo/wallet/resourceManagement.js +441 -0
  740. package/dist/test/unit/bitgo/wallet/safeGetUserPrv.d.ts +5 -0
  741. package/dist/test/unit/bitgo/wallet/safeGetUserPrv.d.ts.map +1 -0
  742. package/dist/test/unit/bitgo/wallet/safeGetUserPrv.js +671 -0
  743. package/dist/test/unit/bitgo/wallet/safeShareWallet.d.ts +9 -0
  744. package/dist/test/unit/bitgo/wallet/safeShareWallet.d.ts.map +1 -0
  745. package/dist/test/unit/bitgo/wallet/safeShareWallet.js +303 -0
  746. package/dist/test/unit/bitgo/wallet/tokenApproval.d.ts +2 -0
  747. package/dist/test/unit/bitgo/wallet/tokenApproval.d.ts.map +1 -0
  748. package/dist/test/unit/bitgo/wallet/tokenApproval.js +210 -0
  749. package/dist/test/unit/bitgo/wallet/walletEvmAddressCreation.d.ts +2 -0
  750. package/dist/test/unit/bitgo/wallet/walletEvmAddressCreation.d.ts.map +1 -0
  751. package/dist/test/unit/bitgo/wallet/walletEvmAddressCreation.js +181 -0
  752. package/dist/test/unit/bitgo/wallet/walletOptionsCodecs.d.ts +2 -0
  753. package/dist/test/unit/bitgo/wallet/walletOptionsCodecs.d.ts.map +1 -0
  754. package/dist/test/unit/bitgo/wallet/walletOptionsCodecs.js +69 -0
  755. package/dist/test/unit/bitgo/wallet/walletTssAddressVerification.d.ts +2 -0
  756. package/dist/test/unit/bitgo/wallet/walletTssAddressVerification.d.ts.map +1 -0
  757. package/dist/test/unit/bitgo/wallet/walletTssAddressVerification.js +320 -0
  758. package/dist/test/unit/bitgo/wallet/walletVerifyKey.d.ts +2 -0
  759. package/dist/test/unit/bitgo/wallet/walletVerifyKey.d.ts.map +1 -0
  760. package/dist/test/unit/bitgo/wallet/walletVerifyKey.js +160 -0
  761. package/dist/test/unit/bitgo/wallet/walletsEncryptionVersion.d.ts +2 -0
  762. package/dist/test/unit/bitgo/wallet/walletsEncryptionVersion.d.ts.map +1 -0
  763. package/dist/test/unit/bitgo/wallet/walletsEncryptionVersion.js +304 -0
  764. package/dist/test/unit/bitgo/wallet/walletsEvmKeyring.d.ts +2 -0
  765. package/dist/test/unit/bitgo/wallet/walletsEvmKeyring.d.ts.map +1 -0
  766. package/dist/test/unit/bitgo/wallet/walletsEvmKeyring.js +216 -0
  767. package/dist/test/unit/bitgo/wallet/walletsExternalSigner.d.ts +2 -0
  768. package/dist/test/unit/bitgo/wallet/walletsExternalSigner.d.ts.map +1 -0
  769. package/dist/test/unit/bitgo/wallet/walletsExternalSigner.js +853 -0
  770. package/dist/test/unit/bitgo/wallet/walletsGoAccount.d.ts +2 -0
  771. package/dist/test/unit/bitgo/wallet/walletsGoAccount.d.ts.map +1 -0
  772. package/dist/test/unit/bitgo/wallet/walletsGoAccount.js +150 -0
  773. package/dist/test/unit/bitgo/wallet/walletsWebauthn.d.ts +2 -0
  774. package/dist/test/unit/bitgo/wallet/walletsWebauthn.d.ts.map +1 -0
  775. package/dist/test/unit/bitgo/wallet/walletsWebauthn.js +201 -0
  776. package/dist/test/unit/coins/ofc.d.ts +2 -0
  777. package/dist/test/unit/coins/ofc.d.ts.map +1 -0
  778. package/dist/test/unit/coins/ofc.js +124 -0
  779. package/dist/test/unit/lightning.d.ts +2 -0
  780. package/dist/test/unit/lightning.d.ts.map +1 -0
  781. package/dist/test/unit/lightning.js +23 -0
  782. package/dist/test/unit/units.d.ts +2 -0
  783. package/dist/test/unit/units.d.ts.map +1 -0
  784. package/dist/test/unit/units.js +98 -0
  785. package/dist/tsconfig.tsbuildinfo +1 -8340
  786. package/package.json +31 -24
  787. package/.eslintignore +0 -5
  788. package/CHANGELOG.md +0 -662
  789. package/dist/src/account-lib/baseCoin/blsKeyPair.d.ts +0 -77
  790. package/dist/src/account-lib/baseCoin/blsKeyPair.d.ts.map +0 -1
  791. package/dist/src/account-lib/baseCoin/blsKeyPair.js +0 -209
  792. package/dist/src/account-lib/mpc/hdTree.d.ts +0 -31
  793. package/dist/src/account-lib/mpc/hdTree.d.ts.map +0 -1
  794. package/dist/src/account-lib/mpc/hdTree.js +0 -141
  795. package/dist/src/account-lib/mpc/types.d.ts +0 -5
  796. package/dist/src/account-lib/mpc/types.d.ts.map +0 -1
  797. package/dist/src/account-lib/mpc/types.js +0 -3
  798. package/dist/src/account-lib/util/ed25519KeyDeriver.d.ts +0 -49
  799. package/dist/src/account-lib/util/ed25519KeyDeriver.d.ts.map +0 -1
  800. package/dist/src/account-lib/util/ed25519KeyDeriver.js +0 -87
  801. package/dist/src/bitgo/lightning/iLightning.d.ts +0 -186
  802. package/dist/src/bitgo/lightning/iLightning.d.ts.map +0 -1
  803. package/dist/src/bitgo/lightning/iLightning.js +0 -106
  804. package/dist/src/bitgo/lightning/index.d.ts +0 -5
  805. package/dist/src/bitgo/lightning/index.d.ts.map +0 -1
  806. package/dist/src/bitgo/lightning/index.js +0 -17
  807. package/dist/src/bitgo/lightning/lightning.d.ts +0 -25
  808. package/dist/src/bitgo/lightning/lightning.d.ts.map +0 -1
  809. package/dist/src/bitgo/lightning/lightning.js +0 -111
  810. package/dist/src/bitgo/lightning/lightningUtils.d.ts +0 -46
  811. package/dist/src/bitgo/lightning/lightningUtils.d.ts.map +0 -1
  812. package/dist/src/bitgo/lightning/lightningUtils.js +0 -133
  813. package/dist/src/bitgo/lightning/lnurlCodec.d.ts +0 -3
  814. package/dist/src/bitgo/lightning/lnurlCodec.d.ts.map +0 -1
  815. package/dist/src/bitgo/lightning/lnurlCodec.js +0 -28
  816. package/dist/src/bitgo/trading/affirmation.d.ts +0 -35
  817. package/dist/src/bitgo/trading/affirmation.d.ts.map +0 -1
  818. package/dist/src/bitgo/trading/affirmation.js +0 -53
  819. package/dist/src/bitgo/trading/affirmations.d.ts +0 -23
  820. package/dist/src/bitgo/trading/affirmations.d.ts.map +0 -1
  821. package/dist/src/bitgo/trading/affirmations.js +0 -45
  822. package/dist/src/bitgo/trading/iAffirmation.d.ts +0 -15
  823. package/dist/src/bitgo/trading/iAffirmation.d.ts.map +0 -1
  824. package/dist/src/bitgo/trading/iAffirmation.js +0 -13
  825. package/dist/src/bitgo/trading/iAffirmations.d.ts +0 -10
  826. package/dist/src/bitgo/trading/iAffirmations.d.ts.map +0 -1
  827. package/dist/src/bitgo/trading/iAffirmations.js +0 -3
  828. package/dist/src/bitgo/trading/iSettlement.d.ts +0 -25
  829. package/dist/src/bitgo/trading/iSettlement.d.ts.map +0 -1
  830. package/dist/src/bitgo/trading/iSettlement.js +0 -17
  831. package/dist/src/bitgo/trading/iSettlements.d.ts +0 -19
  832. package/dist/src/bitgo/trading/iSettlements.d.ts.map +0 -1
  833. package/dist/src/bitgo/trading/iSettlements.js +0 -3
  834. package/dist/src/bitgo/trading/iTradingPartner.d.ts +0 -14
  835. package/dist/src/bitgo/trading/iTradingPartner.d.ts.map +0 -1
  836. package/dist/src/bitgo/trading/iTradingPartner.js +0 -17
  837. package/dist/src/bitgo/trading/iTradingPartners.d.ts +0 -15
  838. package/dist/src/bitgo/trading/iTradingPartners.d.ts.map +0 -1
  839. package/dist/src/bitgo/trading/iTradingPartners.js +0 -9
  840. package/dist/src/bitgo/trading/lock.d.ts +0 -16
  841. package/dist/src/bitgo/trading/lock.d.ts.map +0 -1
  842. package/dist/src/bitgo/trading/lock.js +0 -12
  843. package/dist/src/bitgo/trading/payload.d.ts +0 -22
  844. package/dist/src/bitgo/trading/payload.d.ts.map +0 -1
  845. package/dist/src/bitgo/trading/payload.js +0 -3
  846. package/dist/src/bitgo/trading/settlement.d.ts +0 -16
  847. package/dist/src/bitgo/trading/settlement.d.ts.map +0 -1
  848. package/dist/src/bitgo/trading/settlement.js +0 -21
  849. package/dist/src/bitgo/trading/settlements.d.ts +0 -32
  850. package/dist/src/bitgo/trading/settlements.d.ts.map +0 -1
  851. package/dist/src/bitgo/trading/settlements.js +0 -61
  852. package/dist/src/bitgo/trading/trade.d.ts +0 -29
  853. package/dist/src/bitgo/trading/trade.d.ts.map +0 -1
  854. package/dist/src/bitgo/trading/trade.js +0 -11
  855. package/dist/src/bitgo/trading/tradingPartner.d.ts +0 -26
  856. package/dist/src/bitgo/trading/tradingPartner.d.ts.map +0 -1
  857. package/dist/src/bitgo/trading/tradingPartner.js +0 -31
  858. package/dist/src/bitgo/trading/tradingPartners.d.ts +0 -24
  859. package/dist/src/bitgo/trading/tradingPartners.d.ts.map +0 -1
  860. package/dist/src/bitgo/trading/tradingPartners.js +0 -32
  861. package/dist/src/bitgo/utils/blsUtils.d.ts +0 -52
  862. package/dist/src/bitgo/utils/blsUtils.d.ts.map +0 -1
  863. package/dist/src/bitgo/utils/blsUtils.js +0 -237
  864. package/dist/src/bitgo/utils/iBlsUtils.d.ts +0 -14
  865. package/dist/src/bitgo/utils/iBlsUtils.d.ts.map +0 -1
  866. package/dist/src/bitgo/utils/iBlsUtils.js +0 -3
  867. package/dist/src/coins/fiateur.d.ts +0 -31
  868. package/dist/src/coins/fiateur.d.ts.map +0 -1
  869. package/dist/src/coins/fiateur.js +0 -57
  870. package/dist/src/coins/fiatgbp.d.ts +0 -31
  871. package/dist/src/coins/fiatgbp.d.ts.map +0 -1
  872. package/dist/src/coins/fiatgbp.js +0 -57
  873. package/dist/src/coins/fiatusd.d.ts +0 -31
  874. package/dist/src/coins/fiatusd.d.ts.map +0 -1
  875. package/dist/src/coins/fiatusd.js +0 -57
  876. package/dist/src/coins/tfiateur.d.ts +0 -11
  877. package/dist/src/coins/tfiateur.d.ts.map +0 -1
  878. package/dist/src/coins/tfiateur.js +0 -17
  879. package/dist/src/coins/tfiatgbp.d.ts +0 -11
  880. package/dist/src/coins/tfiatgbp.d.ts.map +0 -1
  881. package/dist/src/coins/tfiatgbp.js +0 -17
  882. package/dist/src/coins/tfiatusd.d.ts +0 -11
  883. package/dist/src/coins/tfiatusd.d.ts.map +0 -1
  884. package/dist/src/coins/tfiatusd.js +0 -17
  885. package/dist/src/openssl/index.d.ts +0 -2
  886. package/dist/src/openssl/index.d.ts.map +0 -1
  887. package/dist/src/openssl/openssl.d.ts +0 -12
  888. package/dist/src/openssl/openssl.d.ts.map +0 -1
  889. package/dist/src/openssl/openssl.js +0 -48
  890. package/dist/src/openssl/opensslbytes.d.ts +0 -4
  891. package/dist/src/openssl/opensslbytes.d.ts.map +0 -1
  892. package/dist/src/openssl/opensslbytes.js +0 -20
@@ -0,0 +1,124 @@
1
+ /**
2
+ * @prettier
3
+ *
4
+ * @experimental The safe client surface is experimental and may change (including breaking
5
+ * changes) before the public release.
6
+ */
7
+ import type { FreezeSafeBody, SafeData, SafePermission, SafeRootKeys, SafeShareData, SafeShareKeychain, SafeShareState, WebAuthnOtpDevice } from '@bitgo/public-types';
8
+ import type { EncryptionVersion } from '../../api/types';
9
+ import type { Wallet, WalletShare } from '../wallet';
10
+ import type { WebAuthnProvider } from '../webauthn';
11
+ /** @experimental */
12
+ export interface InitializeSafeOptions {
13
+ label: string;
14
+ }
15
+ /** @experimental */
16
+ export interface UpdateSafeOptions {
17
+ label: string;
18
+ }
19
+ /**
20
+ * Phase 3 — the client hands back the 12 key ids it created in Phase 2.
21
+ * @experimental
22
+ */
23
+ export interface FinalizeSafeOptions {
24
+ rootKeys: SafeRootKeys;
25
+ }
26
+ /**
27
+ * Sharing ONE safe wallet with a non-member rides the existing wallet-share handshake,
28
+ * so the result is the existing WalletShare shape.
29
+ */
30
+ export type WalletShareData = WalletShare;
31
+ export interface CreateSafeWalletOptions {
32
+ coin: string;
33
+ label: string;
34
+ passphrase: string;
35
+ type?: 'hot';
36
+ /**
37
+ * Mint scheme: `onchain` (default) uses the independent multisig root slot for the coin's
38
+ * curve; `tss` uses the MPC root slot. Independent of the coin's default wallet multisig type.
39
+ */
40
+ multisigType?: 'onchain' | 'tss';
41
+ }
42
+ interface AddSafeMemberBase {
43
+ permissions: SafePermission[];
44
+ /** required when 'spend' is included — the 4 root user keys ECDH-re-encrypted to the invitee */
45
+ keychains?: SafeShareKeychain[];
46
+ message?: string;
47
+ /** when true, suppress the invitation email that would otherwise be sent to `email` */
48
+ disableEmail?: boolean;
49
+ }
50
+ /** Add a member by either `userId` or `email` — exactly one is required. */
51
+ export type AddSafeMemberOptions = (AddSafeMemberBase & {
52
+ userId: string;
53
+ email?: never;
54
+ }) | (AddSafeMemberBase & {
55
+ email: string;
56
+ userId?: never;
57
+ });
58
+ export interface AddSafeWalletMemberOptions {
59
+ walletId: string;
60
+ /** required — sharing re-encrypts the user key, which needs hardened derivation from the passphrase */
61
+ walletPassphrase: string;
62
+ email?: string;
63
+ permissions?: string[];
64
+ message?: string;
65
+ }
66
+ export type AcceptSafeShareAsSpenderOptions = {
67
+ safeShareId: string;
68
+ userPassword: string;
69
+ newWalletPassphrase?: string;
70
+ };
71
+ export type AcceptSafeShareAsNonSpenderOptions = {
72
+ safeShareId: string;
73
+ };
74
+ export type AcceptSafeShareOptions = AcceptSafeShareAsSpenderOptions | AcceptSafeShareAsNonSpenderOptions;
75
+ /**
76
+ * Register a PRF passkey on every user root of the safe. The device must be PRF-capable
77
+ * and already enrolled on the caller's account.
78
+ * @experimental
79
+ */
80
+ export interface RegisterSafePasskeyOptions {
81
+ device: WebAuthnOtpDevice;
82
+ safePassphrase: string;
83
+ provider: WebAuthnProvider;
84
+ /** Encryption version for the PRF-wrapped blobs; defaults to the SDK default (mirrors wallet attach). */
85
+ encryptionVersion?: EncryptionVersion;
86
+ }
87
+ /**
88
+ * Remove a PRF passkey from every user root. `safePassphrase` is verified client-side
89
+ * (decrypts a user root) before the server is called.
90
+ * @experimental
91
+ */
92
+ export interface RemoveSafePasskeyOptions {
93
+ device: WebAuthnOtpDevice;
94
+ safePassphrase: string;
95
+ }
96
+ export interface RegisterSafePasskeyResponse {
97
+ otpDeviceId: string;
98
+ updatedKeys: string[];
99
+ }
100
+ /**
101
+ * @experimental
102
+ */
103
+ export interface ISafe {
104
+ id(): string;
105
+ enterpriseId(): string;
106
+ label(): string;
107
+ status(): SafeData['status'];
108
+ url(extra?: string): string;
109
+ createWallet(params: CreateSafeWalletOptions): Promise<Wallet>;
110
+ update(params: UpdateSafeOptions): Promise<SafeData>;
111
+ addMember(params: AddSafeMemberOptions): Promise<SafeData>;
112
+ addMemberToWallet(params: AddSafeWalletMemberOptions): Promise<WalletShareData>;
113
+ listShares(params?: {
114
+ state?: SafeShareState;
115
+ }): Promise<SafeShareData[]>;
116
+ acceptShare(params: AcceptSafeShareOptions): Promise<SafeShareData>;
117
+ registerPasskey(params: RegisterSafePasskeyOptions): Promise<RegisterSafePasskeyResponse>;
118
+ removePasskey(params: RemoveSafePasskeyOptions): Promise<void>;
119
+ freeze(params?: FreezeSafeBody): Promise<SafeData>;
120
+ archive(): Promise<SafeData>;
121
+ toJSON(): SafeData;
122
+ }
123
+ export {};
124
+ //# sourceMappingURL=iSafe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iSafe.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/safe/iSafe.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaVNhZmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vc2FmZS9pU2FmZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqXG4gKiBAZXhwZXJpbWVudGFsIFRoZSBzYWZlIGNsaWVudCBzdXJmYWNlIGlzIGV4cGVyaW1lbnRhbCBhbmQgbWF5IGNoYW5nZSAoaW5jbHVkaW5nIGJyZWFraW5nXG4gKiBjaGFuZ2VzKSBiZWZvcmUgdGhlIHB1YmxpYyByZWxlYXNlLlxuICovXG4vLyBXaXJlL2RhdGEgc2hhcGVzIGFyZSBvd25lZCBieSBAYml0Z28vcHVibGljLXR5cGVzIOKAlCBpbXBvcnQgdGhlbSB3aGVyZSBuZWVkZWQgcmF0aGVyIHRoYW5cbi8vIHJlLWV4cG9ydGluZyBmcm9tIHNkay1jb3JlLlxuaW1wb3J0IHR5cGUge1xuICBGcmVlemVTYWZlQm9keSxcbiAgU2FmZURhdGEsXG4gIFNhZmVQZXJtaXNzaW9uLFxuICBTYWZlUm9vdEtleXMsXG4gIFNhZmVTaGFyZURhdGEsXG4gIFNhZmVTaGFyZUtleWNoYWluLFxuICBTYWZlU2hhcmVTdGF0ZSxcbiAgV2ViQXV0aG5PdHBEZXZpY2UsXG59IGZyb20gJ0BiaXRnby9wdWJsaWMtdHlwZXMnO1xuaW1wb3J0IHR5cGUgeyBFbmNyeXB0aW9uVmVyc2lvbiB9IGZyb20gJy4uLy4uL2FwaS90eXBlcyc7XG5pbXBvcnQgdHlwZSB7IFdhbGxldCwgV2FsbGV0U2hhcmUgfSBmcm9tICcuLi93YWxsZXQnO1xuaW1wb3J0IHR5cGUgeyBXZWJBdXRoblByb3ZpZGVyIH0gZnJvbSAnLi4vd2ViYXV0aG4nO1xuXG4vKiogQGV4cGVyaW1lbnRhbCAqL1xuZXhwb3J0IGludGVyZmFjZSBJbml0aWFsaXplU2FmZU9wdGlvbnMge1xuICBsYWJlbDogc3RyaW5nO1xufVxuXG4vKiogQGV4cGVyaW1lbnRhbCAqL1xuZXhwb3J0IGludGVyZmFjZSBVcGRhdGVTYWZlT3B0aW9ucyB7XG4gIGxhYmVsOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUGhhc2UgMyDigJQgdGhlIGNsaWVudCBoYW5kcyBiYWNrIHRoZSAxMiBrZXkgaWRzIGl0IGNyZWF0ZWQgaW4gUGhhc2UgMi5cbiAqIEBleHBlcmltZW50YWxcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBGaW5hbGl6ZVNhZmVPcHRpb25zIHtcbiAgcm9vdEtleXM6IFNhZmVSb290S2V5cztcbn1cblxuLyoqXG4gKiBTaGFyaW5nIE9ORSBzYWZlIHdhbGxldCB3aXRoIGEgbm9uLW1lbWJlciByaWRlcyB0aGUgZXhpc3Rpbmcgd2FsbGV0LXNoYXJlIGhhbmRzaGFrZSxcbiAqIHNvIHRoZSByZXN1bHQgaXMgdGhlIGV4aXN0aW5nIFdhbGxldFNoYXJlIHNoYXBlLlxuICovXG5leHBvcnQgdHlwZSBXYWxsZXRTaGFyZURhdGEgPSBXYWxsZXRTaGFyZTtcblxuLy8gLS0tLSBwZXItc2FmZSBvcGVyYXRpb24gb3B0aW9ucyAtLS0tXG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlU2FmZVdhbGxldE9wdGlvbnMge1xuICBjb2luOiBzdHJpbmc7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIHBhc3NwaHJhc2U6IHN0cmluZztcbiAgdHlwZT86ICdob3QnO1xuICAvKipcbiAgICogTWludCBzY2hlbWU6IGBvbmNoYWluYCAoZGVmYXVsdCkgdXNlcyB0aGUgaW5kZXBlbmRlbnQgbXVsdGlzaWcgcm9vdCBzbG90IGZvciB0aGUgY29pbidzXG4gICAqIGN1cnZlOyBgdHNzYCB1c2VzIHRoZSBNUEMgcm9vdCBzbG90LiBJbmRlcGVuZGVudCBvZiB0aGUgY29pbidzIGRlZmF1bHQgd2FsbGV0IG11bHRpc2lnIHR5cGUuXG4gICAqL1xuICBtdWx0aXNpZ1R5cGU/OiAnb25jaGFpbicgfCAndHNzJztcbn1cblxuaW50ZXJmYWNlIEFkZFNhZmVNZW1iZXJCYXNlIHtcbiAgcGVybWlzc2lvbnM6IFNhZmVQZXJtaXNzaW9uW107XG4gIC8qKiByZXF1aXJlZCB3aGVuICdzcGVuZCcgaXMgaW5jbHVkZWQg4oCUIHRoZSA0IHJvb3QgdXNlciBrZXlzIEVDREgtcmUtZW5jcnlwdGVkIHRvIHRoZSBpbnZpdGVlICovXG4gIGtleWNoYWlucz86IFNhZmVTaGFyZUtleWNoYWluW107XG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG4gIC8qKiB3aGVuIHRydWUsIHN1cHByZXNzIHRoZSBpbnZpdGF0aW9uIGVtYWlsIHRoYXQgd291bGQgb3RoZXJ3aXNlIGJlIHNlbnQgdG8gYGVtYWlsYCAqL1xuICBkaXNhYmxlRW1haWw/OiBib29sZWFuO1xufVxuXG4vKiogQWRkIGEgbWVtYmVyIGJ5IGVpdGhlciBgdXNlcklkYCBvciBgZW1haWxgIOKAlCBleGFjdGx5IG9uZSBpcyByZXF1aXJlZC4gKi9cbmV4cG9ydCB0eXBlIEFkZFNhZmVNZW1iZXJPcHRpb25zID1cbiAgfCAoQWRkU2FmZU1lbWJlckJhc2UgJiB7IHVzZXJJZDogc3RyaW5nOyBlbWFpbD86IG5ldmVyIH0pXG4gIHwgKEFkZFNhZmVNZW1iZXJCYXNlICYgeyBlbWFpbDogc3RyaW5nOyB1c2VySWQ/OiBuZXZlciB9KTtcblxuZXhwb3J0IGludGVyZmFjZSBBZGRTYWZlV2FsbGV0TWVtYmVyT3B0aW9ucyB7XG4gIHdhbGxldElkOiBzdHJpbmc7XG4gIC8qKiByZXF1aXJlZCDigJQgc2hhcmluZyByZS1lbmNyeXB0cyB0aGUgdXNlciBrZXksIHdoaWNoIG5lZWRzIGhhcmRlbmVkIGRlcml2YXRpb24gZnJvbSB0aGUgcGFzc3BocmFzZSAqL1xuICB3YWxsZXRQYXNzcGhyYXNlOiBzdHJpbmc7XG4gIGVtYWlsPzogc3RyaW5nO1xuICBwZXJtaXNzaW9ucz86IHN0cmluZ1tdO1xuICBtZXNzYWdlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBBY2NlcHRTYWZlU2hhcmVBc1NwZW5kZXJPcHRpb25zID0ge1xuICBzYWZlU2hhcmVJZDogc3RyaW5nO1xuICB1c2VyUGFzc3dvcmQ6IHN0cmluZztcbiAgbmV3V2FsbGV0UGFzc3BocmFzZT86IHN0cmluZztcbn07XG5leHBvcnQgdHlwZSBBY2NlcHRTYWZlU2hhcmVBc05vblNwZW5kZXJPcHRpb25zID0ge1xuICBzYWZlU2hhcmVJZDogc3RyaW5nO1xufTtcbmV4cG9ydCB0eXBlIEFjY2VwdFNhZmVTaGFyZU9wdGlvbnMgPSBBY2NlcHRTYWZlU2hhcmVBc1NwZW5kZXJPcHRpb25zIHwgQWNjZXB0U2FmZVNoYXJlQXNOb25TcGVuZGVyT3B0aW9ucztcblxuLyoqXG4gKiBSZWdpc3RlciBhIFBSRiBwYXNza2V5IG9uIGV2ZXJ5IHVzZXIgcm9vdCBvZiB0aGUgc2FmZS4gVGhlIGRldmljZSBtdXN0IGJlIFBSRi1jYXBhYmxlXG4gKiBhbmQgYWxyZWFkeSBlbnJvbGxlZCBvbiB0aGUgY2FsbGVyJ3MgYWNjb3VudC5cbiAqIEBleHBlcmltZW50YWxcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZWdpc3RlclNhZmVQYXNza2V5T3B0aW9ucyB7XG4gIGRldmljZTogV2ViQXV0aG5PdHBEZXZpY2U7XG4gIHNhZmVQYXNzcGhyYXNlOiBzdHJpbmc7XG4gIHByb3ZpZGVyOiBXZWJBdXRoblByb3ZpZGVyO1xuICAvKiogRW5jcnlwdGlvbiB2ZXJzaW9uIGZvciB0aGUgUFJGLXdyYXBwZWQgYmxvYnM7IGRlZmF1bHRzIHRvIHRoZSBTREsgZGVmYXVsdCAobWlycm9ycyB3YWxsZXQgYXR0YWNoKS4gKi9cbiAgZW5jcnlwdGlvblZlcnNpb24/OiBFbmNyeXB0aW9uVmVyc2lvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgYSBQUkYgcGFzc2tleSBmcm9tIGV2ZXJ5IHVzZXIgcm9vdC4gYHNhZmVQYXNzcGhyYXNlYCBpcyB2ZXJpZmllZCBjbGllbnQtc2lkZVxuICogKGRlY3J5cHRzIGEgdXNlciByb290KSBiZWZvcmUgdGhlIHNlcnZlciBpcyBjYWxsZWQuXG4gKiBAZXhwZXJpbWVudGFsXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVtb3ZlU2FmZVBhc3NrZXlPcHRpb25zIHtcbiAgZGV2aWNlOiBXZWJBdXRobk90cERldmljZTtcbiAgc2FmZVBhc3NwaHJhc2U6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZWdpc3RlclNhZmVQYXNza2V5UmVzcG9uc2Uge1xuICBvdHBEZXZpY2VJZDogc3RyaW5nO1xuICB1cGRhdGVkS2V5czogc3RyaW5nW107XG59XG5cbi8qKlxuICogQGV4cGVyaW1lbnRhbFxuICovXG5leHBvcnQgaW50ZXJmYWNlIElTYWZlIHtcbiAgaWQoKTogc3RyaW5nO1xuICBlbnRlcnByaXNlSWQoKTogc3RyaW5nO1xuICBsYWJlbCgpOiBzdHJpbmc7XG4gIHN0YXR1cygpOiBTYWZlRGF0YVsnc3RhdHVzJ107XG4gIHVybChleHRyYT86IHN0cmluZyk6IHN0cmluZztcbiAgY3JlYXRlV2FsbGV0KHBhcmFtczogQ3JlYXRlU2FmZVdhbGxldE9wdGlvbnMpOiBQcm9taXNlPFdhbGxldD47XG4gIHVwZGF0ZShwYXJhbXM6IFVwZGF0ZVNhZmVPcHRpb25zKTogUHJvbWlzZTxTYWZlRGF0YT47XG4gIC8vIHdob2xlLXNhZmU6IHZpZXcvYWRtaW4vc3BlbmQvZGFwcDsgc3BlbmQgb3BlbnMgYSBrZXkgc2hhcmUgKGFsc28gaG93IGEgc3BlbmRlciBzZXJ2aWNlcyBhXG4gIC8vIHNhZmVTaGFyZVJlcXVlc3RzIGVudHJ5IGluIFVNUyBvcmdzKVxuICBhZGRNZW1iZXIocGFyYW1zOiBBZGRTYWZlTWVtYmVyT3B0aW9ucyk6IFByb21pc2U8U2FmZURhdGE+O1xuICAvLyBzaGFyZSBPTkUgc2FmZSB3YWxsZXQsIG5vdCB0aGUgd2hvbGUgc2FmZVxuICBhZGRNZW1iZXJUb1dhbGxldChwYXJhbXM6IEFkZFNhZmVXYWxsZXRNZW1iZXJPcHRpb25zKTogUHJvbWlzZTxXYWxsZXRTaGFyZURhdGE+O1xuICBsaXN0U2hhcmVzKHBhcmFtcz86IHsgc3RhdGU/OiBTYWZlU2hhcmVTdGF0ZSB9KTogUHJvbWlzZTxTYWZlU2hhcmVEYXRhW10+O1xuICBhY2NlcHRTaGFyZShwYXJhbXM6IEFjY2VwdFNhZmVTaGFyZU9wdGlvbnMpOiBQcm9taXNlPFNhZmVTaGFyZURhdGE+O1xuICByZWdpc3RlclBhc3NrZXkocGFyYW1zOiBSZWdpc3RlclNhZmVQYXNza2V5T3B0aW9ucyk6IFByb21pc2U8UmVnaXN0ZXJTYWZlUGFzc2tleVJlc3BvbnNlPjtcbiAgcmVtb3ZlUGFzc2tleShwYXJhbXM6IFJlbW92ZVNhZmVQYXNza2V5T3B0aW9ucyk6IFByb21pc2U8dm9pZD47XG4gIGZyZWV6ZShwYXJhbXM/OiBGcmVlemVTYWZlQm9keSk6IFByb21pc2U8U2FmZURhdGE+O1xuICBhcmNoaXZlKCk6IFByb21pc2U8U2FmZURhdGE+O1xuICB0b0pTT04oKTogU2FmZURhdGE7XG59XG4iXX0=
@@ -0,0 +1,94 @@
1
+ /**
2
+ * @prettier
3
+ *
4
+ * @experimental The safe client surface is experimental and may change (including breaking
5
+ * changes) before the public release.
6
+ */
7
+ import type { InitializeSafeResponse } from '@bitgo/public-types';
8
+ import { FinalizeSafeOptions, InitializeSafeOptions } from './iSafe';
9
+ import { Safe } from './safe';
10
+ /**
11
+ * Options for safe creation.
12
+ *
13
+ * v1 targets the HOT custody model only: the multisig root user/backup keys are generated locally
14
+ * by the SDK, encrypted with `passphrase`, and registered on BitGo; the MPC roots run the standard
15
+ * hot ceremonies with the same passphrase. Self-managed cold keys and custodial safes are out of
16
+ * scope for v1.
17
+ * @experimental
18
+ */
19
+ export interface CreateSafeOptions {
20
+ label: string;
21
+ passphrase: string;
22
+ }
23
+ /**
24
+ * Handle returned by `initializeSafe`, threaded into the key ceremonies and finalize.
25
+ *
26
+ * `enabledRootSlots` is the server-decided (Flipt, evaluated once at initialize) set of root-key
27
+ * slots to generate; absent (older WP) falls back to all 4 slots.
28
+ * @experimental
29
+ */
30
+ export interface SafeCreationHandle {
31
+ safeId: string;
32
+ enabledRootSlots?: InitializeSafeResponse['enabledRootSlots'];
33
+ }
34
+ /**
35
+ * The minted root key ids produced by `createSafeKeys`, as ordered [user, backup, bitgo]
36
+ * triplets for the enabled slots — exactly the payload `finalizeSafe` consumes.
37
+ * @experimental
38
+ */
39
+ export type SafeKeys = FinalizeSafeOptions;
40
+ /**
41
+ * @experimental
42
+ */
43
+ export interface ListSafesOptions {
44
+ cursor?: string;
45
+ limit?: number;
46
+ }
47
+ /**
48
+ * @experimental
49
+ */
50
+ export interface GetSafeOptions {
51
+ id: string;
52
+ }
53
+ /**
54
+ * @experimental
55
+ */
56
+ export interface ISafes {
57
+ /**
58
+ * One-call convenience wrapper chaining the three creation phases:
59
+ * initialize → createSafeKeys (safeId-tagged ceremonies for the enabled root slots) → finalize.
60
+ * HOT custody only in v1.
61
+ * @experimental
62
+ */
63
+ generateSafe(params: CreateSafeOptions): Promise<Safe>;
64
+ /**
65
+ * Phase 1 — initialize a safe (metadata only, no key material). The server response is
66
+ * `{ id, status }` plus optional `enabledRootSlots` (no `label`/`enterpriseId`/`creator`/`users`/
67
+ * `createdAt` yet), so this returns that raw shape rather than a full `Safe`.
68
+ * @experimental
69
+ */
70
+ initializeSafe(params: InitializeSafeOptions): Promise<InitializeSafeResponse>;
71
+ /**
72
+ * Phase 2 — run the enabled root key ceremonies tagged with `safeId`; returns the minted key ids.
73
+ * @experimental
74
+ */
75
+ createSafeKeys(params: CreateSafeOptions & SafeCreationHandle): Promise<SafeKeys>;
76
+ /**
77
+ * Phase 3 — finalize a safe with the minted root key ids. Idempotent.
78
+ * @experimental
79
+ */
80
+ finalizeSafe(safeId: string, params: FinalizeSafeOptions): Promise<Safe>;
81
+ /**
82
+ * Archive a safe. Also the abandonment path for a stuck `initializing` safe.
83
+ * @experimental
84
+ */
85
+ archiveSafe(safeId: string): Promise<Safe>;
86
+ /** @experimental */
87
+ list(params?: ListSafesOptions): Promise<{
88
+ safes: Safe[];
89
+ nextCursor?: string;
90
+ }>;
91
+ /** @experimental */
92
+ get(params: GetSafeOptions): Promise<Safe>;
93
+ }
94
+ //# sourceMappingURL=iSafes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iSafes.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/safe/iSafes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AACrE,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B;;;;;;;;GAQG;AACH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;CAC/D;AAED;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG,mBAAmB,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;CACZ;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB;;;;;OAKG;IACH,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD;;;;;OAKG;IACH,cAAc,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC/E;;;OAGG;IACH,cAAc,CAAC,MAAM,EAAE,iBAAiB,GAAG,kBAAkB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClF;;;OAGG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzE;;;OAGG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,oBAAoB;IACpB,IAAI,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACjF,oBAAoB;IACpB,GAAG,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5C"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaVNhZmVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JpdGdvL3NhZmUvaVNhZmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwcmV0dGllclxuICpcbiAqIEBleHBlcmltZW50YWwgVGhlIHNhZmUgY2xpZW50IHN1cmZhY2UgaXMgZXhwZXJpbWVudGFsIGFuZCBtYXkgY2hhbmdlIChpbmNsdWRpbmcgYnJlYWtpbmdcbiAqIGNoYW5nZXMpIGJlZm9yZSB0aGUgcHVibGljIHJlbGVhc2UuXG4gKi9cbmltcG9ydCB0eXBlIHsgSW5pdGlhbGl6ZVNhZmVSZXNwb25zZSB9IGZyb20gJ0BiaXRnby9wdWJsaWMtdHlwZXMnO1xuaW1wb3J0IHsgRmluYWxpemVTYWZlT3B0aW9ucywgSW5pdGlhbGl6ZVNhZmVPcHRpb25zIH0gZnJvbSAnLi9pU2FmZSc7XG5pbXBvcnQgeyBTYWZlIH0gZnJvbSAnLi9zYWZlJztcblxuLyoqXG4gKiBPcHRpb25zIGZvciBzYWZlIGNyZWF0aW9uLlxuICpcbiAqIHYxIHRhcmdldHMgdGhlIEhPVCBjdXN0b2R5IG1vZGVsIG9ubHk6IHRoZSBtdWx0aXNpZyByb290IHVzZXIvYmFja3VwIGtleXMgYXJlIGdlbmVyYXRlZCBsb2NhbGx5XG4gKiBieSB0aGUgU0RLLCBlbmNyeXB0ZWQgd2l0aCBgcGFzc3BocmFzZWAsIGFuZCByZWdpc3RlcmVkIG9uIEJpdEdvOyB0aGUgTVBDIHJvb3RzIHJ1biB0aGUgc3RhbmRhcmRcbiAqIGhvdCBjZXJlbW9uaWVzIHdpdGggdGhlIHNhbWUgcGFzc3BocmFzZS4gU2VsZi1tYW5hZ2VkIGNvbGQga2V5cyBhbmQgY3VzdG9kaWFsIHNhZmVzIGFyZSBvdXQgb2ZcbiAqIHNjb3BlIGZvciB2MS5cbiAqIEBleHBlcmltZW50YWxcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVTYWZlT3B0aW9ucyB7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIHBhc3NwaHJhc2U6IHN0cmluZzsgLy8gZW5jcnlwdHMgdGhlIGxvY2FsbHktZ2VuZXJhdGVkIG11bHRpc2lnIHVzZXIvYmFja3VwIHBydnM7IHNoYXJlZCB3aXRoIHRoZSBNUEMgY2VyZW1vbmllc1xufVxuXG4vKipcbiAqIEhhbmRsZSByZXR1cm5lZCBieSBgaW5pdGlhbGl6ZVNhZmVgLCB0aHJlYWRlZCBpbnRvIHRoZSBrZXkgY2VyZW1vbmllcyBhbmQgZmluYWxpemUuXG4gKlxuICogYGVuYWJsZWRSb290U2xvdHNgIGlzIHRoZSBzZXJ2ZXItZGVjaWRlZCAoRmxpcHQsIGV2YWx1YXRlZCBvbmNlIGF0IGluaXRpYWxpemUpIHNldCBvZiByb290LWtleVxuICogc2xvdHMgdG8gZ2VuZXJhdGU7IGFic2VudCAob2xkZXIgV1ApIGZhbGxzIGJhY2sgdG8gYWxsIDQgc2xvdHMuXG4gKiBAZXhwZXJpbWVudGFsXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2FmZUNyZWF0aW9uSGFuZGxlIHtcbiAgc2FmZUlkOiBzdHJpbmc7XG4gIGVuYWJsZWRSb290U2xvdHM/OiBJbml0aWFsaXplU2FmZVJlc3BvbnNlWydlbmFibGVkUm9vdFNsb3RzJ107XG59XG5cbi8qKlxuICogVGhlIG1pbnRlZCByb290IGtleSBpZHMgcHJvZHVjZWQgYnkgYGNyZWF0ZVNhZmVLZXlzYCwgYXMgb3JkZXJlZCBbdXNlciwgYmFja3VwLCBiaXRnb11cbiAqIHRyaXBsZXRzIGZvciB0aGUgZW5hYmxlZCBzbG90cyDigJQgZXhhY3RseSB0aGUgcGF5bG9hZCBgZmluYWxpemVTYWZlYCBjb25zdW1lcy5cbiAqIEBleHBlcmltZW50YWxcbiAqL1xuZXhwb3J0IHR5cGUgU2FmZUtleXMgPSBGaW5hbGl6ZVNhZmVPcHRpb25zO1xuXG4vKipcbiAqIEBleHBlcmltZW50YWxcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMaXN0U2FmZXNPcHRpb25zIHtcbiAgY3Vyc29yPzogc3RyaW5nOyAvLyBvcGFxdWUgY3Vyc29yIGZyb20gYSBwcmV2aW91cyByZXNwb25zZSdzIG5leHRDdXJzb3JcbiAgbGltaXQ/OiBudW1iZXI7XG59XG5cbi8qKlxuICogQGV4cGVyaW1lbnRhbFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEdldFNhZmVPcHRpb25zIHtcbiAgaWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBAZXhwZXJpbWVudGFsXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSVNhZmVzIHtcbiAgLyoqXG4gICAqIE9uZS1jYWxsIGNvbnZlbmllbmNlIHdyYXBwZXIgY2hhaW5pbmcgdGhlIHRocmVlIGNyZWF0aW9uIHBoYXNlczpcbiAgICogaW5pdGlhbGl6ZSDihpIgY3JlYXRlU2FmZUtleXMgKHNhZmVJZC10YWdnZWQgY2VyZW1vbmllcyBmb3IgdGhlIGVuYWJsZWQgcm9vdCBzbG90cykg4oaSIGZpbmFsaXplLlxuICAgKiBIT1QgY3VzdG9keSBvbmx5IGluIHYxLlxuICAgKiBAZXhwZXJpbWVudGFsXG4gICAqL1xuICBnZW5lcmF0ZVNhZmUocGFyYW1zOiBDcmVhdGVTYWZlT3B0aW9ucyk6IFByb21pc2U8U2FmZT47XG4gIC8qKlxuICAgKiBQaGFzZSAxIOKAlCBpbml0aWFsaXplIGEgc2FmZSAobWV0YWRhdGEgb25seSwgbm8ga2V5IG1hdGVyaWFsKS4gVGhlIHNlcnZlciByZXNwb25zZSBpc1xuICAgKiBgeyBpZCwgc3RhdHVzIH1gIHBsdXMgb3B0aW9uYWwgYGVuYWJsZWRSb290U2xvdHNgIChubyBgbGFiZWxgL2BlbnRlcnByaXNlSWRgL2BjcmVhdG9yYC9gdXNlcnNgL1xuICAgKiBgY3JlYXRlZEF0YCB5ZXQpLCBzbyB0aGlzIHJldHVybnMgdGhhdCByYXcgc2hhcGUgcmF0aGVyIHRoYW4gYSBmdWxsIGBTYWZlYC5cbiAgICogQGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgaW5pdGlhbGl6ZVNhZmUocGFyYW1zOiBJbml0aWFsaXplU2FmZU9wdGlvbnMpOiBQcm9taXNlPEluaXRpYWxpemVTYWZlUmVzcG9uc2U+O1xuICAvKipcbiAgICogUGhhc2UgMiDigJQgcnVuIHRoZSBlbmFibGVkIHJvb3Qga2V5IGNlcmVtb25pZXMgdGFnZ2VkIHdpdGggYHNhZmVJZGA7IHJldHVybnMgdGhlIG1pbnRlZCBrZXkgaWRzLlxuICAgKiBAZXhwZXJpbWVudGFsXG4gICAqL1xuICBjcmVhdGVTYWZlS2V5cyhwYXJhbXM6IENyZWF0ZVNhZmVPcHRpb25zICYgU2FmZUNyZWF0aW9uSGFuZGxlKTogUHJvbWlzZTxTYWZlS2V5cz47XG4gIC8qKlxuICAgKiBQaGFzZSAzIOKAlCBmaW5hbGl6ZSBhIHNhZmUgd2l0aCB0aGUgbWludGVkIHJvb3Qga2V5IGlkcy4gSWRlbXBvdGVudC5cbiAgICogQGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgZmluYWxpemVTYWZlKHNhZmVJZDogc3RyaW5nLCBwYXJhbXM6IEZpbmFsaXplU2FmZU9wdGlvbnMpOiBQcm9taXNlPFNhZmU+O1xuICAvKipcbiAgICogQXJjaGl2ZSBhIHNhZmUuIEFsc28gdGhlIGFiYW5kb25tZW50IHBhdGggZm9yIGEgc3R1Y2sgYGluaXRpYWxpemluZ2Agc2FmZS5cbiAgICogQGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgYXJjaGl2ZVNhZmUoc2FmZUlkOiBzdHJpbmcpOiBQcm9taXNlPFNhZmU+O1xuICAvKiogQGV4cGVyaW1lbnRhbCAqL1xuICBsaXN0KHBhcmFtcz86IExpc3RTYWZlc09wdGlvbnMpOiBQcm9taXNlPHsgc2FmZXM6IFNhZmVbXTsgbmV4dEN1cnNvcj86IHN0cmluZyB9PjtcbiAgLyoqIEBleHBlcmltZW50YWwgKi9cbiAgZ2V0KHBhcmFtczogR2V0U2FmZU9wdGlvbnMpOiBQcm9taXNlPFNhZmU+O1xufVxuIl19
@@ -0,0 +1,8 @@
1
+ export * from './derivableEd25519Pub';
2
+ export * from './iSafe';
3
+ export * from './iSafes';
4
+ export * from './recovery';
5
+ export * from './safe';
6
+ export * from './safes';
7
+ export * from '@bitgo-beta/sdk-lib-safes';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/safe/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,2BAA2B,CAAC"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./derivableEd25519Pub"), exports);
18
+ __exportStar(require("./iSafe"), exports);
19
+ __exportStar(require("./iSafes"), exports);
20
+ __exportStar(require("./recovery"), exports);
21
+ __exportStar(require("./safe"), exports);
22
+ __exportStar(require("./safes"), exports);
23
+ __exportStar(require("@bitgo-beta/sdk-lib-safes"), exports);
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vc2FmZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsd0RBQXNDO0FBQ3RDLDBDQUF3QjtBQUN4QiwyQ0FBeUI7QUFDekIsNkNBQTJCO0FBQzNCLHlDQUF1QjtBQUN2QiwwQ0FBd0I7QUFDeEIsNERBQTBDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kZXJpdmFibGVFZDI1NTE5UHViJztcbmV4cG9ydCAqIGZyb20gJy4vaVNhZmUnO1xuZXhwb3J0ICogZnJvbSAnLi9pU2FmZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9yZWNvdmVyeSc7XG5leHBvcnQgKiBmcm9tICcuL3NhZmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zYWZlcyc7XG5leHBvcnQgKiBmcm9tICdAYml0Z28tYmV0YS9zZGstbGliLXNhZmVzJztcbiJdfQ==
@@ -0,0 +1,92 @@
1
+ /**
2
+ * @prettier
3
+ *
4
+ * @experimental WRW-facing safe recovery entry points.
5
+ */
6
+ import { Buffer } from 'buffer';
7
+ import type { RootKeyType } from '@bitgo/public-types';
8
+ import { BitGoBase } from '../bitgoBase';
9
+ export type DecryptedMpcSafeRoot = {
10
+ signing: Buffer;
11
+ vrf: Buffer;
12
+ };
13
+ export type OnchainSafeRoot = {
14
+ user: string;
15
+ backup: string;
16
+ bitgo: string;
17
+ };
18
+ export type MpcSafeRoot = {
19
+ user: DecryptedMpcSafeRoot;
20
+ backup: DecryptedMpcSafeRoot;
21
+ bitgo: string;
22
+ };
23
+ export type Secp256k1MultisigChildKeys = {
24
+ user: {
25
+ prv: string;
26
+ pub: string;
27
+ };
28
+ backup: {
29
+ prv: string;
30
+ pub: string;
31
+ };
32
+ bitgo: {
33
+ pub: string;
34
+ };
35
+ };
36
+ export type EcdsaMpcChildKeys = {
37
+ commonKeychain: string;
38
+ user: string;
39
+ backup: string;
40
+ };
41
+ export type DerivedSafeWalletKeys = {
42
+ slot: 'secp256k1Multisig';
43
+ path: string;
44
+ keys: Secp256k1MultisigChildKeys;
45
+ } | {
46
+ slot: 'ecdsaMpc';
47
+ path: string;
48
+ keys: EcdsaMpcChildKeys;
49
+ };
50
+ export type SafeRecoverKeyParams = {
51
+ userKey: string;
52
+ backupKey: string;
53
+ bitgoKey: string;
54
+ walletPassphrase?: string;
55
+ };
56
+ export type DecryptedSafeRoots = {
57
+ secp256k1Multisig: OnchainSafeRoot;
58
+ ed25519Multisig: OnchainSafeRoot;
59
+ ecdsaMpc: MpcSafeRoot;
60
+ eddsaMpc: MpcSafeRoot;
61
+ };
62
+ export declare function decryptSafeKeycard(params: {
63
+ bitgo: BitGoBase;
64
+ userKeyBox: string;
65
+ backupKeyBox: string;
66
+ bitgoKeyBox: string;
67
+ password: string;
68
+ }): Promise<DecryptedSafeRoots>;
69
+ /**
70
+ * Derives a Safe wallet's child keys at the BIP44 path for a given slot and account.
71
+ * Only `secp256k1Multisig` (slot 1) is supported for now; the remaining slots throw
72
+ * until their derivation arms land (WCN-2736/WCN-2737/WCN-2894).
73
+ */
74
+ export declare function deriveSafeWalletKeys(params: {
75
+ coin: string;
76
+ slot: RootKeyType;
77
+ account: number;
78
+ roots: DecryptedSafeRoots;
79
+ }): Promise<DerivedSafeWalletKeys>;
80
+ /**
81
+ * Builds the key fields `coin.recover()` expects from derived Safe child keys.
82
+ * Only `secp256k1Multisig` (slot 1) is supported for now. Signed mode re-encrypts the
83
+ * child xprvs under a fresh ephemeral passphrase (v1/SJCL); unsigned mode returns pubs.
84
+ */
85
+ export declare function buildSafeRecoverKeyParams(params: {
86
+ bitgo: BitGoBase;
87
+ coin: string;
88
+ slot: RootKeyType;
89
+ keys: Secp256k1MultisigChildKeys;
90
+ mode: 'signed' | 'unsigned';
91
+ }): Promise<SafeRecoverKeyParams>;
92
+ //# sourceMappingURL=recovery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recovery.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/safe/recovery.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIhC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAIzC,MAAM,MAAM,oBAAoB,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpE,MAAM,MAAM,eAAe,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAC9E,MAAM,MAAM,WAAW,GAAG;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,MAAM,EAAE,oBAAoB,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEtG,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IACnC,MAAM,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IACrC,KAAK,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAC7B;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,0BAA0B,CAAA;CAAE,GAC7E;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,iBAAiB,CAAA;CAAE,CAAC;AAEhE,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,iBAAiB,EAAE,eAAe,CAAC;IACnC,eAAe,EAAE,eAAe,CAAC;IACjC,QAAQ,EAAE,WAAW,CAAC;IACtB,QAAQ,EAAE,WAAW,CAAC;CACvB,CAAC;AAEF,wBAAsB,kBAAkB,CAAC,MAAM,EAAE;IAC/C,KAAK,EAAE,SAAS,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA6C9B;AAUD;;;;GAIG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,kBAAkB,CAAC;CAC3B,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAmDjC;AAED;;;;GAIG;AACH,wBAAsB,yBAAyB,CAAC,MAAM,EAAE;IACtD,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,0BAA0B,CAAC;IACjC,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;CAC7B,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAgChC"}
@@ -0,0 +1,148 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.decryptSafeKeycard = decryptSafeKeycard;
4
+ exports.deriveSafeWalletKeys = deriveSafeWalletKeys;
5
+ exports.buildSafeRecoverKeyParams = buildSafeRecoverKeyParams;
6
+ const crypto_1 = require("crypto");
7
+ const utxo_lib_1 = require("@bitgo-beta/utxo-lib");
8
+ const statics_1 = require("@bitgo-beta/statics");
9
+ const sdk_lib_safes_1 = require("@bitgo-beta/sdk-lib-safes");
10
+ const sdk_lib_mpc_1 = require("@bitgo-beta/sdk-lib-mpc");
11
+ const errors_1 = require("../errors");
12
+ const keyShareEnvelope_1 = require("../utils/tss/keyShareEnvelope");
13
+ async function decryptSafeKeycard(params) {
14
+ const { bitgo, userKeyBox, backupKeyBox, bitgoKeyBox, password } = params;
15
+ const userRoots = (0, sdk_lib_safes_1.parseSafeKeycardBox)(userKeyBox);
16
+ const backupRoots = (0, sdk_lib_safes_1.parseSafeKeycardBox)(backupKeyBox);
17
+ const bitgoRoots = (0, sdk_lib_safes_1.parseSafeKeycardBox)(bitgoKeyBox);
18
+ const decryptRoot = async (root) => {
19
+ try {
20
+ return await bitgo.decrypt({ input: root, password });
21
+ }
22
+ catch (e) {
23
+ throw new errors_1.IncorrectPasswordError('unable to decrypt the safe keycard with the provided password', e);
24
+ }
25
+ };
26
+ const unwrapMpcRoot = (decrypted) => {
27
+ try {
28
+ return (0, keyShareEnvelope_1.parseSafeMpcKeyEnvelopes)(decrypted);
29
+ }
30
+ catch (e) {
31
+ throw new errors_1.IncorrectPasswordError('unable to decrypt the safe keycard with the provided password', e);
32
+ }
33
+ };
34
+ return {
35
+ secp256k1Multisig: {
36
+ user: await decryptRoot(userRoots.secp256k1Multisig),
37
+ backup: await decryptRoot(backupRoots.secp256k1Multisig),
38
+ bitgo: bitgoRoots.secp256k1Multisig,
39
+ },
40
+ ed25519Multisig: {
41
+ user: await decryptRoot(userRoots.ed25519Multisig),
42
+ backup: await decryptRoot(backupRoots.ed25519Multisig),
43
+ bitgo: bitgoRoots.ed25519Multisig,
44
+ },
45
+ ecdsaMpc: {
46
+ user: unwrapMpcRoot(await decryptRoot(userRoots.ecdsaMpc)),
47
+ backup: unwrapMpcRoot(await decryptRoot(backupRoots.ecdsaMpc)),
48
+ bitgo: bitgoRoots.ecdsaMpc,
49
+ },
50
+ eddsaMpc: {
51
+ user: unwrapMpcRoot(await decryptRoot(userRoots.eddsaMpc)),
52
+ backup: unwrapMpcRoot(await decryptRoot(backupRoots.eddsaMpc)),
53
+ bitgo: bitgoRoots.eddsaMpc,
54
+ },
55
+ };
56
+ }
57
+ function buildSafeUserPath(coinType, slotOrdinal, account) {
58
+ return `m/44'/${coinType}'/${slotOrdinal}'/${account}'`;
59
+ }
60
+ function buildSafeCosignerPath(coinType, slotOrdinal, account) {
61
+ return `m/44/${coinType}/${slotOrdinal}/${account}`;
62
+ }
63
+ /**
64
+ * Derives a Safe wallet's child keys at the BIP44 path for a given slot and account.
65
+ * Only `secp256k1Multisig` (slot 1) is supported for now; the remaining slots throw
66
+ * until their derivation arms land (WCN-2736/WCN-2737/WCN-2894).
67
+ */
68
+ async function deriveSafeWalletKeys(params) {
69
+ if (!Number.isInteger(params.account) || params.account < 0 || params.account > statics_1.MAX_BIP32_INDEX) {
70
+ throw new Error(`deriveSafeWalletKeys: invalid account '${params.account}'`);
71
+ }
72
+ const coinType = statics_1.coins.get(params.coin).bip44CoinType;
73
+ if (coinType === undefined) {
74
+ throw new Error(`Coin '${params.coin}' has no BIP44 coin type and cannot derive a safe child`);
75
+ }
76
+ const slotOrdinal = statics_1.SAFE_ROOT_SLOT_ORDINALS[params.slot];
77
+ const { account, roots } = params;
78
+ if (params.slot === 'secp256k1Multisig') {
79
+ const root = roots.secp256k1Multisig;
80
+ const user = utxo_lib_1.bip32.fromBase58(root.user).derivePath(buildSafeUserPath(coinType, slotOrdinal, account));
81
+ const backup = utxo_lib_1.bip32.fromBase58(root.backup).derivePath(buildSafeCosignerPath(coinType, slotOrdinal, account));
82
+ const bitgo = utxo_lib_1.bip32.fromBase58(root.bitgo).derivePath(buildSafeCosignerPath(coinType, slotOrdinal, account));
83
+ if (!user.privateKey || !backup.privateKey) {
84
+ throw new Error('deriveSafeWalletKeys: user and backup roots must be private (xprv)');
85
+ }
86
+ if (bitgo.privateKey) {
87
+ throw new Error('deriveSafeWalletKeys: bitgo root must be public (xpub)');
88
+ }
89
+ return {
90
+ slot: 'secp256k1Multisig',
91
+ path: buildSafeUserPath(coinType, slotOrdinal, account),
92
+ keys: {
93
+ user: { prv: user.toBase58(), pub: user.neutered().toBase58() },
94
+ backup: { prv: backup.toBase58(), pub: backup.neutered().toBase58() },
95
+ bitgo: { pub: bitgo.neutered().toBase58() },
96
+ },
97
+ };
98
+ }
99
+ if (params.slot === 'ecdsaMpc') {
100
+ const { commonKeychain, userChild, backupChild } = await sdk_lib_mpc_1.DklsVrfUtils.deriveSafeEcdsaMpcChild({
101
+ userRoot: roots.ecdsaMpc.user,
102
+ backupRoot: roots.ecdsaMpc.backup,
103
+ account,
104
+ coinType,
105
+ });
106
+ return {
107
+ slot: 'ecdsaMpc',
108
+ path: buildSafeUserPath(coinType, slotOrdinal, account),
109
+ keys: { commonKeychain, user: userChild, backup: backupChild },
110
+ };
111
+ }
112
+ throw new Error(`deriveSafeWalletKeys: slot '${params.slot}' is not supported yet`);
113
+ }
114
+ /**
115
+ * Builds the key fields `coin.recover()` expects from derived Safe child keys.
116
+ * Only `secp256k1Multisig` (slot 1) is supported for now. Signed mode re-encrypts the
117
+ * child xprvs under a fresh ephemeral passphrase (v1/SJCL); unsigned mode returns pubs.
118
+ */
119
+ async function buildSafeRecoverKeyParams(params) {
120
+ if (params.slot !== 'secp256k1Multisig') {
121
+ throw new Error(`buildSafeRecoverKeyParams: slot '${params.slot}' is not supported yet`);
122
+ }
123
+ const { bitgo, keys, mode } = params;
124
+ if (mode === 'unsigned') {
125
+ return {
126
+ userKey: keys.user.pub,
127
+ backupKey: keys.backup.pub,
128
+ bitgoKey: keys.bitgo.pub,
129
+ };
130
+ }
131
+ const userPrv = utxo_lib_1.bip32.fromBase58(keys.user.prv);
132
+ const backupPrv = utxo_lib_1.bip32.fromBase58(keys.backup.prv);
133
+ if (!userPrv.privateKey || !backupPrv.privateKey) {
134
+ throw new Error('buildSafeRecoverKeyParams: keys.user.prv and keys.backup.prv must be private xprvs');
135
+ }
136
+ const walletPassphrase = (0, crypto_1.randomBytes)(32).toString('hex');
137
+ const [userKey, backupKey] = await Promise.all([
138
+ bitgo.encrypt({ input: keys.user.prv, password: walletPassphrase, encryptionVersion: 1 }),
139
+ bitgo.encrypt({ input: keys.backup.prv, password: walletPassphrase, encryptionVersion: 1 }),
140
+ ]);
141
+ return {
142
+ userKey,
143
+ backupKey,
144
+ bitgoKey: keys.bitgo.pub,
145
+ walletPassphrase,
146
+ };
147
+ }
148
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3ZlcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vc2FmZS9yZWNvdmVyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQW1EQSxnREFtREM7QUFlRCxvREF3REM7QUFPRCw4REFzQ0M7QUFwTkQsbUNBQXFDO0FBQ3JDLG1EQUE2QztBQUM3QyxpREFBc0Y7QUFFdEYsNkRBQWdFO0FBQ2hFLHlEQUF1RDtBQUV2RCxzQ0FBbUQ7QUFDbkQsb0VBQXlFO0FBcUNsRSxLQUFLLFVBQVUsa0JBQWtCLENBQUMsTUFNeEM7SUFDQyxNQUFNLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxHQUFHLE1BQU0sQ0FBQztJQUUxRSxNQUFNLFNBQVMsR0FBRyxJQUFBLG1DQUFtQixFQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2xELE1BQU0sV0FBVyxHQUFHLElBQUEsbUNBQW1CLEVBQUMsWUFBWSxDQUFDLENBQUM7SUFDdEQsTUFBTSxVQUFVLEdBQUcsSUFBQSxtQ0FBbUIsRUFBQyxXQUFXLENBQUMsQ0FBQztJQUVwRCxNQUFNLFdBQVcsR0FBRyxLQUFLLEVBQUUsSUFBWSxFQUFtQixFQUFFO1FBQzFELElBQUksQ0FBQztZQUNILE9BQU8sTUFBTSxLQUFLLENBQUMsT0FBTyxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ3hELENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsTUFBTSxJQUFJLCtCQUFzQixDQUFDLCtEQUErRCxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3ZHLENBQUM7SUFDSCxDQUFDLENBQUM7SUFFRixNQUFNLGFBQWEsR0FBRyxDQUFDLFNBQWlCLEVBQXdCLEVBQUU7UUFDaEUsSUFBSSxDQUFDO1lBQ0gsT0FBTyxJQUFBLDJDQUF3QixFQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzdDLENBQUM7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RCxNQUFNLE9BQU8sR0FBRyxnQkFBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2hELE1BQU0sU0FBUyxHQUFHLGdCQUFLLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDcEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDakQsTUFBTSxJQUFJLEtBQUssQ0FBQyxvRkFBb0YsQ0FBQyxDQUFDO0lBQ3hHLENBQUM7SUFFRCxNQUFNLGdCQUFnQixHQUFHLElBQUEsb0JBQVcsRUFBQyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekQsTUFBTSxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsR0FBRyxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQUM7UUFDN0MsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDekYsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxFQUFFLENBQUM7S0FDNUYsQ0FBQyxDQUFDO0lBRUgsT0FBTztRQUNMLE9BQU87UUFDUCxTQUFTO1FBQ1QsUUFBUSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRztRQUN4QixnQkFBZ0I7S0FDakIsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwcmV0dGllclxuICpcbiAqIEBleHBlcmltZW50YWwgV1JXLWZhY2luZyBzYWZlIHJlY292ZXJ5IGVudHJ5IHBvaW50cy5cbiAqL1xuaW1wb3J0IHsgQnVmZmVyIH0gZnJvbSAnYnVmZmVyJztcbmltcG9ydCB7IHJhbmRvbUJ5dGVzIH0gZnJvbSAnY3J5cHRvJztcbmltcG9ydCB7IGJpcDMyIH0gZnJvbSAnQGJpdGdvLWJldGEvdXR4by1saWInO1xuaW1wb3J0IHsgY29pbnMsIE1BWF9CSVAzMl9JTkRFWCwgU0FGRV9ST09UX1NMT1RfT1JESU5BTFMgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB0eXBlIHsgUm9vdEtleVR5cGUgfSBmcm9tICdAYml0Z28vcHVibGljLXR5cGVzJztcbmltcG9ydCB7IHBhcnNlU2FmZUtleWNhcmRCb3ggfSBmcm9tICdAYml0Z28tYmV0YS9zZGstbGliLXNhZmVzJztcbmltcG9ydCB7IERrbHNWcmZVdGlscyB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1saWItbXBjJztcbmltcG9ydCB7IEJpdEdvQmFzZSB9IGZyb20gJy4uL2JpdGdvQmFzZSc7XG5pbXBvcnQgeyBJbmNvcnJlY3RQYXNzd29yZEVycm9yIH0gZnJvbSAnLi4vZXJyb3JzJztcbmltcG9ydCB7IHBhcnNlU2FmZU1wY0tleUVudmVsb3BlcyB9IGZyb20gJy4uL3V0aWxzL3Rzcy9rZXlTaGFyZUVudmVsb3BlJztcblxuZXhwb3J0IHR5cGUgRGVjcnlwdGVkTXBjU2FmZVJvb3QgPSB7IHNpZ25pbmc6IEJ1ZmZlcjsgdnJmOiBCdWZmZXIgfTtcblxuZXhwb3J0IHR5cGUgT25jaGFpblNhZmVSb290ID0geyB1c2VyOiBzdHJpbmc7IGJhY2t1cDogc3RyaW5nOyBiaXRnbzogc3RyaW5nIH07XG5leHBvcnQgdHlwZSBNcGNTYWZlUm9vdCA9IHsgdXNlcjogRGVjcnlwdGVkTXBjU2FmZVJvb3Q7IGJhY2t1cDogRGVjcnlwdGVkTXBjU2FmZVJvb3Q7IGJpdGdvOiBzdHJpbmcgfTtcblxuZXhwb3J0IHR5cGUgU2VjcDI1NmsxTXVsdGlzaWdDaGlsZEtleXMgPSB7XG4gIHVzZXI6IHsgcHJ2OiBzdHJpbmc7IHB1Yjogc3RyaW5nIH07XG4gIGJhY2t1cDogeyBwcnY6IHN0cmluZzsgcHViOiBzdHJpbmcgfTtcbiAgYml0Z286IHsgcHViOiBzdHJpbmcgfTtcbn07XG5cbmV4cG9ydCB0eXBlIEVjZHNhTXBjQ2hpbGRLZXlzID0ge1xuICBjb21tb25LZXljaGFpbjogc3RyaW5nO1xuICB1c2VyOiBzdHJpbmc7XG4gIGJhY2t1cDogc3RyaW5nO1xufTtcblxuZXhwb3J0IHR5cGUgRGVyaXZlZFNhZmVXYWxsZXRLZXlzID1cbiAgfCB7IHNsb3Q6ICdzZWNwMjU2azFNdWx0aXNpZyc7IHBhdGg6IHN0cmluZzsga2V5czogU2VjcDI1NmsxTXVsdGlzaWdDaGlsZEtleXMgfVxuICB8IHsgc2xvdDogJ2VjZHNhTXBjJzsgcGF0aDogc3RyaW5nOyBrZXlzOiBFY2RzYU1wY0NoaWxkS2V5cyB9O1xuXG5leHBvcnQgdHlwZSBTYWZlUmVjb3ZlcktleVBhcmFtcyA9IHtcbiAgdXNlcktleTogc3RyaW5nO1xuICBiYWNrdXBLZXk6IHN0cmluZztcbiAgYml0Z29LZXk6IHN0cmluZztcbiAgd2FsbGV0UGFzc3BocmFzZT86IHN0cmluZztcbn07XG5cbmV4cG9ydCB0eXBlIERlY3J5cHRlZFNhZmVSb290cyA9IHtcbiAgc2VjcDI1NmsxTXVsdGlzaWc6IE9uY2hhaW5TYWZlUm9vdDtcbiAgZWQyNTUxOU11bHRpc2lnOiBPbmNoYWluU2FmZVJvb3Q7XG4gIGVjZHNhTXBjOiBNcGNTYWZlUm9vdDtcbiAgZWRkc2FNcGM6IE1wY1NhZmVSb290O1xufTtcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlY3J5cHRTYWZlS2V5Y2FyZChwYXJhbXM6IHtcbiAgYml0Z286IEJpdEdvQmFzZTtcbiAgdXNlcktleUJveDogc3RyaW5nO1xuICBiYWNrdXBLZXlCb3g6IHN0cmluZztcbiAgYml0Z29LZXlCb3g6IHN0cmluZztcbiAgcGFzc3dvcmQ6IHN0cmluZztcbn0pOiBQcm9taXNlPERlY3J5cHRlZFNhZmVSb290cz4ge1xuICBjb25zdCB7IGJpdGdvLCB1c2VyS2V5Qm94LCBiYWNrdXBLZXlCb3gsIGJpdGdvS2V5Qm94LCBwYXNzd29yZCB9ID0gcGFyYW1zO1xuXG4gIGNvbnN0IHVzZXJSb290cyA9IHBhcnNlU2FmZUtleWNhcmRCb3godXNlcktleUJveCk7XG4gIGNvbnN0IGJhY2t1cFJvb3RzID0gcGFyc2VTYWZlS2V5Y2FyZEJveChiYWNrdXBLZXlCb3gpO1xuICBjb25zdCBiaXRnb1Jvb3RzID0gcGFyc2VTYWZlS2V5Y2FyZEJveChiaXRnb0tleUJveCk7XG5cbiAgY29uc3QgZGVjcnlwdFJvb3QgPSBhc3luYyAocm9vdDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+ID0+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IGJpdGdvLmRlY3J5cHQoeyBpbnB1dDogcm9vdCwgcGFzc3dvcmQgfSk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEluY29ycmVjdFBhc3N3b3JkRXJyb3IoJ3VuYWJsZSB0byBkZWNyeXB0IHRoZSBzYWZlIGtleWNhcmQgd2l0aCB0aGUgcHJvdmlkZWQgcGFzc3dvcmQnLCBlKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgdW53cmFwTXBjUm9vdCA9IChkZWNyeXB0ZWQ6IHN0cmluZyk6IERlY3J5cHRlZE1wY1NhZmVSb290ID0+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIHBhcnNlU2FmZU1wY0tleUVudmVsb3BlcyhkZWNyeXB0ZWQpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBJbmNvcnJlY3RQYXNzd29yZEVycm9yKCd1bmFibGUgdG8gZGVjcnlwdCB0aGUgc2FmZSBrZXljYXJkIHdpdGggdGhlIHByb3ZpZGVkIHBhc3N3b3JkJywgZSk7XG4gICAgfVxuICB9O1xuXG4gIHJldHVybiB7XG4gICAgc2VjcDI1NmsxTXVsdGlzaWc6IHtcbiAgICAgIHVzZXI6IGF3YWl0IGRlY3J5cHRSb290KHVzZXJSb290cy5zZWNwMjU2azFNdWx0aXNpZyksXG4gICAgICBiYWNrdXA6IGF3YWl0IGRlY3J5cHRSb290KGJhY2t1cFJvb3RzLnNlY3AyNTZrMU11bHRpc2lnKSxcbiAgICAgIGJpdGdvOiBiaXRnb1Jvb3RzLnNlY3AyNTZrMU11bHRpc2lnLFxuICAgIH0sXG4gICAgZWQyNTUxOU11bHRpc2lnOiB7XG4gICAgICB1c2VyOiBhd2FpdCBkZWNyeXB0Um9vdCh1c2VyUm9vdHMuZWQyNTUxOU11bHRpc2lnKSxcbiAgICAgIGJhY2t1cDogYXdhaXQgZGVjcnlwdFJvb3QoYmFja3VwUm9vdHMuZWQyNTUxOU11bHRpc2lnKSxcbiAgICAgIGJpdGdvOiBiaXRnb1Jvb3RzLmVkMjU1MTlNdWx0aXNpZyxcbiAgICB9LFxuICAgIGVjZHNhTXBjOiB7XG4gICAgICB1c2VyOiB1bndyYXBNcGNSb290KGF3YWl0IGRlY3J5cHRSb290KHVzZXJSb290cy5lY2RzYU1wYykpLFxuICAgICAgYmFja3VwOiB1bndyYXBNcGNSb290KGF3YWl0IGRlY3J5cHRSb290KGJhY2t1cFJvb3RzLmVjZHNhTXBjKSksXG4gICAgICBiaXRnbzogYml0Z29Sb290cy5lY2RzYU1wYyxcbiAgICB9LFxuICAgIGVkZHNhTXBjOiB7XG4gICAgICB1c2VyOiB1bndyYXBNcGNSb290KGF3YWl0IGRlY3J5cHRSb290KHVzZXJSb290cy5lZGRzYU1wYykpLFxuICAgICAgYmFja3VwOiB1bndyYXBNcGNSb290KGF3YWl0IGRlY3J5cHRSb290KGJhY2t1cFJvb3RzLmVkZHNhTXBjKSksXG4gICAgICBiaXRnbzogYml0Z29Sb290cy5lZGRzYU1wYyxcbiAgICB9LFxuICB9O1xufVxuXG5mdW5jdGlvbiBidWlsZFNhZmVVc2VyUGF0aChjb2luVHlwZTogbnVtYmVyLCBzbG90T3JkaW5hbDogbnVtYmVyLCBhY2NvdW50OiBudW1iZXIpOiBzdHJpbmcge1xuICByZXR1cm4gYG0vNDQnLyR7Y29pblR5cGV9Jy8ke3Nsb3RPcmRpbmFsfScvJHthY2NvdW50fSdgO1xufVxuXG5mdW5jdGlvbiBidWlsZFNhZmVDb3NpZ25lclBhdGgoY29pblR5cGU6IG51bWJlciwgc2xvdE9yZGluYWw6IG51bWJlciwgYWNjb3VudDogbnVtYmVyKTogc3RyaW5nIHtcbiAgcmV0dXJuIGBtLzQ0LyR7Y29pblR5cGV9LyR7c2xvdE9yZGluYWx9LyR7YWNjb3VudH1gO1xufVxuXG4vKipcbiAqIERlcml2ZXMgYSBTYWZlIHdhbGxldCdzIGNoaWxkIGtleXMgYXQgdGhlIEJJUDQ0IHBhdGggZm9yIGEgZ2l2ZW4gc2xvdCBhbmQgYWNjb3VudC5cbiAqIE9ubHkgYHNlY3AyNTZrMU11bHRpc2lnYCAoc2xvdCAxKSBpcyBzdXBwb3J0ZWQgZm9yIG5vdzsgdGhlIHJlbWFpbmluZyBzbG90cyB0aHJvd1xuICogdW50aWwgdGhlaXIgZGVyaXZhdGlvbiBhcm1zIGxhbmQgKFdDTi0yNzM2L1dDTi0yNzM3L1dDTi0yODk0KS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlcml2ZVNhZmVXYWxsZXRLZXlzKHBhcmFtczoge1xuICBjb2luOiBzdHJpbmc7XG4gIHNsb3Q6IFJvb3RLZXlUeXBlO1xuICBhY2NvdW50OiBudW1iZXI7XG4gIHJvb3RzOiBEZWNyeXB0ZWRTYWZlUm9vdHM7XG59KTogUHJvbWlzZTxEZXJpdmVkU2FmZVdhbGxldEtleXM+IHtcbiAgaWYgKCFOdW1iZXIuaXNJbnRlZ2VyKHBhcmFtcy5hY2NvdW50KSB8fCBwYXJhbXMuYWNjb3VudCA8IDAgfHwgcGFyYW1zLmFjY291bnQgPiBNQVhfQklQMzJfSU5ERVgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYGRlcml2ZVNhZmVXYWxsZXRLZXlzOiBpbnZhbGlkIGFjY291bnQgJyR7cGFyYW1zLmFjY291bnR9J2ApO1xuICB9XG5cbiAgY29uc3QgY29pblR5cGUgPSBjb2lucy5nZXQocGFyYW1zLmNvaW4pLmJpcDQ0Q29pblR5cGU7XG4gIGlmIChjb2luVHlwZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBDb2luICcke3BhcmFtcy5jb2lufScgaGFzIG5vIEJJUDQ0IGNvaW4gdHlwZSBhbmQgY2Fubm90IGRlcml2ZSBhIHNhZmUgY2hpbGRgKTtcbiAgfVxuICBjb25zdCBzbG90T3JkaW5hbCA9IFNBRkVfUk9PVF9TTE9UX09SRElOQUxTW3BhcmFtcy5zbG90XTtcbiAgY29uc3QgeyBhY2NvdW50LCByb290cyB9ID0gcGFyYW1zO1xuXG4gIGlmIChwYXJhbXMuc2xvdCA9PT0gJ3NlY3AyNTZrMU11bHRpc2lnJykge1xuICAgIGNvbnN0IHJvb3QgPSByb290cy5zZWNwMjU2azFNdWx0aXNpZztcbiAgICBjb25zdCB1c2VyID0gYmlwMzIuZnJvbUJhc2U1OChyb290LnVzZXIpLmRlcml2ZVBhdGgoYnVpbGRTYWZlVXNlclBhdGgoY29pblR5cGUsIHNsb3RPcmRpbmFsLCBhY2NvdW50KSk7XG4gICAgY29uc3QgYmFja3VwID0gYmlwMzIuZnJvbUJhc2U1OChyb290LmJhY2t1cCkuZGVyaXZlUGF0aChidWlsZFNhZmVDb3NpZ25lclBhdGgoY29pblR5cGUsIHNsb3RPcmRpbmFsLCBhY2NvdW50KSk7XG4gICAgY29uc3QgYml0Z28gPSBiaXAzMi5mcm9tQmFzZTU4KHJvb3QuYml0Z28pLmRlcml2ZVBhdGgoYnVpbGRTYWZlQ29zaWduZXJQYXRoKGNvaW5UeXBlLCBzbG90T3JkaW5hbCwgYWNjb3VudCkpO1xuXG4gICAgaWYgKCF1c2VyLnByaXZhdGVLZXkgfHwgIWJhY2t1cC5wcml2YXRlS2V5KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2Rlcml2ZVNhZmVXYWxsZXRLZXlzOiB1c2VyIGFuZCBiYWNrdXAgcm9vdHMgbXVzdCBiZSBwcml2YXRlICh4cHJ2KScpO1xuICAgIH1cbiAgICBpZiAoYml0Z28ucHJpdmF0ZUtleSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdkZXJpdmVTYWZlV2FsbGV0S2V5czogYml0Z28gcm9vdCBtdXN0IGJlIHB1YmxpYyAoeHB1YiknKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgc2xvdDogJ3NlY3AyNTZrMU11bHRpc2lnJyxcbiAgICAgIHBhdGg6IGJ1aWxkU2FmZVVzZXJQYXRoKGNvaW5UeXBlLCBzbG90T3JkaW5hbCwgYWNjb3VudCksXG4gICAgICBrZXlzOiB7XG4gICAgICAgIHVzZXI6IHsgcHJ2OiB1c2VyLnRvQmFzZTU4KCksIHB1YjogdXNlci5uZXV0ZXJlZCgpLnRvQmFzZTU4KCkgfSxcbiAgICAgICAgYmFja3VwOiB7IHBydjogYmFja3VwLnRvQmFzZTU4KCksIHB1YjogYmFja3VwLm5ldXRlcmVkKCkudG9CYXNlNTgoKSB9LFxuICAgICAgICBiaXRnbzogeyBwdWI6IGJpdGdvLm5ldXRlcmVkKCkudG9CYXNlNTgoKSB9LFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgaWYgKHBhcmFtcy5zbG90ID09PSAnZWNkc2FNcGMnKSB7XG4gICAgY29uc3QgeyBjb21tb25LZXljaGFpbiwgdXNlckNoaWxkLCBiYWNrdXBDaGlsZCB9ID0gYXdhaXQgRGtsc1ZyZlV0aWxzLmRlcml2ZVNhZmVFY2RzYU1wY0NoaWxkKHtcbiAgICAgIHVzZXJSb290OiByb290cy5lY2RzYU1wYy51c2VyLFxuICAgICAgYmFja3VwUm9vdDogcm9vdHMuZWNkc2FNcGMuYmFja3VwLFxuICAgICAgYWNjb3VudCxcbiAgICAgIGNvaW5UeXBlLFxuICAgIH0pO1xuICAgIHJldHVybiB7XG4gICAgICBzbG90OiAnZWNkc2FNcGMnLFxuICAgICAgcGF0aDogYnVpbGRTYWZlVXNlclBhdGgoY29pblR5cGUsIHNsb3RPcmRpbmFsLCBhY2NvdW50KSxcbiAgICAgIGtleXM6IHsgY29tbW9uS2V5Y2hhaW4sIHVzZXI6IHVzZXJDaGlsZCwgYmFja3VwOiBiYWNrdXBDaGlsZCB9LFxuICAgIH07XG4gIH1cblxuICB0aHJvdyBuZXcgRXJyb3IoYGRlcml2ZVNhZmVXYWxsZXRLZXlzOiBzbG90ICcke3BhcmFtcy5zbG90fScgaXMgbm90IHN1cHBvcnRlZCB5ZXRgKTtcbn1cblxuLyoqXG4gKiBCdWlsZHMgdGhlIGtleSBmaWVsZHMgYGNvaW4ucmVjb3ZlcigpYCBleHBlY3RzIGZyb20gZGVyaXZlZCBTYWZlIGNoaWxkIGtleXMuXG4gKiBPbmx5IGBzZWNwMjU2azFNdWx0aXNpZ2AgKHNsb3QgMSkgaXMgc3VwcG9ydGVkIGZvciBub3cuIFNpZ25lZCBtb2RlIHJlLWVuY3J5cHRzIHRoZVxuICogY2hpbGQgeHBydnMgdW5kZXIgYSBmcmVzaCBlcGhlbWVyYWwgcGFzc3BocmFzZSAodjEvU0pDTCk7IHVuc2lnbmVkIG1vZGUgcmV0dXJucyBwdWJzLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYnVpbGRTYWZlUmVjb3ZlcktleVBhcmFtcyhwYXJhbXM6IHtcbiAgYml0Z286IEJpdEdvQmFzZTtcbiAgY29pbjogc3RyaW5nO1xuICBzbG90OiBSb290S2V5VHlwZTtcbiAga2V5czogU2VjcDI1NmsxTXVsdGlzaWdDaGlsZEtleXM7XG4gIG1vZGU6ICdzaWduZWQnIHwgJ3Vuc2lnbmVkJztcbn0pOiBQcm9taXNlPFNhZmVSZWNvdmVyS2V5UGFyYW1zPiB7XG4gIGlmIChwYXJhbXMuc2xvdCAhPT0gJ3NlY3AyNTZrMU11bHRpc2lnJykge1xuICAgIHRocm93IG5ldyBFcnJvcihgYnVpbGRTYWZlUmVjb3ZlcktleVBhcmFtczogc2xvdCAnJHtwYXJhbXMuc2xvdH0nIGlzIG5vdCBzdXBwb3J0ZWQgeWV0YCk7XG4gIH1cbiAgY29uc3QgeyBiaXRnbywga2V5cywgbW9kZSB9ID0gcGFyYW1zO1xuXG4gIGlmIChtb2RlID09PSAndW5zaWduZWQnKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHVzZXJLZXk6IGtleXMudXNlci5wdWIsXG4gICAgICBiYWNrdXBLZXk6IGtleXMuYmFja3VwLnB1YixcbiAgICAgIGJpdGdvS2V5OiBrZXlzLmJpdGdvLnB1YixcbiAgICB9O1xuICB9XG5cbiAgY29uc3QgdXNlclBydiA9IGJpcDMyLmZyb21CYXNlNTgoa2V5cy51c2VyLnBydik7XG4gIGNvbnN0IGJhY2t1cFBydiA9IGJpcDMyLmZyb21CYXNlNTgoa2V5cy5iYWNrdXAucHJ2KTtcbiAgaWYgKCF1c2VyUHJ2LnByaXZhdGVLZXkgfHwgIWJhY2t1cFBydi5wcml2YXRlS2V5KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdidWlsZFNhZmVSZWNvdmVyS2V5UGFyYW1zOiBrZXlzLnVzZXIucHJ2IGFuZCBrZXlzLmJhY2t1cC5wcnYgbXVzdCBiZSBwcml2YXRlIHhwcnZzJyk7XG4gIH1cblxuICBjb25zdCB3YWxsZXRQYXNzcGhyYXNlID0gcmFuZG9tQnl0ZXMoMzIpLnRvU3RyaW5nKCdoZXgnKTtcbiAgY29uc3QgW3VzZXJLZXksIGJhY2t1cEtleV0gPSBhd2FpdCBQcm9taXNlLmFsbChbXG4gICAgYml0Z28uZW5jcnlwdCh7IGlucHV0OiBrZXlzLnVzZXIucHJ2LCBwYXNzd29yZDogd2FsbGV0UGFzc3BocmFzZSwgZW5jcnlwdGlvblZlcnNpb246IDEgfSksXG4gICAgYml0Z28uZW5jcnlwdCh7IGlucHV0OiBrZXlzLmJhY2t1cC5wcnYsIHBhc3N3b3JkOiB3YWxsZXRQYXNzcGhyYXNlLCBlbmNyeXB0aW9uVmVyc2lvbjogMSB9KSxcbiAgXSk7XG5cbiAgcmV0dXJuIHtcbiAgICB1c2VyS2V5LFxuICAgIGJhY2t1cEtleSxcbiAgICBiaXRnb0tleToga2V5cy5iaXRnby5wdWIsXG4gICAgd2FsbGV0UGFzc3BocmFzZSxcbiAgfTtcbn1cbiJdfQ==
@@ -0,0 +1,15 @@
1
+ import { RootKeyType } from '@bitgo/public-types';
2
+ import { IBaseCoin } from '../baseCoin';
3
+ import { BitGoBase } from '../bitgoBase';
4
+ /**
5
+ * Canonical order of the safe root slots. Shared by safe minting (Safes.createSafeKeys) and
6
+ * passkey register/remove (Safe) so both iterate the slots identically.
7
+ * @experimental
8
+ */
9
+ export declare const SAFE_ROOT_SLOTS: RootKeyType[];
10
+ /**
11
+ * Coin used to route a given root's key operations (see ROOT_COIN_BY_NETWORK).
12
+ * @experimental
13
+ */
14
+ export declare function coinForRoot(bitgo: BitGoBase, slot: RootKeyType): IBaseCoin;
15
+ //# sourceMappingURL=rootCoin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rootCoin.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/safe/rootCoin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEzC;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,WAAW,EAAqE,CAAC;AA4B/G;;;GAGG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,GAAG,SAAS,CAK1E"}