@bitgo-beta/sdk-core 8.2.1-beta.212 → 8.2.1-beta.2120

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 (809) hide show
  1. package/dist/src/account-lib/baseCoin/baseTransaction.d.ts +0 -1
  2. package/dist/src/account-lib/baseCoin/baseTransaction.d.ts.map +1 -1
  3. package/dist/src/account-lib/baseCoin/baseTransactionBuilder.d.ts +3 -3
  4. package/dist/src/account-lib/baseCoin/baseTransactionBuilder.d.ts.map +1 -1
  5. package/dist/src/account-lib/baseCoin/baseTransactionBuilder.js +4 -3
  6. package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts +1 -0
  7. package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts.map +1 -1
  8. package/dist/src/account-lib/baseCoin/ed25519KeyPair.js +43 -31
  9. package/dist/src/account-lib/baseCoin/enum.d.ts +59 -5
  10. package/dist/src/account-lib/baseCoin/enum.d.ts.map +1 -1
  11. package/dist/src/account-lib/baseCoin/enum.js +112 -10
  12. package/dist/src/account-lib/baseCoin/errors.d.ts +3 -0
  13. package/dist/src/account-lib/baseCoin/errors.d.ts.map +1 -1
  14. package/dist/src/account-lib/baseCoin/errors.js +8 -2
  15. package/dist/src/account-lib/baseCoin/iface.d.ts +19 -35
  16. package/dist/src/account-lib/baseCoin/iface.d.ts.map +1 -1
  17. package/dist/src/account-lib/baseCoin/iface.js +26 -18
  18. package/dist/src/account-lib/baseCoin/index.d.ts +1 -1
  19. package/dist/src/account-lib/baseCoin/index.d.ts.map +1 -1
  20. package/dist/src/account-lib/baseCoin/index.js +8 -5
  21. package/dist/src/account-lib/baseCoin/messages/baseMessage.d.ts +88 -0
  22. package/dist/src/account-lib/baseCoin/messages/baseMessage.d.ts.map +1 -0
  23. package/dist/src/account-lib/baseCoin/messages/baseMessage.js +154 -0
  24. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.d.ts +67 -0
  25. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.d.ts.map +1 -0
  26. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.js +144 -0
  27. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts +33 -0
  28. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts.map +1 -0
  29. package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +45 -0
  30. package/dist/src/account-lib/baseCoin/messages/iface.d.ts +164 -0
  31. package/dist/src/account-lib/baseCoin/messages/iface.d.ts.map +1 -0
  32. package/dist/src/account-lib/baseCoin/messages/iface.js +3 -0
  33. package/dist/src/account-lib/baseCoin/messages/index.d.ts +6 -0
  34. package/dist/src/account-lib/baseCoin/messages/index.d.ts.map +1 -0
  35. package/dist/src/account-lib/baseCoin/messages/index.js +22 -0
  36. package/dist/src/account-lib/baseCoin/messages/simple/index.d.ts +3 -0
  37. package/dist/src/account-lib/baseCoin/messages/simple/index.d.ts.map +1 -0
  38. package/dist/src/account-lib/baseCoin/messages/simple/index.js +19 -0
  39. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessage.d.ts +13 -0
  40. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessage.d.ts.map +1 -0
  41. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessage.js +28 -0
  42. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.d.ts +21 -0
  43. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.d.ts.map +1 -0
  44. package/dist/src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.js +28 -0
  45. package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.d.ts +1 -2
  46. package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.d.ts.map +1 -1
  47. package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.js +38 -26
  48. package/dist/src/account-lib/index.d.ts +0 -1
  49. package/dist/src/account-lib/index.d.ts.map +1 -1
  50. package/dist/src/account-lib/index.js +23 -10
  51. package/dist/src/account-lib/mpc/index.d.ts +1 -1
  52. package/dist/src/account-lib/mpc/index.d.ts.map +1 -1
  53. package/dist/src/account-lib/mpc/index.js +6 -2
  54. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +2 -3
  55. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -1
  56. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.js +376 -354
  57. package/dist/src/account-lib/mpc/tss/ecdsa/index.js +23 -9
  58. package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts +2 -2
  59. package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts.map +1 -1
  60. package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.js +3 -3
  61. package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts +46 -53
  62. package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts.map +1 -1
  63. package/dist/src/account-lib/mpc/tss/ecdsa/types.js +1 -1
  64. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts +0 -1
  65. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts.map +1 -1
  66. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.js +66 -69
  67. package/dist/src/account-lib/mpc/tss/eddsa/index.js +23 -9
  68. package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts +1 -1
  69. package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts.map +1 -1
  70. package/dist/src/account-lib/mpc/tss/eddsa/types.js +1 -1
  71. package/dist/src/account-lib/mpc/tss/index.js +23 -9
  72. package/dist/src/account-lib/mpc/util.d.ts +7 -1
  73. package/dist/src/account-lib/mpc/util.d.ts.map +1 -1
  74. package/dist/src/account-lib/mpc/util.js +24 -1
  75. package/dist/src/account-lib/staking/index.js +6 -2
  76. package/dist/src/account-lib/staking/utils.js +3 -3
  77. package/dist/src/account-lib/util/crypto.d.ts +8 -2
  78. package/dist/src/account-lib/util/crypto.d.ts.map +1 -1
  79. package/dist/src/account-lib/util/crypto.js +69 -38
  80. package/dist/src/api/bip32path.js +2 -3
  81. package/dist/src/api/index.js +6 -2
  82. package/dist/src/api/types.d.ts +37 -0
  83. package/dist/src/api/types.d.ts.map +1 -1
  84. package/dist/src/api/types.js +8 -1
  85. package/dist/src/bitgo/address-book/address-book.d.ts.map +1 -1
  86. package/dist/src/bitgo/address-book/address-book.js +20 -12
  87. package/dist/src/bitgo/address-book/index.js +6 -2
  88. package/dist/src/bitgo/address-book/types.d.ts +36 -36
  89. package/dist/src/bitgo/address-book/types.d.ts.map +1 -1
  90. package/dist/src/bitgo/baseCoin/baseCoin.d.ts +123 -13
  91. package/dist/src/bitgo/baseCoin/baseCoin.d.ts.map +1 -1
  92. package/dist/src/bitgo/baseCoin/baseCoin.js +200 -16
  93. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +337 -33
  94. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -1
  95. package/dist/src/bitgo/baseCoin/iBaseCoin.js +14 -3
  96. package/dist/src/bitgo/baseCoin/index.js +6 -2
  97. package/dist/src/bitgo/bip32util.d.ts +3 -16
  98. package/dist/src/bitgo/bip32util.d.ts.map +1 -1
  99. package/dist/src/bitgo/bip32util.js +4 -56
  100. package/dist/src/bitgo/bitcoin.d.ts +0 -1
  101. package/dist/src/bitgo/bitcoin.d.ts.map +1 -1
  102. package/dist/src/bitgo/bitcoin.js +26 -13
  103. package/dist/src/bitgo/bitgoBase.d.ts +17 -4
  104. package/dist/src/bitgo/bitgoBase.d.ts.map +1 -1
  105. package/dist/src/bitgo/bitgoBase.js +1 -1
  106. package/dist/src/bitgo/coinFactory.d.ts +24 -3
  107. package/dist/src/bitgo/coinFactory.d.ts.map +1 -1
  108. package/dist/src/bitgo/coinFactory.js +35 -3
  109. package/dist/src/bitgo/config.d.ts +3 -101
  110. package/dist/src/bitgo/config.d.ts.map +1 -1
  111. package/dist/src/bitgo/config.js +26 -15
  112. package/dist/src/bitgo/defi/defiVault.d.ts +171 -0
  113. package/dist/src/bitgo/defi/defiVault.d.ts.map +1 -0
  114. package/dist/src/bitgo/defi/defiVault.js +445 -0
  115. package/dist/src/bitgo/defi/iDefiVault.d.ts +101 -0
  116. package/dist/src/bitgo/defi/iDefiVault.d.ts.map +1 -0
  117. package/dist/src/bitgo/defi/iDefiVault.js +6 -0
  118. package/dist/src/bitgo/defi/index.d.ts +3 -0
  119. package/dist/src/bitgo/defi/index.d.ts.map +1 -0
  120. package/dist/src/bitgo/defi/index.js +22 -0
  121. package/dist/src/bitgo/ecdh.d.ts +0 -1
  122. package/dist/src/bitgo/ecdh.d.ts.map +1 -1
  123. package/dist/src/bitgo/ecdh.js +26 -13
  124. package/dist/src/bitgo/enterprise/enterprise.d.ts +9 -4
  125. package/dist/src/bitgo/enterprise/enterprise.d.ts.map +1 -1
  126. package/dist/src/bitgo/enterprise/enterprise.js +47 -21
  127. package/dist/src/bitgo/enterprise/enterprises.js +27 -13
  128. package/dist/src/bitgo/enterprise/iEnterprise.d.ts +5 -3
  129. package/dist/src/bitgo/enterprise/iEnterprise.d.ts.map +1 -1
  130. package/dist/src/bitgo/enterprise/iEnterprise.js +1 -1
  131. package/dist/src/bitgo/enterprise/index.js +6 -2
  132. package/dist/src/bitgo/environments.d.ts +73 -3
  133. package/dist/src/bitgo/environments.d.ts.map +1 -1
  134. package/dist/src/bitgo/environments.js +415 -34
  135. package/dist/src/bitgo/errors.d.ts +189 -1
  136. package/dist/src/bitgo/errors.d.ts.map +1 -1
  137. package/dist/src/bitgo/errors.js +187 -3
  138. package/dist/src/bitgo/evm/evmUtils.d.ts +26 -0
  139. package/dist/src/bitgo/evm/evmUtils.d.ts.map +1 -0
  140. package/dist/src/bitgo/evm/evmUtils.js +50 -0
  141. package/dist/src/bitgo/index.d.ts +6 -1
  142. package/dist/src/bitgo/index.d.ts.map +1 -1
  143. package/dist/src/bitgo/index.js +32 -11
  144. package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.d.ts +3 -3
  145. package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.d.ts.map +1 -1
  146. package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.js +1 -1
  147. package/dist/src/bitgo/inscriptionBuilder/index.js +6 -2
  148. package/dist/src/bitgo/internal/index.js +6 -2
  149. package/dist/src/bitgo/internal/internal.js +5 -6
  150. package/dist/src/bitgo/internal/keycard.d.ts +13 -8
  151. package/dist/src/bitgo/internal/keycard.d.ts.map +1 -1
  152. package/dist/src/bitgo/internal/keycard.js +63 -48
  153. package/dist/src/bitgo/keychain/decryptKeychain.d.ts +14 -0
  154. package/dist/src/bitgo/keychain/decryptKeychain.d.ts.map +1 -0
  155. package/dist/src/bitgo/keychain/decryptKeychain.js +36 -0
  156. package/dist/src/bitgo/keychain/iKeychains.d.ts +180 -11
  157. package/dist/src/bitgo/keychain/iKeychains.d.ts.map +1 -1
  158. package/dist/src/bitgo/keychain/iKeychains.js +2 -2
  159. package/dist/src/bitgo/keychain/index.d.ts +1 -0
  160. package/dist/src/bitgo/keychain/index.d.ts.map +1 -1
  161. package/dist/src/bitgo/keychain/index.js +7 -2
  162. package/dist/src/bitgo/keychain/keychains.d.ts +106 -13
  163. package/dist/src/bitgo/keychain/keychains.d.ts.map +1 -1
  164. package/dist/src/bitgo/keychain/keychains.js +423 -72
  165. package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts +3 -3
  166. package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts.map +1 -1
  167. package/dist/src/bitgo/keychain/ovcJsonCodec.js +23 -9
  168. package/dist/src/bitgo/legacyBitcoin.d.ts +0 -1
  169. package/dist/src/bitgo/legacyBitcoin.d.ts.map +1 -1
  170. package/dist/src/bitgo/legacyBitcoin.js +27 -13
  171. package/dist/src/bitgo/lightning/lightningWalletUtil.d.ts +7 -0
  172. package/dist/src/bitgo/lightning/lightningWalletUtil.d.ts.map +1 -0
  173. package/dist/src/bitgo/lightning/lightningWalletUtil.js +25 -0
  174. package/dist/src/bitgo/market/iMarkets.d.ts +2 -2
  175. package/dist/src/bitgo/market/iMarkets.d.ts.map +1 -1
  176. package/dist/src/bitgo/market/index.js +6 -2
  177. package/dist/src/bitgo/market/markets.js +23 -9
  178. package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts +5 -1
  179. package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts.map +1 -1
  180. package/dist/src/bitgo/pendingApproval/iPendingApproval.js +4 -4
  181. package/dist/src/bitgo/pendingApproval/index.js +6 -2
  182. package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts +20 -8
  183. package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts.map +1 -1
  184. package/dist/src/bitgo/pendingApproval/pendingApproval.js +246 -111
  185. package/dist/src/bitgo/pendingApproval/pendingApprovals.js +23 -9
  186. package/dist/src/bitgo/proofs/WalletProofs.d.ts +19 -0
  187. package/dist/src/bitgo/proofs/WalletProofs.d.ts.map +1 -0
  188. package/dist/src/bitgo/proofs/WalletProofs.js +37 -0
  189. package/dist/src/bitgo/proofs/index.d.ts +2 -0
  190. package/dist/src/bitgo/proofs/index.d.ts.map +1 -0
  191. package/dist/src/bitgo/proofs/index.js +6 -0
  192. package/dist/src/bitgo/proofs/types.d.ts +80 -0
  193. package/dist/src/bitgo/proofs/types.d.ts.map +1 -0
  194. package/dist/src/bitgo/proofs/types.js +80 -0
  195. package/dist/src/bitgo/recovery/index.js +6 -2
  196. package/dist/src/bitgo/recovery/initiate.d.ts +13 -3
  197. package/dist/src/bitgo/recovery/initiate.d.ts.map +1 -1
  198. package/dist/src/bitgo/recovery/initiate.js +49 -41
  199. package/dist/src/bitgo/safe/derivableEd25519Pub.d.ts +51 -0
  200. package/dist/src/bitgo/safe/derivableEd25519Pub.d.ts.map +1 -0
  201. package/dist/src/bitgo/safe/derivableEd25519Pub.js +115 -0
  202. package/dist/src/bitgo/safe/iSafe.d.ts +124 -0
  203. package/dist/src/bitgo/safe/iSafe.d.ts.map +1 -0
  204. package/dist/src/bitgo/safe/iSafe.js +3 -0
  205. package/dist/src/bitgo/safe/iSafes.d.ts +94 -0
  206. package/dist/src/bitgo/safe/iSafes.d.ts.map +1 -0
  207. package/dist/src/bitgo/safe/iSafes.js +3 -0
  208. package/dist/src/bitgo/safe/index.d.ts +8 -0
  209. package/dist/src/bitgo/safe/index.d.ts.map +1 -0
  210. package/dist/src/bitgo/safe/index.js +24 -0
  211. package/dist/src/bitgo/safe/recovery.d.ts +133 -0
  212. package/dist/src/bitgo/safe/recovery.d.ts.map +1 -0
  213. package/dist/src/bitgo/safe/recovery.js +176 -0
  214. package/dist/src/bitgo/safe/rootCoin.d.ts +15 -0
  215. package/dist/src/bitgo/safe/rootCoin.d.ts.map +1 -0
  216. package/dist/src/bitgo/safe/rootCoin.js +47 -0
  217. package/dist/src/bitgo/safe/safe.d.ts +88 -0
  218. package/dist/src/bitgo/safe/safe.d.ts.map +1 -0
  219. package/dist/src/bitgo/safe/safe.js +417 -0
  220. package/dist/src/bitgo/safe/safes.d.ts +102 -0
  221. package/dist/src/bitgo/safe/safes.d.ts.map +1 -0
  222. package/dist/src/bitgo/safe/safes.js +281 -0
  223. package/dist/src/bitgo/staking/goStakingInterfaces.d.ts +136 -0
  224. package/dist/src/bitgo/staking/goStakingInterfaces.d.ts.map +1 -0
  225. package/dist/src/bitgo/staking/goStakingInterfaces.js +3 -0
  226. package/dist/src/bitgo/staking/goStakingWallet.d.ts +62 -0
  227. package/dist/src/bitgo/staking/goStakingWallet.d.ts.map +1 -0
  228. package/dist/src/bitgo/staking/goStakingWallet.js +141 -0
  229. package/dist/src/bitgo/staking/iGoStakingWallet.d.ts +17 -0
  230. package/dist/src/bitgo/staking/iGoStakingWallet.d.ts.map +1 -0
  231. package/dist/src/bitgo/staking/iGoStakingWallet.js +3 -0
  232. package/dist/src/bitgo/staking/iStakingWallet.d.ts +161 -8
  233. package/dist/src/bitgo/staking/iStakingWallet.d.ts.map +1 -1
  234. package/dist/src/bitgo/staking/iStakingWallet.js +2 -2
  235. package/dist/src/bitgo/staking/index.d.ts +3 -0
  236. package/dist/src/bitgo/staking/index.d.ts.map +1 -1
  237. package/dist/src/bitgo/staking/index.js +9 -2
  238. package/dist/src/bitgo/staking/stakingWallet.d.ts +21 -8
  239. package/dist/src/bitgo/staking/stakingWallet.d.ts.map +1 -1
  240. package/dist/src/bitgo/staking/stakingWallet.js +153 -7
  241. package/dist/src/bitgo/trading/iTradingAccount.d.ts +13 -1
  242. package/dist/src/bitgo/trading/iTradingAccount.d.ts.map +1 -1
  243. package/dist/src/bitgo/trading/iTradingAccount.js +1 -1
  244. package/dist/src/bitgo/trading/index.d.ts +1 -0
  245. package/dist/src/bitgo/trading/index.d.ts.map +1 -1
  246. package/dist/src/bitgo/trading/index.js +7 -2
  247. package/dist/src/bitgo/trading/network/decrypt-aes-gcm.d.ts +8 -0
  248. package/dist/src/bitgo/trading/network/decrypt-aes-gcm.d.ts.map +1 -0
  249. package/dist/src/bitgo/trading/network/decrypt-aes-gcm.js +31 -0
  250. package/dist/src/bitgo/trading/network/decrypt-rsa.d.ts +8 -0
  251. package/dist/src/bitgo/trading/network/decrypt-rsa.d.ts.map +1 -0
  252. package/dist/src/bitgo/trading/network/decrypt-rsa.js +23 -0
  253. package/dist/src/bitgo/trading/network/decrypt.d.ts +14 -0
  254. package/dist/src/bitgo/trading/network/decrypt.d.ts.map +1 -0
  255. package/dist/src/bitgo/trading/network/decrypt.js +23 -0
  256. package/dist/src/bitgo/trading/network/encrypt-aes-gcm.d.ts +8 -0
  257. package/dist/src/bitgo/trading/network/encrypt-aes-gcm.d.ts.map +1 -0
  258. package/dist/src/bitgo/trading/network/encrypt-aes-gcm.js +25 -0
  259. package/dist/src/bitgo/trading/network/encrypt-rsa-browser.d.ts +8 -0
  260. package/dist/src/bitgo/trading/network/encrypt-rsa-browser.d.ts.map +1 -0
  261. package/dist/src/bitgo/trading/network/encrypt-rsa-browser.js +65 -0
  262. package/dist/src/bitgo/trading/network/encrypt-rsa.d.ts +8 -0
  263. package/dist/src/bitgo/trading/network/encrypt-rsa.d.ts.map +1 -0
  264. package/dist/src/bitgo/trading/network/encrypt-rsa.js +23 -0
  265. package/dist/src/bitgo/trading/network/encrypt.d.ts +37 -0
  266. package/dist/src/bitgo/trading/network/encrypt.d.ts.map +1 -0
  267. package/dist/src/bitgo/trading/network/encrypt.js +58 -0
  268. package/dist/src/bitgo/trading/network/index.d.ts +2 -0
  269. package/dist/src/bitgo/trading/network/index.d.ts.map +1 -1
  270. package/dist/src/bitgo/trading/network/index.js +8 -2
  271. package/dist/src/bitgo/trading/network/network.d.ts +4 -3
  272. package/dist/src/bitgo/trading/network/network.d.ts.map +1 -1
  273. package/dist/src/bitgo/trading/network/network.js +24 -27
  274. package/dist/src/bitgo/trading/network/types.d.ts +79 -46
  275. package/dist/src/bitgo/trading/network/types.d.ts.map +1 -1
  276. package/dist/src/bitgo/trading/network/types.js +1 -1
  277. package/dist/src/bitgo/trading/network/utils.d.ts +20 -0
  278. package/dist/src/bitgo/trading/network/utils.d.ts.map +1 -0
  279. package/dist/src/bitgo/trading/network/utils.js +54 -0
  280. package/dist/src/bitgo/trading/tradingAccount.d.ts +15 -1
  281. package/dist/src/bitgo/trading/tradingAccount.d.ts.map +1 -1
  282. package/dist/src/bitgo/trading/tradingAccount.js +55 -7
  283. package/dist/src/bitgo/tss/bitgoPubKeys.d.ts +49 -0
  284. package/dist/src/bitgo/tss/bitgoPubKeys.d.ts.map +1 -0
  285. package/dist/src/bitgo/tss/bitgoPubKeys.js +92 -0
  286. package/dist/src/bitgo/tss/common.d.ts +50 -6
  287. package/dist/src/bitgo/tss/common.d.ts.map +1 -1
  288. package/dist/src/bitgo/tss/common.js +139 -17
  289. package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts +6 -4
  290. package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts.map +1 -1
  291. package/dist/src/bitgo/tss/ecdsa/ecdsa.js +78 -66
  292. package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.d.ts +15 -0
  293. package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
  294. package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.js +167 -0
  295. package/dist/src/bitgo/tss/ecdsa/index.d.ts +1 -0
  296. package/dist/src/bitgo/tss/ecdsa/index.d.ts.map +1 -1
  297. package/dist/src/bitgo/tss/ecdsa/index.js +25 -10
  298. package/dist/src/bitgo/tss/ecdsa/types.d.ts +27 -27
  299. package/dist/src/bitgo/tss/ecdsa/types.d.ts.map +1 -1
  300. package/dist/src/bitgo/tss/ecdsa/types.js +3 -3
  301. package/dist/src/bitgo/tss/eddsa/eddsa.d.ts +15 -6
  302. package/dist/src/bitgo/tss/eddsa/eddsa.d.ts.map +1 -1
  303. package/dist/src/bitgo/tss/eddsa/eddsa.js +47 -40
  304. package/dist/src/bitgo/tss/eddsa/eddsaMPCv2.d.ts +42 -0
  305. package/dist/src/bitgo/tss/eddsa/eddsaMPCv2.d.ts.map +1 -0
  306. package/dist/src/bitgo/tss/eddsa/eddsaMPCv2.js +104 -0
  307. package/dist/src/bitgo/tss/eddsa/index.js +23 -9
  308. package/dist/src/bitgo/tss/eddsa/types.d.ts +4 -4
  309. package/dist/src/bitgo/tss/eddsa/types.d.ts.map +1 -1
  310. package/dist/src/bitgo/tss/index.d.ts +3 -2
  311. package/dist/src/bitgo/tss/index.d.ts.map +1 -1
  312. package/dist/src/bitgo/tss/index.js +26 -10
  313. package/dist/src/bitgo/tss/redpallas/redpallasMPCv2.d.ts +84 -0
  314. package/dist/src/bitgo/tss/redpallas/redpallasMPCv2.d.ts.map +1 -0
  315. package/dist/src/bitgo/tss/redpallas/redpallasMPCv2.js +184 -0
  316. package/dist/src/bitgo/tss/types.d.ts +3 -3
  317. package/dist/src/bitgo/tss/types.d.ts.map +1 -1
  318. package/dist/src/bitgo/tss/types.js +2 -2
  319. package/dist/src/bitgo/types.d.ts +3 -3
  320. package/dist/src/bitgo/types.d.ts.map +1 -1
  321. package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts +10 -0
  322. package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts.map +1 -1
  323. package/dist/src/bitgo/utils/abstractUtxoCoinUtil.js +76 -14
  324. package/dist/src/bitgo/utils/codecProps.js +24 -11
  325. package/dist/src/bitgo/utils/codecs.d.ts +11 -0
  326. package/dist/src/bitgo/utils/codecs.d.ts.map +1 -0
  327. package/dist/src/bitgo/utils/codecs.js +59 -0
  328. package/dist/src/bitgo/utils/decode.d.ts.map +1 -1
  329. package/dist/src/bitgo/utils/decode.js +30 -16
  330. package/dist/src/bitgo/utils/index.d.ts +5 -2
  331. package/dist/src/bitgo/utils/index.d.ts.map +1 -1
  332. package/dist/src/bitgo/utils/index.js +28 -11
  333. package/dist/src/bitgo/utils/messageTypes.d.ts +46 -0
  334. package/dist/src/bitgo/utils/messageTypes.d.ts.map +1 -0
  335. package/dist/src/bitgo/utils/messageTypes.js +23 -0
  336. package/dist/src/bitgo/utils/mpcUtils.d.ts +4 -4
  337. package/dist/src/bitgo/utils/mpcUtils.d.ts.map +1 -1
  338. package/dist/src/bitgo/utils/mpcUtils.js +208 -14
  339. package/dist/src/bitgo/utils/notEmpty.d.ts +2 -0
  340. package/dist/src/bitgo/utils/notEmpty.d.ts.map +1 -0
  341. package/dist/src/bitgo/utils/notEmpty.js +7 -0
  342. package/dist/src/bitgo/utils/opengpgUtils.d.ts +11 -7
  343. package/dist/src/bitgo/utils/opengpgUtils.d.ts.map +1 -1
  344. package/dist/src/bitgo/utils/opengpgUtils.js +79 -62
  345. package/dist/src/bitgo/utils/postWithCodec.js +2 -3
  346. package/dist/src/bitgo/utils/promise-utils.d.ts +1 -1
  347. package/dist/src/bitgo/utils/promise-utils.d.ts.map +1 -1
  348. package/dist/src/bitgo/utils/promise-utils.js +2 -3
  349. package/dist/src/bitgo/utils/siws.d.ts +17 -0
  350. package/dist/src/bitgo/utils/siws.d.ts.map +1 -0
  351. package/dist/src/bitgo/utils/siws.js +171 -0
  352. package/dist/src/bitgo/utils/transactionUtils.d.ts +9 -0
  353. package/dist/src/bitgo/utils/transactionUtils.d.ts.map +1 -0
  354. package/dist/src/bitgo/utils/transactionUtils.js +29 -0
  355. package/dist/src/bitgo/utils/triple.d.ts +1 -1
  356. package/dist/src/bitgo/utils/triple.d.ts.map +1 -1
  357. package/dist/src/bitgo/utils/triple.js +2 -3
  358. package/dist/src/bitgo/utils/tss/addressVerification.d.ts +62 -0
  359. package/dist/src/bitgo/utils/tss/addressVerification.d.ts.map +1 -0
  360. package/dist/src/bitgo/utils/tss/addressVerification.js +93 -0
  361. package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts +99 -17
  362. package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -1
  363. package/dist/src/bitgo/utils/tss/baseTSSUtils.js +322 -45
  364. package/dist/src/bitgo/utils/tss/baseTypes.d.ts +462 -55
  365. package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -1
  366. package/dist/src/bitgo/utils/tss/baseTypes.js +47 -22
  367. package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.d.ts +23 -0
  368. package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.d.ts.map +1 -0
  369. package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.js +157 -0
  370. package/dist/src/bitgo/utils/tss/ecdsa/base.d.ts +28 -0
  371. package/dist/src/bitgo/utils/tss/ecdsa/base.d.ts.map +1 -0
  372. package/dist/src/bitgo/utils/tss/ecdsa/base.js +53 -0
  373. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts +25 -51
  374. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -1
  375. package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +173 -246
  376. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts +241 -0
  377. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
  378. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.js +1072 -0
  379. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.d.ts +17 -0
  380. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.d.ts.map +1 -0
  381. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.js +39 -0
  382. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaVrfMPCv2.d.ts +65 -0
  383. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaVrfMPCv2.d.ts.map +1 -0
  384. package/dist/src/bitgo/utils/tss/ecdsa/ecdsaVrfMPCv2.js +439 -0
  385. package/dist/src/bitgo/utils/tss/ecdsa/index.d.ts +5 -0
  386. package/dist/src/bitgo/utils/tss/ecdsa/index.d.ts.map +1 -1
  387. package/dist/src/bitgo/utils/tss/ecdsa/index.js +11 -2
  388. package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts +7 -10
  389. package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts.map +1 -1
  390. package/dist/src/bitgo/utils/tss/ecdsa/types.js +1 -1
  391. package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.d.ts +151 -0
  392. package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.d.ts.map +1 -0
  393. package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.js +55 -0
  394. package/dist/src/bitgo/utils/tss/eddsa/SMC/utils.d.ts +21 -0
  395. package/dist/src/bitgo/utils/tss/eddsa/SMC/utils.d.ts.map +1 -0
  396. package/dist/src/bitgo/utils/tss/eddsa/SMC/utils.js +119 -0
  397. package/dist/src/bitgo/utils/tss/eddsa/base.d.ts +18 -0
  398. package/dist/src/bitgo/utils/tss/eddsa/base.d.ts.map +1 -0
  399. package/dist/src/bitgo/utils/tss/eddsa/base.js +64 -0
  400. package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts +43 -11
  401. package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts.map +1 -1
  402. package/dist/src/bitgo/utils/tss/eddsa/eddsa.js +261 -96
  403. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts +261 -0
  404. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts.map +1 -0
  405. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2.js +994 -0
  406. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2KeyGenSender.d.ts +14 -0
  407. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2KeyGenSender.d.ts.map +1 -0
  408. package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2KeyGenSender.js +29 -0
  409. package/dist/src/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.d.ts +44 -0
  410. package/dist/src/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.d.ts.map +1 -0
  411. package/dist/src/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.js +268 -0
  412. package/dist/src/bitgo/utils/tss/eddsa/index.d.ts +5 -0
  413. package/dist/src/bitgo/utils/tss/eddsa/index.d.ts.map +1 -1
  414. package/dist/src/bitgo/utils/tss/eddsa/index.js +30 -8
  415. package/dist/src/bitgo/utils/tss/eddsa/types.d.ts +15 -7
  416. package/dist/src/bitgo/utils/tss/eddsa/types.d.ts.map +1 -1
  417. package/dist/src/bitgo/utils/tss/eddsa/types.js +1 -1
  418. package/dist/src/bitgo/utils/tss/eddsa/typesEddsaMPCv2.d.ts +75 -0
  419. package/dist/src/bitgo/utils/tss/eddsa/typesEddsaMPCv2.d.ts.map +1 -0
  420. package/dist/src/bitgo/utils/tss/eddsa/typesEddsaMPCv2.js +44 -0
  421. package/dist/src/bitgo/utils/tss/index.d.ts +7 -0
  422. package/dist/src/bitgo/utils/tss/index.d.ts.map +1 -1
  423. package/dist/src/bitgo/utils/tss/index.js +31 -10
  424. package/dist/src/bitgo/utils/tss/keyShareEnvelope.d.ts +40 -0
  425. package/dist/src/bitgo/utils/tss/keyShareEnvelope.d.ts.map +1 -0
  426. package/dist/src/bitgo/utils/tss/keyShareEnvelope.js +103 -0
  427. package/dist/src/bitgo/utils/tss/keyVerification.d.ts +45 -0
  428. package/dist/src/bitgo/utils/tss/keyVerification.d.ts.map +1 -0
  429. package/dist/src/bitgo/utils/tss/keyVerification.js +192 -0
  430. package/dist/src/bitgo/utils/tss/preHashedSignable.d.ts +23 -0
  431. package/dist/src/bitgo/utils/tss/preHashedSignable.d.ts.map +1 -0
  432. package/dist/src/bitgo/utils/tss/preHashedSignable.js +26 -0
  433. package/dist/src/bitgo/utils/tss/recipientUtils.d.ts +42 -0
  434. package/dist/src/bitgo/utils/tss/recipientUtils.d.ts.map +1 -0
  435. package/dist/src/bitgo/utils/tss/recipientUtils.js +179 -0
  436. package/dist/src/bitgo/utils/tss/redpallas/SMC/utils.d.ts +29 -0
  437. package/dist/src/bitgo/utils/tss/redpallas/SMC/utils.d.ts.map +1 -0
  438. package/dist/src/bitgo/utils/tss/redpallas/SMC/utils.js +126 -0
  439. package/dist/src/bitgo/utils/tss/redpallas/index.d.ts +4 -0
  440. package/dist/src/bitgo/utils/tss/redpallas/index.d.ts.map +1 -0
  441. package/dist/src/bitgo/utils/tss/redpallas/index.js +20 -0
  442. package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2.d.ts +27 -0
  443. package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2.d.ts.map +1 -0
  444. package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2.js +43 -0
  445. package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2KeyGenSender.d.ts +45 -0
  446. package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2KeyGenSender.d.ts.map +1 -0
  447. package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2KeyGenSender.js +55 -0
  448. package/dist/src/bitgo/utils/tss/serializedTxHexVerify.d.ts +8 -0
  449. package/dist/src/bitgo/utils/tss/serializedTxHexVerify.d.ts.map +1 -0
  450. package/dist/src/bitgo/utils/tss/serializedTxHexVerify.js +13 -0
  451. package/dist/src/bitgo/utils/tss/signableConsistency.d.ts +12 -0
  452. package/dist/src/bitgo/utils/tss/signableConsistency.d.ts.map +1 -0
  453. package/dist/src/bitgo/utils/tss/signableConsistency.js +9 -0
  454. package/dist/src/bitgo/utils/txRequest.d.ts +10 -0
  455. package/dist/src/bitgo/utils/txRequest.d.ts.map +1 -0
  456. package/dist/src/bitgo/utils/txRequest.js +49 -0
  457. package/dist/src/bitgo/utils/util.js +24 -10
  458. package/dist/src/bitgo/utils/wallet.d.ts +7 -0
  459. package/dist/src/bitgo/utils/wallet.d.ts.map +1 -0
  460. package/dist/src/bitgo/utils/wallet.js +48 -0
  461. package/dist/src/bitgo/v1Wallets.d.ts +170 -0
  462. package/dist/src/bitgo/v1Wallets.d.ts.map +1 -0
  463. package/dist/src/bitgo/v1Wallets.js +3 -0
  464. package/dist/src/bitgo/wallet/BuildParams.d.ts +91 -1
  465. package/dist/src/bitgo/wallet/BuildParams.d.ts.map +1 -1
  466. package/dist/src/bitgo/wallet/BuildParams.js +96 -11
  467. package/dist/src/bitgo/wallet/iWallet.d.ts +636 -33
  468. package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
  469. package/dist/src/bitgo/wallet/iWallet.js +1 -1
  470. package/dist/src/bitgo/wallet/iWallets.d.ts +311 -16
  471. package/dist/src/bitgo/wallet/iWallets.d.ts.map +1 -1
  472. package/dist/src/bitgo/wallet/iWallets.js +84 -3
  473. package/dist/src/bitgo/wallet/index.d.ts +1 -0
  474. package/dist/src/bitgo/wallet/index.d.ts.map +1 -1
  475. package/dist/src/bitgo/wallet/index.js +7 -2
  476. package/dist/src/bitgo/wallet/safeKeychain.d.ts +75 -0
  477. package/dist/src/bitgo/wallet/safeKeychain.d.ts.map +1 -0
  478. package/dist/src/bitgo/wallet/safeKeychain.js +152 -0
  479. package/dist/src/bitgo/wallet/wallet.d.ts +410 -27
  480. package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
  481. package/dist/src/bitgo/wallet/wallet.js +2518 -510
  482. package/dist/src/bitgo/wallet/wallets.d.ts +99 -4
  483. package/dist/src/bitgo/wallet/wallets.d.ts.map +1 -1
  484. package/dist/src/bitgo/wallet/wallets.js +1256 -156
  485. package/dist/src/bitgo/walletUtil/iMessageProvider.d.ts +12 -0
  486. package/dist/src/bitgo/walletUtil/iMessageProvider.d.ts.map +1 -0
  487. package/dist/src/bitgo/walletUtil/iMessageProvider.js +3 -0
  488. package/dist/src/bitgo/walletUtil/index.d.ts +3 -0
  489. package/dist/src/bitgo/walletUtil/index.d.ts.map +1 -0
  490. package/dist/src/bitgo/walletUtil/index.js +19 -0
  491. package/dist/src/bitgo/walletUtil/midnightMessageProvider.d.ts +22 -0
  492. package/dist/src/bitgo/walletUtil/midnightMessageProvider.d.ts.map +1 -0
  493. package/dist/src/bitgo/walletUtil/midnightMessageProvider.js +95 -0
  494. package/dist/src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.d.ts +9 -0
  495. package/dist/src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.d.ts.map +1 -0
  496. package/dist/src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.js +72 -0
  497. package/dist/src/bitgo/walletUtil/utxoMessageProof.d.ts +15 -0
  498. package/dist/src/bitgo/walletUtil/utxoMessageProof.d.ts.map +1 -0
  499. package/dist/src/bitgo/walletUtil/utxoMessageProof.js +40 -0
  500. package/dist/src/bitgo/webauthn/base64url.d.ts +16 -0
  501. package/dist/src/bitgo/webauthn/base64url.d.ts.map +1 -0
  502. package/dist/src/bitgo/webauthn/base64url.js +27 -0
  503. package/dist/src/bitgo/webauthn/deriveEnterpriseSalt.d.ts +18 -0
  504. package/dist/src/bitgo/webauthn/deriveEnterpriseSalt.d.ts.map +1 -0
  505. package/dist/src/bitgo/webauthn/deriveEnterpriseSalt.js +26 -0
  506. package/dist/src/bitgo/webauthn/derivePassword.d.ts +11 -0
  507. package/dist/src/bitgo/webauthn/derivePassword.d.ts.map +1 -0
  508. package/dist/src/bitgo/webauthn/derivePassword.js +16 -0
  509. package/dist/src/bitgo/webauthn/index.d.ts +5 -0
  510. package/dist/src/bitgo/webauthn/index.d.ts.map +1 -0
  511. package/dist/src/bitgo/webauthn/index.js +21 -0
  512. package/dist/src/bitgo/webauthn/types.d.ts +18 -0
  513. package/dist/src/bitgo/webauthn/types.d.ts.map +1 -0
  514. package/dist/src/bitgo/webauthn/types.js +3 -0
  515. package/dist/src/bitgo/webhook/index.js +6 -2
  516. package/dist/src/bitgo/webhook/webhooks.js +23 -9
  517. package/dist/src/coins/fiat.d.ts +45 -0
  518. package/dist/src/coins/fiat.d.ts.map +1 -0
  519. package/dist/src/coins/fiat.js +94 -0
  520. package/dist/src/coins/index.d.ts +1 -6
  521. package/dist/src/coins/index.d.ts.map +1 -1
  522. package/dist/src/coins/index.js +7 -8
  523. package/dist/src/coins/ofc.d.ts +21 -2
  524. package/dist/src/coins/ofc.d.ts.map +1 -1
  525. package/dist/src/coins/ofc.js +29 -3
  526. package/dist/src/coins/ofcToken.d.ts +15 -4
  527. package/dist/src/coins/ofcToken.d.ts.map +1 -1
  528. package/dist/src/coins/ofcToken.js +43 -5
  529. package/dist/src/coins/susd.d.ts +3 -2
  530. package/dist/src/coins/susd.d.ts.map +1 -1
  531. package/dist/src/coins/susd.js +5 -1
  532. package/dist/src/common.js +27 -13
  533. package/dist/src/index.d.ts +9 -1
  534. package/dist/src/index.d.ts.map +1 -1
  535. package/dist/src/index.js +40 -11
  536. package/dist/src/lightning.d.ts +20 -0
  537. package/dist/src/lightning.d.ts.map +1 -0
  538. package/dist/src/lightning.js +13 -0
  539. package/dist/src/units.js +5 -6
  540. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.d.ts +2 -0
  541. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.d.ts.map +1 -0
  542. package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.js +207 -0
  543. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.d.ts +2 -0
  544. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.d.ts.map +1 -0
  545. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.js +174 -0
  546. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts +2 -0
  547. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts.map +1 -0
  548. package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +108 -0
  549. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts +46 -0
  550. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts.map +1 -0
  551. package/dist/test/unit/account-lib/baseCoin/messages/fixtures.js +69 -0
  552. package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.js +91 -29
  553. package/dist/test/unit/account-lib/mpc/util.d.ts +2 -0
  554. package/dist/test/unit/account-lib/mpc/util.d.ts.map +1 -0
  555. package/dist/test/unit/account-lib/mpc/util.js +53 -0
  556. package/dist/test/unit/bitgo/address-book/address-book.d.ts +2 -0
  557. package/dist/test/unit/bitgo/address-book/address-book.d.ts.map +1 -0
  558. package/dist/test/unit/bitgo/address-book/address-book.js +159 -0
  559. package/dist/test/unit/bitgo/defi/defiVault.d.ts +2 -0
  560. package/dist/test/unit/bitgo/defi/defiVault.d.ts.map +1 -0
  561. package/dist/test/unit/bitgo/defi/defiVault.js +863 -0
  562. package/dist/test/unit/bitgo/environment.d.ts +2 -0
  563. package/dist/test/unit/bitgo/environment.d.ts.map +1 -0
  564. package/dist/test/unit/bitgo/environment.js +38 -0
  565. package/dist/test/unit/bitgo/errors.d.ts +2 -0
  566. package/dist/test/unit/bitgo/errors.d.ts.map +1 -0
  567. package/dist/test/unit/bitgo/errors.js +262 -0
  568. package/dist/test/unit/bitgo/keychain/keychains.d.ts +2 -0
  569. package/dist/test/unit/bitgo/keychain/keychains.d.ts.map +1 -0
  570. package/dist/test/unit/bitgo/keychain/keychains.js +426 -0
  571. package/dist/test/unit/bitgo/recovery/initiate.d.ts +2 -0
  572. package/dist/test/unit/bitgo/recovery/initiate.d.ts.map +1 -0
  573. package/dist/test/unit/bitgo/recovery/initiate.js +159 -0
  574. package/dist/test/unit/bitgo/safe/derivableEd25519Pub.d.ts +2 -0
  575. package/dist/test/unit/bitgo/safe/derivableEd25519Pub.d.ts.map +1 -0
  576. package/dist/test/unit/bitgo/safe/derivableEd25519Pub.js +193 -0
  577. package/dist/test/unit/bitgo/safe/fixtures/derivableEd25519Pub.json +72 -0
  578. package/dist/test/unit/bitgo/safe/fixtures/safeBip44Vectors.json +319 -0
  579. package/dist/test/unit/bitgo/safe/recovery.d.ts +2 -0
  580. package/dist/test/unit/bitgo/safe/recovery.d.ts.map +1 -0
  581. package/dist/test/unit/bitgo/safe/recovery.js +478 -0
  582. package/dist/test/unit/bitgo/safe/rootCoin.d.ts +2 -0
  583. package/dist/test/unit/bitgo/safe/rootCoin.d.ts.map +1 -0
  584. package/dist/test/unit/bitgo/safe/rootCoin.js +13 -0
  585. package/dist/test/unit/bitgo/safe/safe.d.ts +2 -0
  586. package/dist/test/unit/bitgo/safe/safe.d.ts.map +1 -0
  587. package/dist/test/unit/bitgo/safe/safe.js +607 -0
  588. package/dist/test/unit/bitgo/safe/safeBip44Vectors.d.ts +2 -0
  589. package/dist/test/unit/bitgo/safe/safeBip44Vectors.d.ts.map +1 -0
  590. package/dist/test/unit/bitgo/safe/safeBip44Vectors.js +189 -0
  591. package/dist/test/unit/bitgo/safe/safeDerivation.d.ts +2 -0
  592. package/dist/test/unit/bitgo/safe/safeDerivation.d.ts.map +1 -0
  593. package/dist/test/unit/bitgo/safe/safeDerivation.js +37 -0
  594. package/dist/test/unit/bitgo/safe/safes.d.ts +2 -0
  595. package/dist/test/unit/bitgo/safe/safes.d.ts.map +1 -0
  596. package/dist/test/unit/bitgo/safe/safes.js +376 -0
  597. package/dist/test/unit/bitgo/trading/network/encrypt.d.ts +2 -0
  598. package/dist/test/unit/bitgo/trading/network/encrypt.d.ts.map +1 -0
  599. package/dist/test/unit/bitgo/trading/network/encrypt.js +71 -0
  600. package/dist/test/unit/bitgo/trading/network/network.test.d.ts +2 -0
  601. package/dist/test/unit/bitgo/trading/network/network.test.d.ts.map +1 -0
  602. package/dist/test/unit/bitgo/trading/network/network.test.js +136 -0
  603. package/dist/test/unit/bitgo/trading/tradingAccount.d.ts +2 -0
  604. package/dist/test/unit/bitgo/trading/tradingAccount.d.ts.map +1 -0
  605. package/dist/test/unit/bitgo/trading/tradingAccount.js +192 -0
  606. package/dist/test/unit/bitgo/tss/bitgoPubKeys.d.ts +2 -0
  607. package/dist/test/unit/bitgo/tss/bitgoPubKeys.d.ts.map +1 -0
  608. package/dist/test/unit/bitgo/tss/bitgoPubKeys.js +66 -0
  609. package/dist/test/unit/bitgo/tss/common.d.ts +2 -0
  610. package/dist/test/unit/bitgo/tss/common.d.ts.map +1 -0
  611. package/dist/test/unit/bitgo/tss/common.js +84 -0
  612. package/dist/test/unit/bitgo/tss/redpallas/redpallasMPCv2.d.ts +2 -0
  613. package/dist/test/unit/bitgo/tss/redpallas/redpallasMPCv2.d.ts.map +1 -0
  614. package/dist/test/unit/bitgo/tss/redpallas/redpallasMPCv2.js +249 -0
  615. package/dist/test/unit/bitgo/utils/abstractUtxoCoinUtil.js +45 -4
  616. package/dist/test/unit/bitgo/utils/messageTypes.d.ts +2 -0
  617. package/dist/test/unit/bitgo/utils/messageTypes.d.ts.map +1 -0
  618. package/dist/test/unit/bitgo/utils/messageTypes.js +64 -0
  619. package/dist/test/unit/bitgo/utils/mpcUtils.unwrap.d.ts +2 -0
  620. package/dist/test/unit/bitgo/utils/mpcUtils.unwrap.d.ts.map +1 -0
  621. package/dist/test/unit/bitgo/utils/mpcUtils.unwrap.js +109 -0
  622. package/dist/test/unit/bitgo/utils/mpcUtils.wrapApprove.d.ts +2 -0
  623. package/dist/test/unit/bitgo/utils/mpcUtils.wrapApprove.d.ts.map +1 -0
  624. package/dist/test/unit/bitgo/utils/mpcUtils.wrapApprove.js +106 -0
  625. package/dist/test/unit/bitgo/utils/notEmpty.d.ts +2 -0
  626. package/dist/test/unit/bitgo/utils/notEmpty.d.ts.map +1 -0
  627. package/dist/test/unit/bitgo/utils/notEmpty.js +15 -0
  628. package/dist/test/unit/bitgo/utils/postWithCodec.js +24 -10
  629. package/dist/test/unit/bitgo/utils/siws.d.ts +2 -0
  630. package/dist/test/unit/bitgo/utils/siws.d.ts.map +1 -0
  631. package/dist/test/unit/bitgo/utils/siws.js +206 -0
  632. package/dist/test/unit/bitgo/utils/tss/addressVerification.d.ts +2 -0
  633. package/dist/test/unit/bitgo/utils/tss/addressVerification.d.ts.map +1 -0
  634. package/dist/test/unit/bitgo/utils/tss/addressVerification.js +251 -0
  635. package/dist/test/unit/bitgo/utils/tss/baseTSSUtils.d.ts +2 -0
  636. package/dist/test/unit/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -0
  637. package/dist/test/unit/bitgo/utils/tss/baseTSSUtils.js +348 -0
  638. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaEncryptionVersion.d.ts +2 -0
  639. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaEncryptionVersion.d.ts.map +1 -0
  640. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaEncryptionVersion.js +94 -0
  641. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts +2 -0
  642. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
  643. package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaMPCv2.js +1068 -0
  644. package/dist/test/unit/bitgo/utils/tss/ecdsa/gpgKeys.d.ts +5 -0
  645. package/dist/test/unit/bitgo/utils/tss/ecdsa/gpgKeys.d.ts.map +1 -0
  646. package/dist/test/unit/bitgo/utils/tss/ecdsa/gpgKeys.js +36 -0
  647. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaExternalSigner.d.ts +2 -0
  648. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaExternalSigner.d.ts.map +1 -0
  649. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaExternalSigner.js +158 -0
  650. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts +2 -0
  651. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts.map +1 -0
  652. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaMPCv2.js +2410 -0
  653. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.d.ts +2 -0
  654. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.d.ts.map +1 -0
  655. package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.js +553 -0
  656. package/dist/test/unit/bitgo/utils/tss/eddsa/smcUtil.d.ts +2 -0
  657. package/dist/test/unit/bitgo/utils/tss/eddsa/smcUtil.d.ts.map +1 -0
  658. package/dist/test/unit/bitgo/utils/tss/eddsa/smcUtil.js +376 -0
  659. package/dist/test/unit/bitgo/utils/tss/keyShareEnvelope.d.ts +2 -0
  660. package/dist/test/unit/bitgo/utils/tss/keyShareEnvelope.d.ts.map +1 -0
  661. package/dist/test/unit/bitgo/utils/tss/keyShareEnvelope.js +83 -0
  662. package/dist/test/unit/bitgo/utils/tss/keyVerification.d.ts +2 -0
  663. package/dist/test/unit/bitgo/utils/tss/keyVerification.d.ts.map +1 -0
  664. package/dist/test/unit/bitgo/utils/tss/keyVerification.js +229 -0
  665. package/dist/test/unit/bitgo/utils/tss/preHashedSignable.d.ts +2 -0
  666. package/dist/test/unit/bitgo/utils/tss/preHashedSignable.d.ts.map +1 -0
  667. package/dist/test/unit/bitgo/utils/tss/preHashedSignable.js +55 -0
  668. package/dist/test/unit/bitgo/utils/tss/recipientUtils.d.ts +2 -0
  669. package/dist/test/unit/bitgo/utils/tss/recipientUtils.d.ts.map +1 -0
  670. package/dist/test/unit/bitgo/utils/tss/recipientUtils.js +498 -0
  671. package/dist/test/unit/bitgo/utils/tss/redpallas/redpallasMPCv2.d.ts +2 -0
  672. package/dist/test/unit/bitgo/utils/tss/redpallas/redpallasMPCv2.d.ts.map +1 -0
  673. package/dist/test/unit/bitgo/utils/tss/redpallas/redpallasMPCv2.js +80 -0
  674. package/dist/test/unit/bitgo/utils/tss/redpallas/smcUtil.d.ts +2 -0
  675. package/dist/test/unit/bitgo/utils/tss/redpallas/smcUtil.d.ts.map +1 -0
  676. package/dist/test/unit/bitgo/utils/tss/redpallas/smcUtil.js +279 -0
  677. package/dist/test/unit/bitgo/utils/tss/redpallasBitgoGpgKey.d.ts +2 -0
  678. package/dist/test/unit/bitgo/utils/tss/redpallasBitgoGpgKey.d.ts.map +1 -0
  679. package/dist/test/unit/bitgo/utils/tss/redpallasBitgoGpgKey.js +111 -0
  680. package/dist/test/unit/bitgo/utils/txRequest.d.ts +2 -0
  681. package/dist/test/unit/bitgo/utils/txRequest.d.ts.map +1 -0
  682. package/dist/test/unit/bitgo/utils/txRequest.js +179 -0
  683. package/dist/test/unit/bitgo/utils/wallet.d.ts +2 -0
  684. package/dist/test/unit/bitgo/utils/wallet.d.ts.map +1 -0
  685. package/dist/test/unit/bitgo/utils/wallet.js +55 -0
  686. package/dist/test/unit/bitgo/wallet/BuildParams.d.ts +2 -0
  687. package/dist/test/unit/bitgo/wallet/BuildParams.d.ts.map +1 -0
  688. package/dist/test/unit/bitgo/wallet/BuildParams.js +167 -0
  689. package/dist/test/unit/bitgo/wallet/SendTransactionRequest.js +79 -9
  690. package/dist/test/unit/bitgo/wallet/getAccountResources.d.ts +2 -0
  691. package/dist/test/unit/bitgo/wallet/getAccountResources.d.ts.map +1 -0
  692. package/dist/test/unit/bitgo/wallet/getAccountResources.js +133 -0
  693. package/dist/test/unit/bitgo/wallet/getPotentialStuckTxs.d.ts +2 -0
  694. package/dist/test/unit/bitgo/wallet/getPotentialStuckTxs.d.ts.map +1 -0
  695. package/dist/test/unit/bitgo/wallet/getPotentialStuckTxs.js +88 -0
  696. package/dist/test/unit/bitgo/wallet/getResourceDelegations.d.ts +2 -0
  697. package/dist/test/unit/bitgo/wallet/getResourceDelegations.d.ts.map +1 -0
  698. package/dist/test/unit/bitgo/wallet/getResourceDelegations.js +118 -0
  699. package/dist/test/unit/bitgo/wallet/ofcWalletAddressCreation.d.ts +2 -0
  700. package/dist/test/unit/bitgo/wallet/ofcWalletAddressCreation.d.ts.map +1 -0
  701. package/dist/test/unit/bitgo/wallet/ofcWalletAddressCreation.js +141 -0
  702. package/dist/test/unit/bitgo/wallet/ofcWalletSignTransaction.d.ts +2 -0
  703. package/dist/test/unit/bitgo/wallet/ofcWalletSignTransaction.d.ts.map +1 -0
  704. package/dist/test/unit/bitgo/wallet/ofcWalletSignTransaction.js +185 -0
  705. package/dist/test/unit/bitgo/wallet/prebuildTransactionTypes.d.ts +2 -0
  706. package/dist/test/unit/bitgo/wallet/prebuildTransactionTypes.d.ts.map +1 -0
  707. package/dist/test/unit/bitgo/wallet/prebuildTransactionTypes.js +20 -0
  708. package/dist/test/unit/bitgo/wallet/resourceManagement.d.ts +3 -0
  709. package/dist/test/unit/bitgo/wallet/resourceManagement.d.ts.map +1 -0
  710. package/dist/test/unit/bitgo/wallet/resourceManagement.js +441 -0
  711. package/dist/test/unit/bitgo/wallet/safeGetUserPrv.d.ts +5 -0
  712. package/dist/test/unit/bitgo/wallet/safeGetUserPrv.d.ts.map +1 -0
  713. package/dist/test/unit/bitgo/wallet/safeGetUserPrv.js +651 -0
  714. package/dist/test/unit/bitgo/wallet/safeShareWallet.d.ts +9 -0
  715. package/dist/test/unit/bitgo/wallet/safeShareWallet.d.ts.map +1 -0
  716. package/dist/test/unit/bitgo/wallet/safeShareWallet.js +304 -0
  717. package/dist/test/unit/bitgo/wallet/tokenApproval.d.ts +2 -0
  718. package/dist/test/unit/bitgo/wallet/tokenApproval.d.ts.map +1 -0
  719. package/dist/test/unit/bitgo/wallet/tokenApproval.js +210 -0
  720. package/dist/test/unit/bitgo/wallet/walletEvmAddressCreation.d.ts +2 -0
  721. package/dist/test/unit/bitgo/wallet/walletEvmAddressCreation.d.ts.map +1 -0
  722. package/dist/test/unit/bitgo/wallet/walletEvmAddressCreation.js +181 -0
  723. package/dist/test/unit/bitgo/wallet/walletOptionsCodecs.d.ts +2 -0
  724. package/dist/test/unit/bitgo/wallet/walletOptionsCodecs.d.ts.map +1 -0
  725. package/dist/test/unit/bitgo/wallet/walletOptionsCodecs.js +69 -0
  726. package/dist/test/unit/bitgo/wallet/walletTssAddressVerification.d.ts +2 -0
  727. package/dist/test/unit/bitgo/wallet/walletTssAddressVerification.d.ts.map +1 -0
  728. package/dist/test/unit/bitgo/wallet/walletTssAddressVerification.js +320 -0
  729. package/dist/test/unit/bitgo/wallet/walletVerifyKey.d.ts +2 -0
  730. package/dist/test/unit/bitgo/wallet/walletVerifyKey.d.ts.map +1 -0
  731. package/dist/test/unit/bitgo/wallet/walletVerifyKey.js +160 -0
  732. package/dist/test/unit/bitgo/wallet/walletsEncryptionVersion.d.ts +2 -0
  733. package/dist/test/unit/bitgo/wallet/walletsEncryptionVersion.d.ts.map +1 -0
  734. package/dist/test/unit/bitgo/wallet/walletsEncryptionVersion.js +304 -0
  735. package/dist/test/unit/bitgo/wallet/walletsEvmKeyring.d.ts +2 -0
  736. package/dist/test/unit/bitgo/wallet/walletsEvmKeyring.d.ts.map +1 -0
  737. package/dist/test/unit/bitgo/wallet/walletsEvmKeyring.js +216 -0
  738. package/dist/test/unit/bitgo/wallet/walletsExternalSigner.d.ts +2 -0
  739. package/dist/test/unit/bitgo/wallet/walletsExternalSigner.d.ts.map +1 -0
  740. package/dist/test/unit/bitgo/wallet/walletsExternalSigner.js +853 -0
  741. package/dist/test/unit/bitgo/wallet/walletsGoAccount.d.ts +2 -0
  742. package/dist/test/unit/bitgo/wallet/walletsGoAccount.d.ts.map +1 -0
  743. package/dist/test/unit/bitgo/wallet/walletsGoAccount.js +150 -0
  744. package/dist/test/unit/bitgo/wallet/walletsWebauthn.d.ts +2 -0
  745. package/dist/test/unit/bitgo/wallet/walletsWebauthn.d.ts.map +1 -0
  746. package/dist/test/unit/bitgo/wallet/walletsWebauthn.js +201 -0
  747. package/dist/test/unit/coins/ofc.d.ts +2 -0
  748. package/dist/test/unit/coins/ofc.d.ts.map +1 -0
  749. package/dist/test/unit/coins/ofc.js +124 -0
  750. package/dist/test/unit/lightning.d.ts +2 -0
  751. package/dist/test/unit/lightning.d.ts.map +1 -0
  752. package/dist/test/unit/lightning.js +23 -0
  753. package/dist/test/unit/units.d.ts.map +1 -1
  754. package/dist/test/unit/units.js +64 -64
  755. package/dist/tsconfig.tsbuildinfo +1 -1
  756. package/package.json +25 -22
  757. package/.eslintignore +0 -5
  758. package/CHANGELOG.md +0 -1866
  759. package/dist/src/account-lib/baseCoin/blsKeyPair.d.ts +0 -77
  760. package/dist/src/account-lib/baseCoin/blsKeyPair.d.ts.map +0 -1
  761. package/dist/src/account-lib/baseCoin/blsKeyPair.js +0 -209
  762. package/dist/src/account-lib/util/ed25519KeyDeriver.d.ts +0 -49
  763. package/dist/src/account-lib/util/ed25519KeyDeriver.d.ts.map +0 -1
  764. package/dist/src/account-lib/util/ed25519KeyDeriver.js +0 -87
  765. package/dist/src/bitgo/lightning/iLightning.d.ts +0 -186
  766. package/dist/src/bitgo/lightning/iLightning.d.ts.map +0 -1
  767. package/dist/src/bitgo/lightning/iLightning.js +0 -106
  768. package/dist/src/bitgo/lightning/index.d.ts +0 -5
  769. package/dist/src/bitgo/lightning/index.d.ts.map +0 -1
  770. package/dist/src/bitgo/lightning/index.js +0 -17
  771. package/dist/src/bitgo/lightning/lightning.d.ts +0 -25
  772. package/dist/src/bitgo/lightning/lightning.d.ts.map +0 -1
  773. package/dist/src/bitgo/lightning/lightning.js +0 -111
  774. package/dist/src/bitgo/lightning/lightningUtils.d.ts +0 -46
  775. package/dist/src/bitgo/lightning/lightningUtils.d.ts.map +0 -1
  776. package/dist/src/bitgo/lightning/lightningUtils.js +0 -133
  777. package/dist/src/bitgo/lightning/lnurlCodec.d.ts +0 -3
  778. package/dist/src/bitgo/lightning/lnurlCodec.d.ts.map +0 -1
  779. package/dist/src/bitgo/lightning/lnurlCodec.js +0 -28
  780. package/dist/src/bitgo/utils/blsUtils.d.ts +0 -52
  781. package/dist/src/bitgo/utils/blsUtils.d.ts.map +0 -1
  782. package/dist/src/bitgo/utils/blsUtils.js +0 -237
  783. package/dist/src/bitgo/utils/iBlsUtils.d.ts +0 -14
  784. package/dist/src/bitgo/utils/iBlsUtils.d.ts.map +0 -1
  785. package/dist/src/bitgo/utils/iBlsUtils.js +0 -3
  786. package/dist/src/coins/fiateur.d.ts +0 -31
  787. package/dist/src/coins/fiateur.d.ts.map +0 -1
  788. package/dist/src/coins/fiateur.js +0 -57
  789. package/dist/src/coins/fiatgbp.d.ts +0 -31
  790. package/dist/src/coins/fiatgbp.d.ts.map +0 -1
  791. package/dist/src/coins/fiatgbp.js +0 -57
  792. package/dist/src/coins/fiatusd.d.ts +0 -31
  793. package/dist/src/coins/fiatusd.d.ts.map +0 -1
  794. package/dist/src/coins/fiatusd.js +0 -57
  795. package/dist/src/coins/tfiateur.d.ts +0 -11
  796. package/dist/src/coins/tfiateur.d.ts.map +0 -1
  797. package/dist/src/coins/tfiateur.js +0 -17
  798. package/dist/src/coins/tfiatgbp.d.ts +0 -11
  799. package/dist/src/coins/tfiatgbp.d.ts.map +0 -1
  800. package/dist/src/coins/tfiatgbp.js +0 -17
  801. package/dist/src/coins/tfiatusd.d.ts +0 -11
  802. package/dist/src/coins/tfiatusd.d.ts.map +0 -1
  803. package/dist/src/coins/tfiatusd.js +0 -17
  804. package/dist/src/openssl/index.d.ts +0 -5
  805. package/dist/src/openssl/index.d.ts.map +0 -1
  806. package/dist/src/openssl/index.js +0 -9
  807. package/dist/test/unit/openssl.d.ts +0 -2
  808. package/dist/test/unit/openssl.d.ts.map +0 -1
  809. package/dist/test/unit/openssl.js +0 -39
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ /**
3
+ * Ed25519 safe-root public derivation material and Stellar user-key codecs.
4
+ *
5
+ * Safe backup and BitGo roots store raw public key (32 bytes) || raw chain code (32 bytes),
6
+ * encoded together as canonical unpadded RFC 4648 base32. Coin-specific public-key encodings are
7
+ * applied only to derived wallet children.
8
+ *
9
+ * The pure codecs + composite-pub encoding moved to @bitgo-beta/sdk-lib-safes. Only the WASM
10
+ * soft-derivation remains here (it needs Ed25519BIP32/Eddsa, which live in sdk-core).
11
+ */
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.softDeriveChildPubEd25519AtPath = softDeriveChildPubEd25519AtPath;
14
+ exports.softDeriveChildPubEd25519 = softDeriveChildPubEd25519;
15
+ exports.softDeriveChildPrvEd25519AtPath = softDeriveChildPrvEd25519AtPath;
16
+ exports.signEd25519Extended = signEd25519Extended;
17
+ exports.assertValidExternalEd25519Signature = assertValidExternalEd25519Signature;
18
+ const crypto_1 = require("crypto");
19
+ const account_lib_1 = require("../../account-lib");
20
+ const sdk_lib_safes_1 = require("@bitgo-beta/sdk-lib-safes");
21
+ let eddsaPromise;
22
+ function getEddsa() {
23
+ if (!eddsaPromise) {
24
+ eddsaPromise = (async () => account_lib_1.Eddsa.initialize(await account_lib_1.Ed25519BIP32.initialize()))();
25
+ eddsaPromise.catch(() => {
26
+ eddsaPromise = undefined;
27
+ });
28
+ }
29
+ return eddsaPromise;
30
+ }
31
+ /** Soft-derive an unhardened path and return the derived raw 32-byte public key. */
32
+ async function softDeriveChildPubEd25519AtPath(compositePub, path) {
33
+ (0, sdk_lib_safes_1.assertBip32Path)(path, { hardened: false });
34
+ const { pub, chainCode } = (0, sdk_lib_safes_1.decodeDerivableEd25519Pub)(compositePub);
35
+ const eddsa = await getEddsa();
36
+ return Buffer.from(eddsa.deriveUnhardened(Buffer.concat([pub, chainCode]).toString('hex'), path).slice(0, 64), 'hex');
37
+ }
38
+ /** Soft-derive `m/<index>` and return the derived raw 32-byte public key. */
39
+ async function softDeriveChildPubEd25519(compositePub, index) {
40
+ if (!Number.isInteger(index) || index < 0 || index > 0x7fffffff) {
41
+ throw new Error(`ed25519 safe co-signer derivation index must be non-hardened, got ${index}`);
42
+ }
43
+ return softDeriveChildPubEd25519AtPath(compositePub, `m/${index}`);
44
+ }
45
+ /**
46
+ * Soft-derive an ed25519 co-signer child at an unhardened path, returning the private
47
+ * extended-key material — the clamped scalar `kL`, the nonce prefix `kR`, and the matching
48
+ * public point — from a root secret seed plus the root chain code carried on the keycard.
49
+ */
50
+ async function softDeriveChildPrvEd25519AtPath(params) {
51
+ const { seedStrKey, chainCode, path } = params;
52
+ (0, sdk_lib_safes_1.assertBip32Path)(path, { hardened: false });
53
+ const seed = (0, sdk_lib_safes_1.decodeEd25519StrKeySecretSeed)(seedStrKey);
54
+ const chainCodeBuf = (0, sdk_lib_safes_1.decodeEd25519ChainCode)(chainCode);
55
+ const eddsa = await getEddsa();
56
+ const h = (0, crypto_1.createHash)('sha512').update(seed).digest();
57
+ const sk = (0, account_lib_1.clamp)((0, account_lib_1.bigIntFromBufferLE)(h.subarray(0, 32)));
58
+ const prefix = (0, account_lib_1.bigIntFromBufferBE)(h.subarray(32));
59
+ const pk = account_lib_1.Eddsa.curve.basePointMult(sk);
60
+ if (!eddsa.hdTree) {
61
+ throw new Error('Eddsa HD tree is not initialized');
62
+ }
63
+ const derived = eddsa.hdTree.privateDerive({ pk, sk, prefix, chaincode: (0, account_lib_1.bigIntFromBufferBE)(chainCodeBuf) }, path);
64
+ if (derived.prefix === undefined) {
65
+ throw new Error('soft derivation did not produce a nonce prefix');
66
+ }
67
+ return {
68
+ kL: (0, account_lib_1.bigIntToBufferLE)(derived.sk, 32),
69
+ kR: (0, account_lib_1.bigIntToBufferBE)(derived.prefix, 32),
70
+ pub: (0, account_lib_1.bigIntToBufferLE)(derived.pk, 32),
71
+ };
72
+ }
73
+ /**
74
+ * Sign `message` with a BIP32-Ed25519 extended key directly, without a seed.
75
+ *
76
+ * A soft-derived child has no 32-byte seed whose SHA-512 yields `(kL, kR)`, so the
77
+ * seed-based `nacl.sign.keyPair.fromSeed` cannot sign for it. This performs RFC 8032
78
+ * scalar signing straight from the clamped scalar `kL` and the nonce prefix `kR`.
79
+ *
80
+ * @param message bytes to sign
81
+ * @param kL 32-byte clamped signing scalar (little-endian)
82
+ * @param kR 32-byte nonce prefix (big-endian)
83
+ * @returns 64-byte Ed25519 signature `R ‖ S`
84
+ */
85
+ async function signEd25519Extended(message, kL, kR) {
86
+ if (kL.length !== 32) {
87
+ throw new Error(`Invalid Ed25519 extended key kL length: expected 32 bytes, got ${kL.length}`);
88
+ }
89
+ if (kR.length !== 32) {
90
+ throw new Error(`Invalid Ed25519 extended key kR length: expected 32 bytes, got ${kR.length}`);
91
+ }
92
+ await getEddsa();
93
+ const curve = account_lib_1.Eddsa.curve;
94
+ const kLInt = (0, account_lib_1.bigIntFromBufferLE)(kL);
95
+ const r = curve.scalarReduce((0, account_lib_1.bigIntFromBufferLE)((0, crypto_1.createHash)('sha512')
96
+ .update(Buffer.concat([kR, message]))
97
+ .digest()));
98
+ const R = curve.basePointMult(r);
99
+ const A = curve.basePointMult(kLInt);
100
+ const h = curve.scalarReduce((0, account_lib_1.bigIntFromBufferLE)((0, crypto_1.createHash)('sha512')
101
+ .update(Buffer.concat([(0, account_lib_1.bigIntToBufferLE)(R, 32), (0, account_lib_1.bigIntToBufferLE)(A, 32), message]))
102
+ .digest()));
103
+ const S = curve.scalarAdd(r, curve.scalarMult(h, kLInt));
104
+ return Buffer.concat([(0, account_lib_1.bigIntToBufferLE)(R, 32), (0, account_lib_1.bigIntToBufferLE)(S, 32)]);
105
+ }
106
+ /** Fails fast if a `ExternalEd25519Signature` has malformed hex/lengths. */
107
+ function assertValidExternalEd25519Signature(sig) {
108
+ if (!/^[0-9a-f]{64}$/i.test(sig.publicKey)) {
109
+ throw new Error('Invalid external Ed25519 public key: expected 32 bytes (64 hex characters)');
110
+ }
111
+ if (!/^[0-9a-f]{128}$/i.test(sig.signature)) {
112
+ throw new Error('Invalid external Ed25519 signature: expected 64 bytes (128 hex characters)');
113
+ }
114
+ }
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVyaXZhYmxlRWQyNTUxOVB1Yi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby9zYWZlL2Rlcml2YWJsZUVkMjU1MTlQdWIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7Ozs7Ozs7R0FTRzs7QUFzQ0gsMEVBS0M7QUFHRCw4REFLQztBQU9ELDBFQTBCQztBQWNELGtEQTRCQztBQVNELGtGQU9DO0FBNUlELG1DQUFvQztBQUNwQyxtREFRMkI7QUFDM0IsNkRBS21DO0FBU25DLElBQUksWUFBd0MsQ0FBQztBQUM3QyxTQUFTLFFBQVE7SUFDZixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDbEIsWUFBWSxHQUFHLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxtQkFBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLDBCQUFZLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDakYsWUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUU7WUFDdEIsWUFBWSxHQUFHLFNBQVMsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFDRCxPQUFPLFlBQVksQ0FBQztBQUN0QixDQUFDO0FBRUQsb0ZBQW9GO0FBQzdFLEtBQUssVUFBVSwrQkFBK0IsQ0FBQyxZQUFvQixFQUFFLElBQVk7SUFDdEYsSUFBQSwrQkFBZSxFQUFDLElBQUksRUFBRSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzNDLE1BQU0sRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLEdBQUcsSUFBQSx5Q0FBeUIsRUFBQyxZQUFZLENBQUMsQ0FBQztJQUNuRSxNQUFNLEtBQUssR0FBRyxNQUFNLFFBQVEsRUFBRSxDQUFDO0lBQy9CLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxTQUFTLENBQUMs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QUFDLENBQUMsQ0FBQztJQUN6RCxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFBLDhCQUFnQixFQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxJQUFBLDhCQUFnQixFQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDM0UsQ0FBQztBQVFELDRFQUE0RTtBQUM1RSxTQUFnQixtQ0FBbUMsQ0FBQyxHQUE2QjtJQUMvRSxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1FBQzNDLE1BQU0sSUFBSSxLQUFLLENBQUMsNEVBQTRFLENBQUMsQ0FBQztJQUNoRyxDQUFDO0lBQ0QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztRQUM1QyxNQUFNLElBQUksS0FBSyxDQUFDLDRFQUE0RSxDQUFDLENBQUM7SUFDaEcsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEVkMjU1MTkgc2FmZS1yb290IHB1YmxpYyBkZXJpdmF0aW9uIG1hdGVyaWFsIGFuZCBTdGVsbGFyIHVzZXIta2V5IGNvZGVjcy5cbiAqXG4gKiBTYWZlIGJhY2t1cCBhbmQgQml0R28gcm9vdHMgc3RvcmUgcmF3IHB1YmxpYyBrZXkgKDMyIGJ5dGVzKSB8fCByYXcgY2hhaW4gY29kZSAoMzIgYnl0ZXMpLFxuICogZW5jb2RlZCB0b2dldGhlciBhcyBjYW5vbmljYWwgdW5wYWRkZWQgUkZDIDQ2NDggYmFzZTMyLiBDb2luLXNwZWNpZmljIHB1YmxpYy1rZXkgZW5jb2RpbmdzIGFyZVxuICogYXBwbGllZCBvbmx5IHRvIGRlcml2ZWQgd2FsbGV0IGNoaWxkcmVuLlxuICpcbiAqIFRoZSBwdXJlIGNvZGVjcyArIGNvbXBvc2l0ZS1wdWIgZW5jb2RpbmcgbW92ZWQgdG8gQGJpdGdvLWJldGEvc2RrLWxpYi1zYWZlcy4gT25seSB0aGUgV0FTTVxuICogc29mdC1kZXJpdmF0aW9uIHJlbWFpbnMgaGVyZSAoaXQgbmVlZHMgRWQyNTUxOUJJUDMyL0VkZHNhLCB3aGljaCBsaXZlIGluIHNkay1jb3JlKS5cbiAqL1xuXG5pbXBvcnQgeyBjcmVhdGVIYXNoIH0gZnJvbSAnY3J5cHRvJztcbmltcG9ydCB7XG4gIEVkMjU1MTlCSVAzMixcbiAgRWRkc2EsXG4gIGJpZ0ludEZyb21CdWZmZXJCRSxcbiAgYmlnSW50RnJvbUJ1ZmZlckxFLFxuICBiaWdJbnRUb0J1ZmZlckJFLFxuICBiaWdJbnRUb0J1ZmZlckxFLFxuICBjbGFtcCxcbn0gZnJvbSAnLi4vLi4vYWNjb3VudC1saWInO1xuaW1wb3J0IHtcbiAgYXNzZXJ0QmlwMzJQYXRoLFxuICBkZWNvZGVEZXJpdmFibGVFZDI1NTE5UHViLFxuICBkZWNvZGVFZDI1NTE5Q2hhaW5Db2RlLFxuICBkZWNvZGVFZDI1NTE5U3RyS2V5U2VjcmV0U2VlZCxcbn0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWxpYi1zYWZlcyc7XG5cbi8qKiBFZDI1NTE5IGV4dGVuZGVkLWtleSBoYWx2ZXMgKyBwdWJsaWMgcG9pbnQsIHBhcmFtZXRlcmlzZWQgYnkgZW5jb2RpbmcgKEJ1ZmZlciByYXcsIHN0cmluZyBoZXgpLiAqL1xuZXhwb3J0IHR5cGUgRWQyNTUxOUV4dGVuZGVkS2V5UGFydHM8VD4gPSB7XG4gIHJlYWRvbmx5IGtMOiBUOyAvLyBjbGFtcGVkIHNpZ25pbmcgc2NhbGFyXG4gIHJlYWRvbmx5IGtSOiBUOyAvLyBub25jZSBwcmVmaXhcbiAgcmVhZG9ubHkgcHViOiBUOyAvLyAzMi1ieXRlIHB1YmxpYyBrZXlcbn07XG5cbmxldCBlZGRzYVByb21pc2U6IFByb21pc2U8RWRkc2E+IHwgdW5kZWZpbmVkO1xuZnVuY3Rpb24gZ2V0RWRkc2EoKTogUHJvbWlzZTxFZGRzYT4ge1xuICBpZiAoIWVkZHNhUHJvbWlzZSkge1xuICAgIGVkZHNhUHJvbWlzZSA9IChhc3luYyAoKSA9PiBFZGRzYS5pbml0aWFsaXplKGF3YWl0IEVkMjU1MTlCSVAzMi5pbml0aWFsaXplKCkpKSgpO1xuICAgIGVkZHNhUHJvbWlzZS5jYXRjaCgoKSA9PiB7XG4gICAgICBlZGRzYVByb21pc2UgPSB1bmRlZmluZWQ7XG4gICAgfSk7XG4gIH1cbiAgcmV0dXJuIGVkZHNhUHJvbWlzZTtcbn1cblxuLyoqIFNvZnQtZGVyaXZlIGFuIHVuaGFyZGVuZWQgcGF0aCBhbmQgcmV0dXJuIHRoZSBkZXJpdmVkIHJhdyAzMi1ieXRlIHB1YmxpYyBrZXkuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc29mdERlcml2ZUNoaWxkUHViRWQyNTUxOUF0UGF0aChjb21wb3NpdGVQdWI6IHN0cmluZywgcGF0aDogc3RyaW5nKTogUHJvbWlzZTxCdWZmZXI+IHtcbiAgYXNzZXJ0QmlwMzJQYXRoKHBhdGgsIHsgaGFyZGVuZWQ6IGZhbHNlIH0pO1xuICBjb25zdCB7IHB1YiwgY2hhaW5Db2RlIH0gPSBkZWNvZGVEZXJpdmFibGVFZDI1NTE5UHViKGNvbXBvc2l0ZVB1Yik7XG4gIGNvbnN0IGVkZHNhID0gYXdhaXQgZ2V0RWRkc2EoKTtcbiAgcmV0dXJuIEJ1ZmZlci5mcm9tKGVkZHNhLmRlcml2ZVVuaGFyZGVuZWQoQnVmZmVyLmNvbmNhdChbcHViLCBjaGFpbkNvZGVdKS50b1N0cmluZygnaGV4JyksIHBhdGgpLnNsaWNlKDAsIDY0KSwgJ2hleCcpO1xufVxuXG4vKiogU29mdC1kZXJpdmUgYG0vPGluZGV4PmAgYW5kIHJldHVybiB0aGUgZGVyaXZlZCByYXcgMzItYnl0ZSBwdWJsaWMga2V5LiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNvZnREZXJpdmVDaGlsZFB1YkVkMjU1MTkoY29tcG9zaXRlUHViOiBzdHJpbmcsIGluZGV4OiBudW1iZXIpOiBQcm9taXNlPEJ1ZmZlcj4ge1xuICBpZiAoIU51bWJlci5pc0ludGVnZXIoaW5kZXgpIHx8IGluZGV4IDwgMCB8fCBpbmRleCA+IDB4N2ZmZmZmZmYpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYGVkMjU1MTkgc2FmZSBjby1zaWduZXIgZGVyaXZhdGlvbiBpbmRleCBtdXN0IGJlIG5vbi1oYXJkZW5lZCwgZ290ICR7aW5kZXh9YCk7XG4gIH1cbiAgcmV0dXJuIHNvZnREZXJpdmVDaGlsZFB1YkVkMjU1MTlBdFBhdGgoY29tcG9zaXRlUHViLCBgbS8ke2luZGV4fWApO1xufVxuXG4vKipcbiAqIFNvZnQtZGVyaXZlIGFuIGVkMjU1MTkgY28tc2lnbmVyIGNoaWxkIGF0IGFuIHVuaGFyZGVuZWQgcGF0aCwgcmV0dXJuaW5nIHRoZSBwcml2YXRlXG4gKiBleHRlbmRlZC1rZXkgbWF0ZXJpYWwg4oCUIHRoZSBjbGFtcGVkIHNjYWxhciBga0xgLCB0aGUgbm9uY2UgcHJlZml4IGBrUmAsIGFuZCB0aGUgbWF0Y2hpbmdcbiAqIHB1YmxpYyBwb2ludCDigJQgZnJvbSBhIHJvb3Qgc2VjcmV0IHNlZWQgcGx1cyB0aGUgcm9vdCBjaGFpbiBjb2RlIGNhcnJpZWQgb24gdGhlIGtleWNhcmQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzb2Z0RGVyaXZlQ2hpbGRQcnZFZDI1NTE5QXRQYXRoKHBhcmFtczoge1xuICBzZWVkU3RyS2V5OiBzdHJpbmc7XG4gIGNoYWluQ29kZTogc3RyaW5nO1xuICBwYXRoOiBzdHJpbmc7XG59KTogUHJvbWlzZTxFZDI1NTE5RXh0ZW5kZWRLZXlQYXJ0czxCdWZmZXI+PiB7XG4gIGNvbnN0IHsgc2VlZFN0cktleSwgY2hhaW5Db2RlLCBwYXRoIH0gPSBwYXJhbXM7XG4gIGFzc2VydEJpcDMyUGF0aChwYXRoLCB7IGhhcmRlbmVkOiBmYWxzZSB9KTtcbiAgY29uc3Qgc2VlZCA9IGRlY29kZUVkMjU1MTlTdHJLZXlTZWNyZXRTZWVkKHNlZWRTdHJLZXkpO1xuICBjb25zdCBjaGFpbkNvZGVCdWYgPSBkZWNvZGVFZDI1NTE5Q2hhaW5Db2RlKGNoYWluQ29kZSk7XG4gIGNvbnN0IGVkZHNhID0gYXdhaXQgZ2V0RWRkc2EoKTtcbiAgY29uc3QgaCA9IGNyZWF0ZUhhc2goJ3NoYTUxMicpLnVwZGF0ZShzZWVkKS5kaWdlc3QoKTtcbiAgY29uc3Qgc2sgPSBjbGFtcChiaWdJbnRGcm9tQnVmZmVyTEUoaC5zdWJhcnJheSgwLCAzMikpKTtcbiAgY29uc3QgcHJlZml4ID0gYmlnSW50RnJvbUJ1ZmZlckJFKGguc3ViYXJyYXkoMzIpKTtcbiAgY29uc3QgcGsgPSBFZGRzYS5jdXJ2ZS5iYXNlUG9pbnRNdWx0KHNrKTtcbiAgaWYgKCFlZGRzYS5oZFRyZWUpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0VkZHNhIEhEIHRyZWUgaXMgbm90IGluaXRpYWxpemVkJyk7XG4gIH1cbiAgY29uc3QgZGVyaXZlZCA9IGVkZHNhLmhkVHJlZS5wcml2YXRlRGVyaXZlKHsgcGssIHNrLCBwcmVmaXgsIGNoYWluY29kZTogYmlnSW50RnJvbUJ1ZmZlckJFKGNoYWluQ29kZUJ1ZikgfSwgcGF0aCk7XG4gIGlmIChkZXJpdmVkLnByZWZpeCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdzb2Z0IGRlcml2YXRpb24gZGlkIG5vdCBwcm9kdWNlIGEgbm9uY2UgcHJlZml4Jyk7XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBrTDogYmlnSW50VG9CdWZmZXJMRShkZXJpdmVkLnNrLCAzMiksXG4gICAga1I6IGJpZ0ludFRvQnVmZmVyQkUoZGVyaXZlZC5wcmVmaXgsIDMyKSxcbiAgICBwdWI6IGJpZ0ludFRvQnVmZmVyTEUoZGVyaXZlZC5waywgMzIpLFxuICB9O1xufVxuXG4vKipcbiAqIFNpZ24gYG1lc3NhZ2VgIHdpdGggYSBCSVAzMi1FZDI1NTE5IGV4dGVuZGVkIGtleSBkaXJlY3RseSwgd2l0aG91dCBhIHNlZWQuXG4gKlxuICogQSBzb2Z0LWRlcml2ZWQgY2hpbGQgaGFzIG5vIDMyLWJ5dGUgc2VlZCB3aG9zZSBTSEEtNTEyIHlpZWxkcyBgKGtMLCBrUilgLCBzbyB0aGVcbiAqIHNlZWQtYmFzZWQgYG5hY2wuc2lnbi5rZXlQYWlyLmZyb21TZWVkYCBjYW5ub3Qgc2lnbiBmb3IgaXQuIFRoaXMgcGVyZm9ybXMgUkZDIDgwMzJcbiAqIHNjYWxhciBzaWduaW5nIHN0cmFpZ2h0IGZyb20gdGhlIGNsYW1wZWQgc2NhbGFyIGBrTGAgYW5kIHRoZSBub25jZSBwcmVmaXggYGtSYC5cbiAqXG4gKiBAcGFyYW0gbWVzc2FnZSBieXRlcyB0byBzaWduXG4gKiBAcGFyYW0ga0wgMzItYnl0ZSBjbGFtcGVkIHNpZ25pbmcgc2NhbGFyIChsaXR0bGUtZW5kaWFuKVxuICogQHBhcmFtIGtSIDMyLWJ5dGUgbm9uY2UgcHJlZml4IChiaWctZW5kaWFuKVxuICogQHJldHVybnMgNjQtYnl0ZSBFZDI1NTE5IHNpZ25hdHVyZSBgUiDigJYgU2BcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNpZ25FZDI1NTE5RXh0ZW5kZWQobWVzc2FnZTogQnVmZmVyLCBrTDogQnVmZmVyLCBrUjogQnVmZmVyKTogUHJvbWlzZTxCdWZmZXI+IHtcbiAgaWYgKGtMLmxlbmd0aCAhPT0gMzIpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgRWQyNTUxOSBleHRlbmRlZCBrZXkga0wgbGVuZ3RoOiBleHBlY3RlZCAzMiBieXRlcywgZ290ICR7a0wubGVuZ3RofWApO1xuICB9XG4gIGlmIChrUi5sZW5ndGggIT09IDMyKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIEVkMjU1MTkgZXh0ZW5kZWQga2V5IGtSIGxlbmd0aDogZXhwZWN0ZWQgMzIgYnl0ZXMsIGdvdCAke2tSLmxlbmd0aH1gKTtcbiAgfVxuICBhd2FpdCBnZXRFZGRzYSgpO1xuICBjb25zdCBjdXJ2ZSA9IEVkZHNhLmN1cnZlO1xuICBjb25zdCBrTEludCA9IGJpZ0ludEZyb21CdWZmZXJMRShrTCk7XG4gIGNvbnN0IHIgPSBjdXJ2ZS5zY2FsYXJSZWR1Y2UoXG4gICAgYmlnSW50RnJvbUJ1ZmZlckxFKFxuICAgICAgY3JlYXRlSGFzaCgnc2hhNTEyJylcbiAgICAgICAgLnVwZGF0ZShCdWZmZXIuY29uY2F0KFtrUiwgbWVzc2FnZV0pKVxuICAgICAgICAuZGlnZXN0KClcbiAgICApXG4gICk7XG4gIGNvbnN0IFIgPSBjdXJ2ZS5iYXNlUG9pbnRNdWx0KHIpO1xuICBjb25zdCBBID0gY3VydmUuYmFzZVBvaW50TXVsdChrTEludCk7XG4gIGNvbnN0IGggPSBjdXJ2ZS5zY2FsYXJSZWR1Y2UoXG4gICAgYmlnSW50RnJvbUJ1ZmZlckxFKFxuICAgICAgY3JlYXRlSGFzaCgnc2hhNTEyJylcbiAgICAgICAgLnVwZGF0ZShCdWZmZXIuY29uY2F0KFtiaWdJbnRUb0J1ZmZlckxFKFIsIDMyKSwgYmlnSW50VG9CdWZmZXJMRShBLCAzMiksIG1lc3NhZ2VdKSlcbiAgICAgICAgLmRpZ2VzdCgpXG4gICAgKVxuICApO1xuICBjb25zdCBTID0gY3VydmUuc2NhbGFyQWRkKHIsIGN1cnZlLnNjYWxhck11bHQoaCwga0xJbnQpKTtcbiAgcmV0dXJuIEJ1ZmZlci5jb25jYXQoW2JpZ0ludFRvQnVmZmVyTEUoUiwgMzIpLCBiaWdJbnRUb0J1ZmZlckxFKFMsIDMyKV0pO1xufVxuXG4vKiogQW4gZXh0ZXJuYWxseS1wcm9kdWNlZCBFZDI1NTE5IHNpZ25hdHVyZSBvdmVyIGEgdHJhbnNhY3Rpb24ncyBzaWduaW5nIG1lc3NhZ2UuICovXG5leHBvcnQgdHlwZSBFeHRlcm5hbEVkMjU1MTlTaWduYXR1cmUgPSB7XG4gIHJlYWRvbmx5IHB1YmxpY0tleTogc3RyaW5nOyAvLyByYXcgMzItYnl0ZSBwdWJsaWMga2V5IChoZXgpXG4gIHJlYWRvbmx5IHNpZ25hdHVyZTogc3RyaW5nOyAvLyByYXcgNjQtYnl0ZSBzaWduYXR1cmUgKGhleClcbn07XG5cbi8qKiBGYWlscyBmYXN0IGlmIGEgYEV4dGVybmFsRWQyNTUxOVNpZ25hdHVyZWAgaGFzIG1hbGZvcm1lZCBoZXgvbGVuZ3Rocy4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRWYWxpZEV4dGVybmFsRWQyNTUxOVNpZ25hdHVyZShzaWc6IEV4dGVybmFsRWQyNTUxOVNpZ25hdHVyZSk6IHZvaWQge1xuICBpZiAoIS9eWzAtOWEtZl17NjR9JC9pLnRlc3Qoc2lnLnB1YmxpY0tleSkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgZXh0ZXJuYWwgRWQyNTUxOSBwdWJsaWMga2V5OiBleHBlY3RlZCAzMiBieXRlcyAoNjQgaGV4IGNoYXJhY3RlcnMpJyk7XG4gIH1cbiAgaWYgKCEvXlswLTlhLWZdezEyOH0kL2kudGVzdChzaWcuc2lnbmF0dXJlKSkge1xuICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBleHRlcm5hbCBFZDI1NTE5IHNpZ25hdHVyZTogZXhwZWN0ZWQgNjQgYnl0ZXMgKDEyOCBoZXggY2hhcmFjdGVycyknKTtcbiAgfVxufVxuIl19
@@ -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,133 @@
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 { type Ed25519ExtendedKeyParts } from './derivableEd25519Pub';
9
+ import { BitGoBase } from '../bitgoBase';
10
+ export type DecryptedMpcSafeRoot = {
11
+ signing: Buffer;
12
+ vrf: Buffer;
13
+ };
14
+ export type OnchainSafeRoot = {
15
+ user: string;
16
+ backup: string;
17
+ bitgo: string;
18
+ };
19
+ export type MpcSafeRoot = {
20
+ user: DecryptedMpcSafeRoot;
21
+ backup: DecryptedMpcSafeRoot;
22
+ bitgo: string;
23
+ };
24
+ export type Ed25519MultisigSafeRoot = {
25
+ user: string;
26
+ backup: {
27
+ prv: string;
28
+ chainCode: string;
29
+ };
30
+ bitgo: string;
31
+ };
32
+ export type Secp256k1MultisigChildKeys = {
33
+ user: {
34
+ prv: string;
35
+ pub: string;
36
+ };
37
+ backup: {
38
+ prv: string;
39
+ pub: string;
40
+ };
41
+ bitgo: {
42
+ pub: string;
43
+ };
44
+ };
45
+ export type EcdsaMpcChildKeys = {
46
+ commonKeychain: string;
47
+ user: string;
48
+ backup: string;
49
+ };
50
+ export type EddsaMpcChildKeys = EcdsaMpcChildKeys;
51
+ /**
52
+ * A hardened (SLIP-0010) ed25519 child. The `kind` discriminator prevents a raw seed from being
53
+ * mistaken for an extended key downstream — both are 32-byte values that `isValidPub` would accept.
54
+ */
55
+ export type SafeEd25519SeedKey = {
56
+ readonly kind: 'seed';
57
+ readonly seed: string;
58
+ readonly pub: string;
59
+ };
60
+ /**
61
+ * A soft (BIP32-Ed25519) ed25519 child. No 32-byte seed maps back to a soft-derived child, so the
62
+ * signer needs both halves directly: `kL` (the clamped scalar) and `kR` (the nonce prefix).
63
+ */
64
+ export type SafeEd25519ExtendedKey = {
65
+ readonly kind: 'extended';
66
+ } & Ed25519ExtendedKeyParts<string>;
67
+ /** The three ed25519 co-signer children. BitGo is pub-only: its private key stays in the HSM. */
68
+ export type Ed25519MultisigChildKeys = {
69
+ user: SafeEd25519SeedKey;
70
+ backup: SafeEd25519ExtendedKey;
71
+ bitgo: {
72
+ readonly pub: string;
73
+ };
74
+ };
75
+ export type DerivedSafeWalletKeys = {
76
+ slot: 'secp256k1Multisig';
77
+ path: string;
78
+ keys: Secp256k1MultisigChildKeys;
79
+ } | {
80
+ slot: 'ecdsaMpc';
81
+ path: string;
82
+ keys: EcdsaMpcChildKeys;
83
+ } | {
84
+ slot: 'eddsaMpc';
85
+ path: string;
86
+ keys: EddsaMpcChildKeys;
87
+ } | {
88
+ slot: 'ed25519Multisig';
89
+ path: string;
90
+ keys: Ed25519MultisigChildKeys;
91
+ };
92
+ export type SafeRecoverKeyParams = {
93
+ userKey: string;
94
+ backupKey: string;
95
+ bitgoKey: string;
96
+ walletPassphrase?: string;
97
+ };
98
+ export type DecryptedSafeRoots = {
99
+ secp256k1Multisig: OnchainSafeRoot;
100
+ ed25519Multisig: Ed25519MultisigSafeRoot;
101
+ ecdsaMpc: MpcSafeRoot;
102
+ eddsaMpc: MpcSafeRoot;
103
+ };
104
+ export declare function decryptSafeKeycard(params: {
105
+ bitgo: BitGoBase;
106
+ userKeyBox: string;
107
+ backupKeyBox: string;
108
+ bitgoKeyBox: string;
109
+ password: string;
110
+ }): Promise<DecryptedSafeRoots>;
111
+ /**
112
+ * Derives a Safe wallet's child keys at the BIP44 path for a given slot and account.
113
+ * Supports all four slots: `secp256k1Multisig`, `ed25519Multisig`, `ecdsaMpc`, and `eddsaMpc`.
114
+ */
115
+ export declare function deriveSafeWalletKeys(params: {
116
+ coin: string;
117
+ slot: RootKeyType;
118
+ account: number;
119
+ roots: DecryptedSafeRoots;
120
+ }): Promise<DerivedSafeWalletKeys>;
121
+ /**
122
+ * Builds the key fields `coin.recover()` expects from derived Safe child keys.
123
+ * Only `secp256k1Multisig` (slot 1) is supported for now. Signed mode re-encrypts the
124
+ * child xprvs under a fresh ephemeral passphrase (v1/SJCL); unsigned mode returns pubs.
125
+ */
126
+ export declare function buildSafeRecoverKeyParams(params: {
127
+ bitgo: BitGoBase;
128
+ coin: string;
129
+ slot: RootKeyType;
130
+ keys: Secp256k1MultisigChildKeys;
131
+ mode: 'signed' | 'unsigned';
132
+ }): Promise<SafeRecoverKeyParams>;
133
+ //# sourceMappingURL=recovery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recovery.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/safe/recovery.ts"],"names":[],"mappings":"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"}