@bitgo/sdk-core 1.1.0-rc.2 → 1.1.0-rc.22

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 (345) hide show
  1. package/CHANGELOG.md +222 -0
  2. package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts +2 -2
  3. package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts.map +1 -1
  4. package/dist/src/account-lib/baseCoin/ed25519KeyPair.js +1 -1
  5. package/dist/src/account-lib/baseCoin/enum.d.ts +9 -4
  6. package/dist/src/account-lib/baseCoin/enum.d.ts.map +1 -1
  7. package/dist/src/account-lib/baseCoin/enum.js +15 -6
  8. package/dist/src/account-lib/baseCoin/errors.d.ts +0 -6
  9. package/dist/src/account-lib/baseCoin/errors.d.ts.map +1 -1
  10. package/dist/src/account-lib/baseCoin/errors.js +2 -11
  11. package/dist/src/account-lib/baseCoin/iface.d.ts +2 -9
  12. package/dist/src/account-lib/baseCoin/iface.d.ts.map +1 -1
  13. package/dist/src/account-lib/baseCoin/iface.js +1 -1
  14. package/dist/src/account-lib/baseCoin/index.d.ts +1 -1
  15. package/dist/src/account-lib/baseCoin/index.d.ts.map +1 -1
  16. package/dist/src/account-lib/baseCoin/index.js +3 -2
  17. package/dist/src/account-lib/index.d.ts +1 -0
  18. package/dist/src/account-lib/index.d.ts.map +1 -1
  19. package/dist/src/account-lib/index.js +2 -1
  20. package/dist/src/account-lib/mpc/curves/baseCurve.d.ts +19 -0
  21. package/dist/src/account-lib/mpc/curves/baseCurve.d.ts.map +1 -0
  22. package/dist/src/account-lib/mpc/curves/baseCurve.js +6 -0
  23. package/dist/src/account-lib/mpc/curves/ed25519.d.ts +17 -0
  24. package/dist/src/account-lib/mpc/curves/ed25519.d.ts.map +1 -0
  25. package/dist/src/account-lib/mpc/curves/ed25519.js +57 -0
  26. package/dist/src/account-lib/mpc/curves/index.d.ts +6 -0
  27. package/dist/src/account-lib/mpc/curves/index.d.ts.map +1 -0
  28. package/dist/src/account-lib/mpc/curves/index.js +8 -0
  29. package/dist/src/account-lib/mpc/curves/secp256k1.d.ts +17 -0
  30. package/dist/src/account-lib/mpc/curves/secp256k1.d.ts.map +1 -0
  31. package/dist/src/account-lib/mpc/curves/secp256k1.js +70 -0
  32. package/dist/src/account-lib/mpc/hdTree.d.ts +24 -0
  33. package/dist/src/account-lib/mpc/hdTree.d.ts.map +1 -0
  34. package/dist/src/account-lib/mpc/hdTree.js +94 -0
  35. package/dist/src/account-lib/mpc/index.d.ts +8 -0
  36. package/dist/src/account-lib/mpc/index.d.ts.map +1 -0
  37. package/dist/src/account-lib/mpc/index.js +23 -0
  38. package/dist/src/account-lib/mpc/shamir.d.ts +26 -0
  39. package/dist/src/account-lib/mpc/shamir.d.ts.map +1 -0
  40. package/dist/src/account-lib/mpc/shamir.js +86 -0
  41. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +71 -0
  42. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -0
  43. package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.js +329 -0
  44. package/dist/src/account-lib/mpc/tss/ecdsa/index.d.ts +4 -0
  45. package/dist/src/account-lib/mpc/tss/ecdsa/index.d.ts.map +1 -0
  46. package/dist/src/account-lib/mpc/tss/ecdsa/index.js +29 -0
  47. package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts +150 -0
  48. package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts.map +1 -0
  49. package/dist/src/account-lib/mpc/tss/ecdsa/types.js +3 -0
  50. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts +29 -0
  51. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts.map +1 -0
  52. package/dist/src/account-lib/mpc/tss/eddsa/eddsa.js +276 -0
  53. package/dist/src/account-lib/mpc/tss/eddsa/index.d.ts +4 -0
  54. package/dist/src/account-lib/mpc/tss/eddsa/index.d.ts.map +1 -0
  55. package/dist/src/account-lib/mpc/tss/eddsa/index.js +30 -0
  56. package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts +70 -0
  57. package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts.map +1 -0
  58. package/dist/src/account-lib/mpc/tss/eddsa/types.js +3 -0
  59. package/dist/src/account-lib/mpc/tss/index.d.ts +6 -0
  60. package/dist/src/account-lib/mpc/tss/index.d.ts.map +1 -0
  61. package/dist/src/account-lib/mpc/tss/index.js +35 -0
  62. package/dist/src/account-lib/mpc/util.d.ts +15 -0
  63. package/dist/src/account-lib/mpc/util.d.ts.map +1 -0
  64. package/dist/src/account-lib/mpc/util.js +52 -0
  65. package/dist/src/api/bip32path.d.ts +24 -0
  66. package/dist/src/api/bip32path.d.ts.map +1 -0
  67. package/dist/src/api/bip32path.js +45 -0
  68. package/dist/src/api/index.d.ts +3 -0
  69. package/dist/src/api/index.d.ts.map +1 -0
  70. package/dist/src/{v2 → api}/index.js +2 -2
  71. package/dist/src/api/types.d.ts +20 -0
  72. package/dist/src/api/types.d.ts.map +1 -0
  73. package/dist/src/api/types.js +3 -0
  74. package/dist/src/bitgo/baseCoin/baseCoin.d.ts +235 -0
  75. package/dist/src/bitgo/baseCoin/baseCoin.d.ts.map +1 -0
  76. package/dist/src/bitgo/baseCoin/baseCoin.js +300 -0
  77. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +259 -0
  78. package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -0
  79. package/dist/src/bitgo/baseCoin/iBaseCoin.js +3 -0
  80. package/dist/src/bitgo/baseCoin/index.d.ts +3 -0
  81. package/dist/src/bitgo/baseCoin/index.d.ts.map +1 -0
  82. package/dist/src/bitgo/baseCoin/index.js +15 -0
  83. package/dist/src/bitgo/bip32util.d.ts +17 -0
  84. package/dist/src/bitgo/bip32util.d.ts.map +1 -0
  85. package/dist/src/bitgo/bip32util.js +59 -0
  86. package/dist/src/bitgo/bitcoin.d.ts +16 -0
  87. package/dist/src/bitgo/bitcoin.d.ts.map +1 -0
  88. package/dist/src/bitgo/bitcoin.js +52 -0
  89. package/dist/src/bitgo/bitgoBase.d.ts +22 -0
  90. package/dist/src/bitgo/bitgoBase.d.ts.map +1 -0
  91. package/dist/src/bitgo/bitgoBase.js +3 -0
  92. package/dist/src/bitgo/coinFactory.d.ts +35 -0
  93. package/dist/src/bitgo/coinFactory.d.ts.map +1 -0
  94. package/dist/src/bitgo/coinFactory.js +59 -0
  95. package/dist/src/bitgo/config.d.ts +93 -0
  96. package/dist/src/bitgo/config.d.ts.map +1 -0
  97. package/dist/src/bitgo/config.js +72 -0
  98. package/dist/src/bitgo/ecdh.d.ts +24 -0
  99. package/dist/src/bitgo/ecdh.d.ts.map +1 -0
  100. package/dist/src/bitgo/ecdh.js +80 -0
  101. package/dist/src/bitgo/enterprise/enterprise.d.ts +64 -0
  102. package/dist/src/bitgo/enterprise/enterprise.d.ts.map +1 -0
  103. package/dist/src/bitgo/enterprise/enterprise.js +120 -0
  104. package/dist/src/bitgo/enterprise/enterprises.d.ts +25 -0
  105. package/dist/src/bitgo/enterprise/enterprises.d.ts.map +1 -0
  106. package/dist/src/bitgo/enterprise/enterprises.js +70 -0
  107. package/dist/src/bitgo/enterprise/iEnterprise.d.ts +15 -0
  108. package/dist/src/bitgo/enterprise/iEnterprise.d.ts.map +1 -0
  109. package/dist/src/bitgo/enterprise/iEnterprise.js +3 -0
  110. package/dist/src/bitgo/enterprise/iEnterprises.d.ts +10 -0
  111. package/dist/src/bitgo/enterprise/iEnterprises.d.ts.map +1 -0
  112. package/dist/src/bitgo/enterprise/iEnterprises.js +3 -0
  113. package/dist/src/bitgo/enterprise/index.d.ts +5 -0
  114. package/dist/src/bitgo/enterprise/index.d.ts.map +1 -0
  115. package/dist/src/bitgo/enterprise/index.js +17 -0
  116. package/dist/src/{v2 → bitgo}/environments.d.ts +0 -0
  117. package/dist/src/bitgo/environments.d.ts.map +1 -0
  118. package/dist/src/bitgo/environments.js +142 -0
  119. package/dist/src/bitgo/errors.d.ts +83 -0
  120. package/dist/src/bitgo/errors.d.ts.map +1 -0
  121. package/dist/src/bitgo/errors.js +163 -0
  122. package/dist/src/bitgo/index.d.ts +27 -0
  123. package/dist/src/bitgo/index.d.ts.map +1 -0
  124. package/dist/src/bitgo/index.js +52 -0
  125. package/dist/src/bitgo/internal/index.d.ts +3 -0
  126. package/dist/src/bitgo/internal/index.d.ts.map +1 -0
  127. package/dist/src/bitgo/internal/index.js +15 -0
  128. package/dist/src/bitgo/internal/internal.d.ts +19 -0
  129. package/dist/src/bitgo/internal/internal.d.ts.map +1 -0
  130. package/dist/src/bitgo/internal/internal.js +33 -0
  131. package/dist/src/bitgo/internal/keycard.d.ts +33 -0
  132. package/dist/src/bitgo/internal/keycard.d.ts.map +1 -0
  133. package/dist/src/bitgo/internal/keycard.js +304 -0
  134. package/dist/src/bitgo/keychain/iKeychains.d.ts +118 -0
  135. package/dist/src/bitgo/keychain/iKeychains.d.ts.map +1 -0
  136. package/dist/src/bitgo/keychain/iKeychains.js +10 -0
  137. package/dist/src/bitgo/keychain/index.d.ts +3 -0
  138. package/dist/src/bitgo/keychain/index.d.ts.map +1 -0
  139. package/dist/src/bitgo/keychain/index.js +15 -0
  140. package/dist/src/bitgo/keychain/keychains.d.ts +90 -0
  141. package/dist/src/bitgo/keychain/keychains.d.ts.map +1 -0
  142. package/dist/src/bitgo/keychain/keychains.js +280 -0
  143. package/dist/src/bitgo/market/iMarkets.d.ts +12 -0
  144. package/dist/src/bitgo/market/iMarkets.d.ts.map +1 -0
  145. package/dist/src/bitgo/market/iMarkets.js +3 -0
  146. package/dist/src/bitgo/market/index.d.ts +3 -0
  147. package/dist/src/bitgo/market/index.d.ts.map +1 -0
  148. package/dist/src/bitgo/market/index.js +15 -0
  149. package/dist/src/bitgo/market/markets.d.ts +29 -0
  150. package/dist/src/bitgo/market/markets.d.ts.map +1 -0
  151. package/dist/src/bitgo/market/markets.js +70 -0
  152. package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts +73 -0
  153. package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts.map +1 -0
  154. package/dist/src/bitgo/pendingApproval/iPendingApproval.js +28 -0
  155. package/dist/src/bitgo/pendingApproval/iPendingApprovals.d.ts +16 -0
  156. package/dist/src/bitgo/pendingApproval/iPendingApprovals.d.ts.map +1 -0
  157. package/dist/src/bitgo/pendingApproval/iPendingApprovals.js +3 -0
  158. package/dist/src/bitgo/pendingApproval/index.d.ts +5 -0
  159. package/dist/src/bitgo/pendingApproval/index.d.ts.map +1 -0
  160. package/dist/src/bitgo/pendingApproval/index.js +17 -0
  161. package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts +99 -0
  162. package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts.map +1 -0
  163. package/dist/src/bitgo/pendingApproval/pendingApproval.js +319 -0
  164. package/dist/src/bitgo/pendingApproval/pendingApprovals.d.ts +19 -0
  165. package/dist/src/bitgo/pendingApproval/pendingApprovals.d.ts.map +1 -0
  166. package/dist/src/bitgo/pendingApproval/pendingApprovals.js +76 -0
  167. package/dist/src/bitgo/recovery/index.d.ts +2 -0
  168. package/dist/src/bitgo/recovery/index.d.ts.map +1 -0
  169. package/dist/src/bitgo/recovery/index.js +14 -0
  170. package/dist/src/bitgo/recovery/initiate.d.ts +49 -0
  171. package/dist/src/bitgo/recovery/initiate.d.ts.map +1 -0
  172. package/dist/src/bitgo/recovery/initiate.js +119 -0
  173. package/dist/src/bitgo/staking/iStakingWallet.d.ts +69 -0
  174. package/dist/src/bitgo/staking/iStakingWallet.d.ts.map +1 -0
  175. package/dist/src/bitgo/staking/iStakingWallet.js +3 -0
  176. package/dist/src/bitgo/staking/index.d.ts +3 -0
  177. package/dist/src/bitgo/staking/index.d.ts.map +1 -0
  178. package/dist/src/bitgo/staking/index.js +15 -0
  179. package/dist/src/bitgo/staking/stakingWallet.d.ts +67 -0
  180. package/dist/src/bitgo/staking/stakingWallet.d.ts.map +1 -0
  181. package/dist/src/bitgo/staking/stakingWallet.js +153 -0
  182. package/dist/src/bitgo/trading/affirmation.d.ts +35 -0
  183. package/dist/src/bitgo/trading/affirmation.d.ts.map +1 -0
  184. package/dist/src/bitgo/trading/affirmation.js +53 -0
  185. package/dist/src/bitgo/trading/affirmations.d.ts +23 -0
  186. package/dist/src/bitgo/trading/affirmations.d.ts.map +1 -0
  187. package/dist/src/bitgo/trading/affirmations.js +45 -0
  188. package/dist/src/bitgo/trading/iAffirmation.d.ts +15 -0
  189. package/dist/src/bitgo/trading/iAffirmation.d.ts.map +1 -0
  190. package/dist/src/bitgo/trading/iAffirmation.js +13 -0
  191. package/dist/src/bitgo/trading/iAffirmations.d.ts +10 -0
  192. package/dist/src/bitgo/trading/iAffirmations.d.ts.map +1 -0
  193. package/dist/src/bitgo/trading/iAffirmations.js +3 -0
  194. package/dist/src/bitgo/trading/iSettlement.d.ts +25 -0
  195. package/dist/src/bitgo/trading/iSettlement.d.ts.map +1 -0
  196. package/dist/src/bitgo/trading/iSettlement.js +17 -0
  197. package/dist/src/bitgo/trading/iSettlements.d.ts +19 -0
  198. package/dist/src/bitgo/trading/iSettlements.d.ts.map +1 -0
  199. package/dist/src/bitgo/trading/iSettlements.js +3 -0
  200. package/dist/src/bitgo/trading/iTradingAccount.d.ts +41 -0
  201. package/dist/src/bitgo/trading/iTradingAccount.d.ts.map +1 -0
  202. package/dist/src/bitgo/trading/iTradingAccount.js +3 -0
  203. package/dist/src/bitgo/trading/iTradingPartner.d.ts +14 -0
  204. package/dist/src/bitgo/trading/iTradingPartner.d.ts.map +1 -0
  205. package/dist/src/bitgo/trading/iTradingPartner.js +17 -0
  206. package/dist/src/bitgo/trading/iTradingPartners.d.ts +15 -0
  207. package/dist/src/bitgo/trading/iTradingPartners.d.ts.map +1 -0
  208. package/dist/src/bitgo/trading/iTradingPartners.js +9 -0
  209. package/dist/src/bitgo/trading/index.d.ts +18 -0
  210. package/dist/src/bitgo/trading/index.d.ts.map +1 -0
  211. package/dist/src/bitgo/trading/index.js +30 -0
  212. package/dist/src/bitgo/trading/lock.d.ts +16 -0
  213. package/dist/src/bitgo/trading/lock.d.ts.map +1 -0
  214. package/dist/src/bitgo/trading/lock.js +12 -0
  215. package/dist/src/bitgo/trading/payload.d.ts +22 -0
  216. package/dist/src/bitgo/trading/payload.d.ts.map +1 -0
  217. package/dist/src/bitgo/trading/payload.js +3 -0
  218. package/dist/src/bitgo/trading/settlement.d.ts +16 -0
  219. package/dist/src/bitgo/trading/settlement.d.ts.map +1 -0
  220. package/dist/src/bitgo/trading/settlement.js +21 -0
  221. package/dist/src/bitgo/trading/settlements.d.ts +32 -0
  222. package/dist/src/bitgo/trading/settlements.d.ts.map +1 -0
  223. package/dist/src/bitgo/trading/settlements.js +61 -0
  224. package/dist/src/bitgo/trading/trade.d.ts +29 -0
  225. package/dist/src/bitgo/trading/trade.d.ts.map +1 -0
  226. package/dist/src/bitgo/trading/trade.js +11 -0
  227. package/dist/src/bitgo/trading/tradingAccount.d.ts +53 -0
  228. package/dist/src/bitgo/trading/tradingAccount.d.ts.map +1 -0
  229. package/dist/src/bitgo/trading/tradingAccount.js +127 -0
  230. package/dist/src/bitgo/trading/tradingPartner.d.ts +26 -0
  231. package/dist/src/bitgo/trading/tradingPartner.d.ts.map +1 -0
  232. package/dist/src/bitgo/trading/tradingPartner.js +31 -0
  233. package/dist/src/bitgo/trading/tradingPartners.d.ts +24 -0
  234. package/dist/src/bitgo/trading/tradingPartners.d.ts.map +1 -0
  235. package/dist/src/bitgo/trading/tradingPartners.js +32 -0
  236. package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts +35 -0
  237. package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts.map +1 -0
  238. package/dist/src/bitgo/tss/ecdsa/ecdsa.js +95 -0
  239. package/dist/src/bitgo/tss/ecdsa/index.d.ts +4 -0
  240. package/dist/src/bitgo/tss/ecdsa/index.d.ts.map +1 -0
  241. package/dist/src/bitgo/tss/ecdsa/index.js +26 -0
  242. package/dist/src/bitgo/tss/ecdsa/types.d.ts +30 -0
  243. package/dist/src/bitgo/tss/ecdsa/types.d.ts.map +1 -0
  244. package/dist/src/bitgo/tss/ecdsa/types.js +3 -0
  245. package/dist/src/bitgo/tss/eddsa/eddsa.d.ts +102 -0
  246. package/dist/src/bitgo/tss/eddsa/eddsa.d.ts.map +1 -0
  247. package/dist/src/bitgo/tss/eddsa/eddsa.js +256 -0
  248. package/dist/src/bitgo/tss/eddsa/index.d.ts +6 -0
  249. package/dist/src/bitgo/tss/eddsa/index.d.ts.map +1 -0
  250. package/dist/src/bitgo/tss/eddsa/index.js +37 -0
  251. package/dist/src/bitgo/tss/eddsa/types.d.ts +23 -0
  252. package/dist/src/bitgo/tss/eddsa/types.d.ts.map +1 -0
  253. package/dist/src/bitgo/tss/eddsa/types.js +3 -0
  254. package/dist/src/bitgo/tss/index.d.ts +6 -0
  255. package/dist/src/bitgo/tss/index.d.ts.map +1 -0
  256. package/dist/src/bitgo/tss/index.js +42 -0
  257. package/dist/src/bitgo/tss/types.d.ts +6 -0
  258. package/dist/src/bitgo/tss/types.d.ts.map +1 -0
  259. package/dist/src/bitgo/tss/types.js +10 -0
  260. package/dist/src/bitgo/types.d.ts +4 -0
  261. package/dist/src/bitgo/types.d.ts.map +1 -0
  262. package/dist/src/bitgo/types.js +3 -0
  263. package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts +6 -0
  264. package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts.map +1 -0
  265. package/dist/src/bitgo/utils/abstractUtxoCoinUtil.js +30 -0
  266. package/dist/src/bitgo/utils/blsUtils.d.ts +51 -0
  267. package/dist/src/bitgo/utils/blsUtils.d.ts.map +1 -0
  268. package/dist/src/bitgo/utils/blsUtils.js +166 -0
  269. package/dist/src/bitgo/utils/iBlsUtils.d.ts +14 -0
  270. package/dist/src/bitgo/utils/iBlsUtils.d.ts.map +1 -0
  271. package/dist/src/bitgo/utils/iBlsUtils.js +3 -0
  272. package/dist/src/bitgo/utils/index.d.ts +12 -0
  273. package/dist/src/bitgo/utils/index.d.ts.map +1 -0
  274. package/dist/src/bitgo/utils/index.js +37 -0
  275. package/dist/src/bitgo/utils/mpcUtils.d.ts +31 -0
  276. package/dist/src/bitgo/utils/mpcUtils.d.ts.map +1 -0
  277. package/dist/src/bitgo/utils/mpcUtils.js +55 -0
  278. package/dist/src/bitgo/utils/opengpgUtils.d.ts +51 -0
  279. package/dist/src/bitgo/utils/opengpgUtils.d.ts.map +1 -0
  280. package/dist/src/bitgo/utils/opengpgUtils.js +136 -0
  281. package/dist/src/bitgo/utils/promise-utils.d.ts +5 -0
  282. package/dist/src/bitgo/utils/promise-utils.d.ts.map +1 -0
  283. package/dist/src/bitgo/utils/promise-utils.js +12 -0
  284. package/dist/src/bitgo/utils/triple.d.ts +3 -0
  285. package/dist/src/bitgo/utils/triple.d.ts.map +1 -0
  286. package/dist/src/bitgo/utils/triple.js +8 -0
  287. package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts +118 -0
  288. package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts.map +1 -0
  289. package/dist/src/bitgo/utils/tss/eddsa/eddsa.js +352 -0
  290. package/dist/src/bitgo/utils/tss/eddsa/index.d.ts +5 -0
  291. package/dist/src/bitgo/utils/tss/eddsa/index.d.ts.map +1 -0
  292. package/dist/src/bitgo/utils/tss/eddsa/index.js +29 -0
  293. package/dist/src/bitgo/utils/tss/eddsa/types.d.ts +73 -0
  294. package/dist/src/bitgo/utils/tss/eddsa/types.d.ts.map +1 -0
  295. package/dist/src/bitgo/utils/tss/eddsa/types.js +10 -0
  296. package/dist/src/bitgo/utils/tss/index.d.ts +4 -0
  297. package/dist/src/bitgo/utils/tss/index.d.ts.map +1 -0
  298. package/dist/src/bitgo/utils/tss/index.js +29 -0
  299. package/dist/src/bitgo/utils/util.d.ts +77 -0
  300. package/dist/src/bitgo/utils/util.d.ts.map +1 -0
  301. package/dist/src/bitgo/utils/util.js +198 -0
  302. package/dist/src/bitgo/wallet/iWallet.d.ts +518 -0
  303. package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -0
  304. package/dist/src/bitgo/wallet/iWallet.js +3 -0
  305. package/dist/src/bitgo/wallet/iWallets.d.ts +105 -0
  306. package/dist/src/bitgo/wallet/iWallets.d.ts.map +1 -0
  307. package/dist/src/bitgo/wallet/iWallets.js +3 -0
  308. package/dist/src/bitgo/wallet/index.d.ts +5 -0
  309. package/dist/src/bitgo/wallet/index.d.ts.map +1 -0
  310. package/dist/src/bitgo/wallet/index.js +17 -0
  311. package/dist/src/bitgo/wallet/wallet.d.ts +656 -0
  312. package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -0
  313. package/dist/src/bitgo/wallet/wallet.js +2056 -0
  314. package/dist/src/bitgo/wallet/wallets.d.ts +134 -0
  315. package/dist/src/bitgo/wallet/wallets.d.ts.map +1 -0
  316. package/dist/src/bitgo/wallet/wallets.js +605 -0
  317. package/dist/src/bitgo/webhook/iWebhooks.d.ts +26 -0
  318. package/dist/src/bitgo/webhook/iWebhooks.d.ts.map +1 -0
  319. package/dist/src/bitgo/webhook/iWebhooks.js +3 -0
  320. package/dist/src/bitgo/webhook/index.d.ts +3 -0
  321. package/dist/src/bitgo/webhook/index.d.ts.map +1 -0
  322. package/dist/src/bitgo/webhook/index.js +15 -0
  323. package/dist/src/bitgo/webhook/webhooks.d.ts +43 -0
  324. package/dist/src/bitgo/webhook/webhooks.d.ts.map +1 -0
  325. package/dist/src/bitgo/webhook/webhooks.js +102 -0
  326. package/dist/src/{bigojsError.d.ts → bitgojsError.d.ts} +1 -1
  327. package/dist/src/bitgojsError.d.ts.map +1 -0
  328. package/dist/src/bitgojsError.js +11 -0
  329. package/dist/src/common.d.ts +1 -1
  330. package/dist/src/common.d.ts.map +1 -1
  331. package/dist/src/common.js +3 -3
  332. package/dist/src/index.d.ts +3 -2
  333. package/dist/src/index.d.ts.map +1 -1
  334. package/dist/src/index.js +5 -5
  335. package/dist/tsconfig.tsbuildinfo +2817 -1848
  336. package/package.json +15 -6
  337. package/dist/src/bigojsError.d.ts.map +0 -1
  338. package/dist/src/bigojsError.js +0 -11
  339. package/dist/src/v2/environments.d.ts.map +0 -1
  340. package/dist/src/v2/environments.js +0 -142
  341. package/dist/src/v2/index.d.ts +0 -3
  342. package/dist/src/v2/index.d.ts.map +0 -1
  343. package/dist/src/v2/types.d.ts +0 -2
  344. package/dist/src/v2/types.d.ts.map +0 -1
  345. package/dist/src/v2/types.js +0 -3
@@ -0,0 +1,49 @@
1
+ /**
2
+ * @prettier
3
+ */
4
+ import * as bip32 from 'bip32';
5
+ import { BaseCoin } from '../baseCoin';
6
+ import { BitGoBase } from '../bitgoBase';
7
+ import { KrsProvider } from '../config';
8
+ interface ValidateKeyOptions {
9
+ key: string;
10
+ source: string;
11
+ passphrase?: string;
12
+ isUnsignedSweep: boolean;
13
+ isKrsRecovery: boolean;
14
+ }
15
+ export interface InitiateRecoveryOptions {
16
+ userKey: string;
17
+ backupKey: string;
18
+ bitgoKey?: string;
19
+ recoveryDestination: string;
20
+ walletPassphrase?: string;
21
+ }
22
+ declare type GetKrsProviderOptions = {
23
+ checkCoinFamilySupport?: boolean;
24
+ };
25
+ /**
26
+ * @param coin
27
+ * @param krsProviderName
28
+ * @param checkCoinFamilySupport - assert that krsProvider explicitly supports coin
29
+ * @return KrsProvider
30
+ */
31
+ export declare function getKrsProvider(coin: BaseCoin, krsProviderName: string | undefined, { checkCoinFamilySupport }?: GetKrsProviderOptions): KrsProvider;
32
+ /**
33
+ * Wrapper for {@see getKrsProvider} returning void
34
+ */
35
+ export declare function checkKrsProvider(coin: BaseCoin, krsProviderName: string | undefined, options?: GetKrsProviderOptions): void;
36
+ export declare function getIsKrsRecovery({ backupKey, userKey }: {
37
+ backupKey: string;
38
+ userKey: string;
39
+ }): boolean;
40
+ export declare function getIsUnsignedSweep({ backupKey, userKey }: {
41
+ backupKey: string;
42
+ userKey: string;
43
+ }): boolean;
44
+ export declare function validateKey(bitgo: BitGoBase, { key, source, passphrase, isUnsignedSweep, isKrsRecovery }: ValidateKeyOptions): bip32.BIP32Interface;
45
+ export declare function getBip32Keys(bitgo: BitGoBase, params: InitiateRecoveryOptions, { requireBitGoXpub }: {
46
+ requireBitGoXpub: boolean;
47
+ }): bip32.BIP32Interface[];
48
+ export {};
49
+ //# sourceMappingURL=initiate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initiate.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/recovery/initiate.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,WAAW,EAAgB,MAAM,WAAW,CAAC;AAEtD,UAAU,kBAAkB;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,aAAK,qBAAqB,GAAG;IAAE,sBAAsB,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAElE;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,QAAQ,EACd,eAAe,EAAE,MAAM,GAAG,SAAS,EACnC,EAAE,sBAA6B,EAAE,GAAE,qBAA0B,GAC5D,WAAW,CAgBb;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,QAAQ,EACd,eAAe,EAAE,MAAM,GAAG,SAAS,EACnC,OAAO,GAAE,qBAA0B,GAClC,IAAI,CAEN;AAED,wBAAgB,gBAAgB,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAExG;AAED,wBAAgB,kBAAkB,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAE1G;AAED,wBAAgB,WAAW,CACzB,KAAK,EAAE,SAAS,EAChB,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,aAAa,EAAE,EAAE,kBAAkB,GAC9E,KAAK,CAAC,cAAc,CAgBtB;AAED,wBAAgB,YAAY,CAC1B,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,uBAAuB,EAC/B,EAAE,gBAAgB,EAAE,EAAE;IAAE,gBAAgB,EAAE,OAAO,CAAA;CAAE,GAClD,KAAK,CAAC,cAAc,EAAE,CAmCxB"}
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ /**
3
+ * @prettier
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
8
+ }) : (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ o[k2] = m[k];
11
+ }));
12
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
13
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
14
+ }) : function(o, v) {
15
+ o["default"] = v;
16
+ });
17
+ var __importStar = (this && this.__importStar) || function (mod) {
18
+ if (mod && mod.__esModule) return mod;
19
+ var result = {};
20
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
21
+ __setModuleDefault(result, mod);
22
+ return result;
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ exports.getBip32Keys = exports.validateKey = exports.getIsUnsignedSweep = exports.getIsKrsRecovery = exports.checkKrsProvider = exports.getKrsProvider = void 0;
26
+ const bip32 = __importStar(require("bip32"));
27
+ const config_1 = require("../config");
28
+ /**
29
+ * @param coin
30
+ * @param krsProviderName
31
+ * @param checkCoinFamilySupport - assert that krsProvider explicitly supports coin
32
+ * @return KrsProvider
33
+ */
34
+ function getKrsProvider(coin, krsProviderName, { checkCoinFamilySupport = true } = {}) {
35
+ if (!krsProviderName) {
36
+ throw new Error(`no krsProvider name`);
37
+ }
38
+ const krsProvider = config_1.krsProviders[krsProviderName];
39
+ if (krsProvider === undefined) {
40
+ throw new Error('unknown key recovery service provider');
41
+ }
42
+ if (checkCoinFamilySupport && !krsProvider.supportedCoins.includes(coin.getFamily())) {
43
+ throw new Error('specified key recovery service does not support recoveries for this coin');
44
+ }
45
+ return krsProvider;
46
+ }
47
+ exports.getKrsProvider = getKrsProvider;
48
+ /**
49
+ * Wrapper for {@see getKrsProvider} returning void
50
+ */
51
+ function checkKrsProvider(coin, krsProviderName, options = {}) {
52
+ getKrsProvider(coin, krsProviderName, options);
53
+ }
54
+ exports.checkKrsProvider = checkKrsProvider;
55
+ function getIsKrsRecovery({ backupKey, userKey }) {
56
+ return backupKey.startsWith('xpub') && !userKey.startsWith('xpub');
57
+ }
58
+ exports.getIsKrsRecovery = getIsKrsRecovery;
59
+ function getIsUnsignedSweep({ backupKey, userKey }) {
60
+ return backupKey.startsWith('xpub') && userKey.startsWith('xpub');
61
+ }
62
+ exports.getIsUnsignedSweep = getIsUnsignedSweep;
63
+ function validateKey(bitgo, { key, source, passphrase, isUnsignedSweep, isKrsRecovery }) {
64
+ if (!key.startsWith('xprv') && !isUnsignedSweep) {
65
+ // Try to decrypt the key
66
+ try {
67
+ if (source === 'user' || (source === 'backup' && !isKrsRecovery)) {
68
+ return bip32.fromBase58(bitgo.decrypt({ password: passphrase, input: key }));
69
+ }
70
+ }
71
+ catch (e) {
72
+ throw new Error(`Failed to decrypt ${source} key with passcode - try again!`);
73
+ }
74
+ }
75
+ try {
76
+ return bip32.fromBase58(key);
77
+ }
78
+ catch (e) {
79
+ throw new Error(`Failed to validate ${source} key - try again!`);
80
+ }
81
+ }
82
+ exports.validateKey = validateKey;
83
+ function getBip32Keys(bitgo, params, { requireBitGoXpub }) {
84
+ const isKrsRecovery = getIsKrsRecovery(params);
85
+ const isUnsignedSweep = getIsUnsignedSweep(params);
86
+ const keys = [
87
+ // Box A
88
+ validateKey(bitgo, {
89
+ key: params.userKey,
90
+ source: 'user',
91
+ passphrase: params.walletPassphrase,
92
+ isKrsRecovery,
93
+ isUnsignedSweep,
94
+ }),
95
+ // Box B
96
+ validateKey(bitgo, {
97
+ key: params.backupKey,
98
+ source: 'backup',
99
+ passphrase: params.walletPassphrase,
100
+ isKrsRecovery,
101
+ isUnsignedSweep,
102
+ }),
103
+ ];
104
+ if (requireBitGoXpub) {
105
+ if (!params.bitgoKey) {
106
+ throw new Error(`BitGo xpub required but not provided`);
107
+ }
108
+ try {
109
+ // Box C
110
+ keys.push(bip32.fromBase58(params.bitgoKey));
111
+ }
112
+ catch (e) {
113
+ throw new Error('Failed to parse bitgo xpub!');
114
+ }
115
+ }
116
+ return keys;
117
+ }
118
+ exports.getBip32Keys = getBip32Keys;
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdGlhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vcmVjb3ZlcnkvaW5pdGlhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUgsNkNBQStCO0FBRy9CLHNDQUFzRDtBQW9CdEQ7Ozs7O0dBS0c7QUFDSCxTQUFnQixjQUFjLENBQzVCLElBQWMsRUFDZCxlQUFtQyxFQUNuQyxFQUFFLHNCQUFzQixHQUFHLElBQUksS0FBNEIsRUFBRTtJQUU3RCxJQUFJLENBQUMsZUFBZSxFQUFFO1FBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztLQUN4QztJQUVELE1BQU0sV0FBVyxHQUFHLHFCQUFZLENBQUMsZUFBZSxDQUFDLENBQUM7SUFFbEQsSUFBSSxXQUFXLEtBQUssU0FBUyxFQUFFO1FBQzdCLE1BQU0sSUFBSSxLQUFLLENBQUMsdUNBQXVDLENBQUMsQ0FBQztLQUMxRDtJQUVELElBQUksc0JBQXNCLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsRUFBRTtRQUNwRixNQUFNLElBQUksS0FBSyxDQUFDLDBFQUEwRSxDQUFDLENBQUM7S0FDN0Y7SUFFRCxPQUFPLFdBQVcsQ0FBQztBQUNyQixDQUFDO0FBcEJELHdDQW9CQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsZ0JBQWdCLENBQzlCLElBQWMsRUFDZCxlQUFtQyxFQUNuQyxVQUFpQyxFQUFFO0lBRW5DLGNBQWMsQ0FBQyxJQUFJLEVBQUUsZUFBZSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ2pELENBQUM7QUFORCw0Q0FNQztBQUVELFNBQWdCLGdCQUFnQixDQUFDLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBMEM7SUFDN0YsT0FBTyxTQUFTLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUNyRSxDQUFDO0FBRkQsNENBRUM7QUFFRCxTQUFnQixrQkFBa0IsQ0FBQyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQTBDO0lBQy9GLE9BQU8sU0FBUyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxPQUFPLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ3BFLENBQUM7QUFGRCxnREFFQztBQUVELFNBQWdCLFdBQVcsQ0FDekIsS0FBZ0IsRUFDaEIsRUFBRSxHQUFHLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFzQjtJQUUvRSxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRTtRQUMvQyx5QkFBeUI7UUFDekIsSUFBSTtZQUNGLElBQUksTUFBTSxLQUFLLE1BQU0sSUFBSSxDQUFDLE1BQU0sS0FBSyxRQUFRLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRTtnQkFDaEUsT0FBTyxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7YUFDOUU7U0FDRjtRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsTUFBTSxpQ0FBaUMsQ0FBQyxDQUFDO1NBQy9FO0tBQ0Y7SUFDRCxJQUFJO1FBQ0YsT0FBTyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0tBQzlCO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDVixNQUFNLElBQUksS0FBSyxDQUFDLHNCQUFzQixNQUFNLG1CQUFtQixDQUFDLENBQUM7S0FDbEU7QUFDSCxDQUFDO0FBbkJELGtDQW1CQztBQUVELFNBQWdCLFlBQVksQ0FDMUIsS0FBZ0IsRUFDaEIsTUFBK0IsRUFDL0IsRUFBRSxnQkFBZ0IsRUFBaUM7SUFFbkQsTUFBTSxhQUFhLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDL0MsTUFBTSxlQUFlLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbkQsTUFBTSxJQUFJLEdBQUc7UUFDWCxRQUFRO1FBQ1IsV0FBVyxDQUFDLEtBQUssRUFBRTtZQUNqQixHQUFHLEVBQUUsTUFBTSxDQUFDLE9BQU87WUFDbkIsTUFBTSxFQUFFLE1BQU07WUFDZCxVQUFVLEVBQUUsTUFBTSxDQUFDLGdCQUFnQjtZQUNuQyxhQUFhO1lBQ2IsZUFBZTtTQUNoQixDQUFDO1FBQ0YsUUFBUTtRQUNSLFdBQVcsQ0FBQyxLQUFLLEVBQUU7WUFDakIsR0FBRyxFQUFFLE1BQU0sQ0FBQyxTQUFTO1lBQ3JCLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLFVBQVUsRUFBRSxNQUFNLENBQUMsZ0JBQWdCO1lBQ25DLGFBQWE7WUFDYixlQUFlO1NBQ2hCLENBQUM7S0FDSCxDQUFDO0lBRUYsSUFBSSxnQkFBZ0IsRUFBRTtRQUNwQixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRTtZQUNwQixNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxDQUFDLENBQUM7U0FDekQ7UUFDRCxJQUFJO1lBQ0YsUUFBUTtZQUNSLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztTQUM5QztRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsTUFBTSxJQUFJLEtBQUssQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO1NBQ2hEO0tBQ0Y7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUF2Q0Qsb0NBdUNDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuXG5pbXBvcnQgKiBhcyBiaXAzMiBmcm9tICdiaXAzMic7XG5pbXBvcnQgeyBCYXNlQ29pbiB9IGZyb20gJy4uL2Jhc2VDb2luJztcbmltcG9ydCB7IEJpdEdvQmFzZSB9IGZyb20gJy4uL2JpdGdvQmFzZSc7XG5pbXBvcnQgeyBLcnNQcm92aWRlciwga3JzUHJvdmlkZXJzIH0gZnJvbSAnLi4vY29uZmlnJztcblxuaW50ZXJmYWNlIFZhbGlkYXRlS2V5T3B0aW9ucyB7XG4gIGtleTogc3RyaW5nO1xuICBzb3VyY2U6IHN0cmluZztcbiAgcGFzc3BocmFzZT86IHN0cmluZztcbiAgaXNVbnNpZ25lZFN3ZWVwOiBib29sZWFuO1xuICBpc0tyc1JlY292ZXJ5OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluaXRpYXRlUmVjb3ZlcnlPcHRpb25zIHtcbiAgdXNlcktleTogc3RyaW5nO1xuICBiYWNrdXBLZXk6IHN0cmluZztcbiAgYml0Z29LZXk/OiBzdHJpbmc7IC8vIG9wdGlvbmFsIGZvciB4cnAgcmVjb3Zlcmllc1xuICByZWNvdmVyeURlc3RpbmF0aW9uOiBzdHJpbmc7XG4gIHdhbGxldFBhc3NwaHJhc2U/OiBzdHJpbmc7XG59XG5cbnR5cGUgR2V0S3JzUHJvdmlkZXJPcHRpb25zID0geyBjaGVja0NvaW5GYW1pbHlTdXBwb3J0PzogYm9vbGVhbiB9O1xuXG4vKipcbiAqIEBwYXJhbSBjb2luXG4gKiBAcGFyYW0ga3JzUHJvdmlkZXJOYW1lXG4gKiBAcGFyYW0gY2hlY2tDb2luRmFtaWx5U3VwcG9ydCAtIGFzc2VydCB0aGF0IGtyc1Byb3ZpZGVyIGV4cGxpY2l0bHkgc3VwcG9ydHMgY29pblxuICogQHJldHVybiBLcnNQcm92aWRlclxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0S3JzUHJvdmlkZXIoXG4gIGNvaW46IEJhc2VDb2luLFxuICBrcnNQcm92aWRlck5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZCxcbiAgeyBjaGVja0NvaW5GYW1pbHlTdXBwb3J0ID0gdHJ1ZSB9OiBHZXRLcnNQcm92aWRlck9wdGlvbnMgPSB7fVxuKTogS3JzUHJvdmlkZXIge1xuICBpZiAoIWtyc1Byb3ZpZGVyTmFtZSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgbm8ga3JzUHJvdmlkZXIgbmFtZWApO1xuICB9XG5cbiAgY29uc3Qga3JzUHJvdmlkZXIgPSBrcnNQcm92aWRlcnNba3JzUHJvdmlkZXJOYW1lXTtcblxuICBpZiAoa3JzUHJvdmlkZXIgPT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IG5ldyBFcnJvcigndW5rbm93biBrZXkgcmVjb3Zlcnkgc2VydmljZSBwcm92aWRlcicpO1xuICB9XG5cbiAgaWYgKGNoZWNrQ29pbkZhbWlseVN1cHBvcnQgJiYgIWtyc1Byb3ZpZGVyLnN1cHBvcnRlZENvaW5zLmluY2x1ZGVzKGNvaW4uZ2V0RmFtaWx5KCkpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdzcGVjaWZpZWQga2V5IHJlY292ZXJ5IHNlcnZpY2UgZG9lcyBub3Qgc3VwcG9ydCByZWNvdmVyaWVzIGZvciB0aGlzIGNvaW4nKTtcbiAgfVxuXG4gIHJldHVybiBrcnNQcm92aWRlcjtcbn1cblxuLyoqXG4gKiBXcmFwcGVyIGZvciB7QHNlZSBnZXRLcnNQcm92aWRlcn0gcmV0dXJuaW5nIHZvaWRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNoZWNrS3JzUHJvdmlkZXIoXG4gIGNvaW46IEJhc2VDb2luLFxuICBrcnNQcm92aWRlck5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZCxcbiAgb3B0aW9uczogR2V0S3JzUHJvdmlkZXJPcHRpb25zID0ge31cbik6IHZvaWQge1xuICBnZXRLcnNQcm92aWRlcihjb2luLCBrcnNQcm92aWRlck5hbWUsIG9wdGlvbnMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0SXNLcnNSZWNvdmVyeSh7IGJhY2t1cEtleSwgdXNlcktleSB9OiB7IGJhY2t1cEtleTogc3RyaW5nOyB1c2VyS2V5OiBzdHJpbmcgfSk6IGJvb2xlYW4ge1xuICByZXR1cm4gYmFja3VwS2V5LnN0YXJ0c1dpdGgoJ3hwdWInKSAmJiAhdXNlcktleS5zdGFydHNXaXRoKCd4cHViJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRJc1Vuc2lnbmVkU3dlZXAoeyBiYWNrdXBLZXksIHVzZXJLZXkgfTogeyBiYWNrdXBLZXk6IHN0cmluZzsgdXNlcktleTogc3RyaW5nIH0pOiBib29sZWFuIHtcbiAgcmV0dXJuIGJhY2t1cEtleS5zdGFydHNXaXRoKCd4cHViJykgJiYgdXNlcktleS5zdGFydHNXaXRoKCd4cHViJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZUtleShcbiAgYml0Z286IEJpdEdvQmFzZSxcbiAgeyBrZXksIHNvdXJjZSwgcGFzc3BocmFzZSwgaXNVbnNpZ25lZFN3ZWVwLCBpc0tyc1JlY292ZXJ5IH06IFZhbGlkYXRlS2V5T3B0aW9uc1xuKTogYmlwMzIuQklQMzJJbnRlcmZhY2Uge1xuICBpZiAoIWtleS5zdGFydHNXaXRoKCd4cHJ2JykgJiYgIWlzVW5zaWduZWRTd2VlcCkge1xuICAgIC8vIFRyeSB0byBkZWNyeXB0IHRoZSBrZXlcbiAgICB0cnkge1xuICAgICAgaWYgKHNvdXJjZSA9PT0gJ3VzZXInIHx8IChzb3VyY2UgPT09ICdiYWNrdXAnICYmICFpc0tyc1JlY292ZXJ5KSkge1xuICAgICAgICByZXR1cm4gYmlwMzIuZnJvbUJhc2U1OChiaXRnby5kZWNyeXB0KHsgcGFzc3dvcmQ6IHBhc3NwaHJhc2UsIGlucHV0OiBrZXkgfSkpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgRmFpbGVkIHRvIGRlY3J5cHQgJHtzb3VyY2V9IGtleSB3aXRoIHBhc3Njb2RlIC0gdHJ5IGFnYWluIWApO1xuICAgIH1cbiAgfVxuICB0cnkge1xuICAgIHJldHVybiBiaXAzMi5mcm9tQmFzZTU4KGtleSk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCB0byB2YWxpZGF0ZSAke3NvdXJjZX0ga2V5IC0gdHJ5IGFnYWluIWApO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRCaXAzMktleXMoXG4gIGJpdGdvOiBCaXRHb0Jhc2UsXG4gIHBhcmFtczogSW5pdGlhdGVSZWNvdmVyeU9wdGlvbnMsXG4gIHsgcmVxdWlyZUJpdEdvWHB1YiB9OiB7IHJlcXVpcmVCaXRHb1hwdWI6IGJvb2xlYW4gfVxuKTogYmlwMzIuQklQMzJJbnRlcmZhY2VbXSB7XG4gIGNvbnN0IGlzS3JzUmVjb3ZlcnkgPSBnZXRJc0tyc1JlY292ZXJ5KHBhcmFtcyk7XG4gIGNvbnN0IGlzVW5zaWduZWRTd2VlcCA9IGdldElzVW5zaWduZWRTd2VlcChwYXJhbXMpO1xuICBjb25zdCBrZXlzID0gW1xuICAgIC8vIEJveCBBXG4gICAgdmFsaWRhdGVLZXkoYml0Z28sIHtcbiAgICAgIGtleTogcGFyYW1zLnVzZXJLZXksXG4gICAgICBzb3VyY2U6ICd1c2VyJyxcbiAgICAgIHBhc3NwaHJhc2U6IHBhcmFtcy53YWxsZXRQYXNzcGhyYXNlLFxuICAgICAgaXNLcnNSZWNvdmVyeSxcbiAgICAgIGlzVW5zaWduZWRTd2VlcCxcbiAgICB9KSxcbiAgICAvLyBCb3ggQlxuICAgIHZhbGlkYXRlS2V5KGJpdGdvLCB7XG4gICAgICBrZXk6IHBhcmFtcy5iYWNrdXBLZXksXG4gICAgICBzb3VyY2U6ICdiYWNrdXAnLFxuICAgICAgcGFzc3BocmFzZTogcGFyYW1zLndhbGxldFBhc3NwaHJhc2UsXG4gICAgICBpc0tyc1JlY292ZXJ5LFxuICAgICAgaXNVbnNpZ25lZFN3ZWVwLFxuICAgIH0pLFxuICBdO1xuXG4gIGlmIChyZXF1aXJlQml0R29YcHViKSB7XG4gICAgaWYgKCFwYXJhbXMuYml0Z29LZXkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQml0R28geHB1YiByZXF1aXJlZCBidXQgbm90IHByb3ZpZGVkYCk7XG4gICAgfVxuICAgIHRyeSB7XG4gICAgICAvLyBCb3ggQ1xuICAgICAga2V5cy5wdXNoKGJpcDMyLmZyb21CYXNlNTgocGFyYW1zLmJpdGdvS2V5KSk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gcGFyc2UgYml0Z28geHB1YiEnKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4ga2V5cztcbn1cbiJdfQ==
@@ -0,0 +1,69 @@
1
+ import { PrebuildTransactionOptions, PrebuildTransactionResult } from '../wallet';
2
+ import { SignedTransaction } from '../baseCoin';
3
+ export interface StakingRequest {
4
+ id: string;
5
+ amount: string;
6
+ withdrawalAddress: string;
7
+ clientId?: string;
8
+ requestingUserId: string;
9
+ type: string;
10
+ enterpriseId: string;
11
+ walletId: string;
12
+ walletType: string;
13
+ coin: string;
14
+ status: string;
15
+ statusModifiedDate: string;
16
+ createdDate: string;
17
+ transactions: StakingTransaction[];
18
+ }
19
+ export interface StakeOptions {
20
+ amount: string;
21
+ clientId?: string;
22
+ }
23
+ export interface UnstakeOptions {
24
+ amount: string;
25
+ clientId?: string;
26
+ }
27
+ export interface TransactionsReadyToSign {
28
+ allSigningComplete: boolean;
29
+ transactions: StakingTransaction[];
30
+ }
31
+ export interface StakingTransaction {
32
+ id: string;
33
+ stakingRequestId: string;
34
+ delegationId: string;
35
+ transactionType: string;
36
+ createdDate: string;
37
+ status: string;
38
+ statusModifiedDate: string;
39
+ amount: string;
40
+ pendingApprovalId?: string;
41
+ transferId?: string;
42
+ txRequestId?: string;
43
+ buildParams?: PrebuildTransactionOptions;
44
+ gasPrice?: string;
45
+ }
46
+ export interface StakingPrebuildTransactionResult {
47
+ transaction: StakingTransaction;
48
+ result: PrebuildTransactionResult;
49
+ }
50
+ export interface StakingSignedTransaction {
51
+ transaction: StakingTransaction;
52
+ signed: SignedTransaction;
53
+ }
54
+ export interface StakingSignOptions {
55
+ walletPassphrase: string;
56
+ }
57
+ export interface IStakingWallet {
58
+ readonly walletId: string;
59
+ readonly coin: string;
60
+ stake(options: StakeOptions): Promise<StakingRequest>;
61
+ unstake(options: UnstakeOptions): Promise<StakingRequest>;
62
+ getStakingRequest(stakingRequestId: string): Promise<StakingRequest>;
63
+ getTransactionsReadyToSign(stakingRequestId: string): Promise<TransactionsReadyToSign>;
64
+ build(transaction: StakingTransaction): Promise<StakingPrebuildTransactionResult>;
65
+ sign(signOptions: StakingSignOptions, stakingPrebuildTransaction: StakingPrebuildTransactionResult): Promise<StakingSignedTransaction>;
66
+ send(signedTransaction: StakingSignedTransaction): Promise<StakingTransaction>;
67
+ buildSignAndSend(signOptions: StakingSignOptions, transaction: StakingTransaction): any;
68
+ }
69
+ //# sourceMappingURL=iStakingWallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iStakingWallet.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/staking/iStakingWallet.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaVN0YWtpbmdXYWxsZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vc3Rha2luZy9pU3Rha2luZ1dhbGxldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJlYnVpbGRUcmFuc2FjdGlvbk9wdGlvbnMsIFByZWJ1aWxkVHJhbnNhY3Rpb25SZXN1bHQgfSBmcm9tICcuLi93YWxsZXQnO1xuaW1wb3J0IHsgU2lnbmVkVHJhbnNhY3Rpb24gfSBmcm9tICcuLi9iYXNlQ29pbic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3Rha2luZ1JlcXVlc3Qge1xuICBpZDogc3RyaW5nO1xuICBhbW91bnQ6IHN0cmluZztcbiAgd2l0aGRyYXdhbEFkZHJlc3M6IHN0cmluZztcbiAgY2xpZW50SWQ/OiBzdHJpbmc7XG4gIHJlcXVlc3RpbmdVc2VySWQ6IHN0cmluZztcbiAgdHlwZTogc3RyaW5nO1xuICBlbnRlcnByaXNlSWQ6IHN0cmluZztcbiAgd2FsbGV0SWQ6IHN0cmluZztcbiAgd2FsbGV0VHlwZTogc3RyaW5nO1xuICBjb2luOiBzdHJpbmc7XG4gIHN0YXR1czogc3RyaW5nO1xuICBzdGF0dXNNb2RpZmllZERhdGU6IHN0cmluZztcbiAgY3JlYXRlZERhdGU6IHN0cmluZztcbiAgdHJhbnNhY3Rpb25zOiBTdGFraW5nVHJhbnNhY3Rpb25bXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGFrZU9wdGlvbnMge1xuICBhbW91bnQ6IHN0cmluZztcbiAgY2xpZW50SWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVW5zdGFrZU9wdGlvbnMge1xuICBhbW91bnQ6IHN0cmluZztcbiAgY2xpZW50SWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNhY3Rpb25zUmVhZHlUb1NpZ24ge1xuICBhbGxTaWduaW5nQ29tcGxldGU6IGJvb2xlYW47XG4gIHRyYW5zYWN0aW9uczogU3Rha2luZ1RyYW5zYWN0aW9uW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3Rha2luZ1RyYW5zYWN0aW9uIHtcbiAgaWQ6IHN0cmluZztcbiAgc3Rha2luZ1JlcXVlc3RJZDogc3RyaW5nO1xuICBkZWxlZ2F0aW9uSWQ6IHN0cmluZztcbiAgdHJhbnNhY3Rpb25UeXBlOiBzdHJpbmc7XG4gIGNyZWF0ZWREYXRlOiBzdHJpbmc7XG4gIHN0YXR1czogc3RyaW5nO1xuICBzdGF0dXNNb2RpZmllZERhdGU6IHN0cmluZztcbiAgYW1vdW50OiBzdHJpbmc7XG4gIHBlbmRpbmdBcHByb3ZhbElkPzogc3RyaW5nO1xuICB0cmFuc2ZlcklkPzogc3RyaW5nO1xuICB0eFJlcXVlc3RJZD86IHN0cmluZztcbiAgYnVpbGRQYXJhbXM/OiBQcmVidWlsZFRyYW5zYWN0aW9uT3B0aW9ucztcbiAgZ2FzUHJpY2U/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3Rha2luZ1ByZWJ1aWxkVHJhbnNhY3Rpb25SZXN1bHQge1xuICB0cmFuc2FjdGlvbjogU3Rha2luZ1RyYW5zYWN0aW9uO1xuICByZXN1bHQ6IFByZWJ1aWxkVHJhbnNhY3Rpb25SZXN1bHQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3Rha2luZ1NpZ25lZFRyYW5zYWN0aW9uIHtcbiAgdHJhbnNhY3Rpb246IFN0YWtpbmdUcmFuc2FjdGlvbjtcbiAgc2lnbmVkOiBTaWduZWRUcmFuc2FjdGlvbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGFraW5nU2lnbk9wdGlvbnMge1xuICB3YWxsZXRQYXNzcGhyYXNlOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVN0YWtpbmdXYWxsZXQge1xuICByZWFkb25seSB3YWxsZXRJZDogc3RyaW5nO1xuICByZWFkb25seSBjb2luOiBzdHJpbmc7XG4gIHN0YWtlKG9wdGlvbnM6IFN0YWtlT3B0aW9ucyk6IFByb21pc2U8U3Rha2luZ1JlcXVlc3Q+O1xuICB1bnN0YWtlKG9wdGlvbnM6IFVuc3Rha2VPcHRpb25zKTogUHJvbWlzZTxTdGFraW5nUmVxdWVzdD47XG4gIGdldFN0YWtpbmdSZXF1ZXN0KHN0YWtpbmdSZXF1ZXN0SWQ6IHN0cmluZyk6IFByb21pc2U8U3Rha2luZ1JlcXVlc3Q+O1xuICBnZXRUcmFuc2FjdGlvbnNSZWFkeVRvU2lnbihzdGFraW5nUmVxdWVzdElkOiBzdHJpbmcpOiBQcm9taXNlPFRyYW5zYWN0aW9uc1JlYWR5VG9TaWduPjtcbiAgYnVpbGQodHJhbnNhY3Rpb246IFN0YWtpbmdUcmFuc2FjdGlvbik6IFByb21pc2U8U3Rha2luZ1ByZWJ1aWxkVHJhbnNhY3Rpb25SZXN1bHQ+O1xuICBzaWduKFxuICAgIHNpZ25PcHRpb25zOiBTdGFraW5nU2lnbk9wdGlvbnMsXG4gICAgc3Rha2luZ1ByZWJ1aWxkVHJhbnNhY3Rpb246IFN0YWtpbmdQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0XG4gICk6IFByb21pc2U8U3Rha2luZ1NpZ25lZFRyYW5zYWN0aW9uPjtcbiAgc2VuZChzaWduZWRUcmFuc2FjdGlvbjogU3Rha2luZ1NpZ25lZFRyYW5zYWN0aW9uKTogUHJvbWlzZTxTdGFraW5nVHJhbnNhY3Rpb24+O1xuICBidWlsZFNpZ25BbmRTZW5kKHNpZ25PcHRpb25zOiBTdGFraW5nU2lnbk9wdGlvbnMsIHRyYW5zYWN0aW9uOiBTdGFraW5nVHJhbnNhY3Rpb24pO1xufVxuIl19
@@ -0,0 +1,3 @@
1
+ export * from './iStakingWallet';
2
+ export * from './stakingWallet';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/staking/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
+ };
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./iStakingWallet"), exports);
14
+ __exportStar(require("./stakingWallet"), exports);
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYml0Z28vc3Rha2luZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxtREFBaUM7QUFDakMsa0RBQWdDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9pU3Rha2luZ1dhbGxldCc7XG5leHBvcnQgKiBmcm9tICcuL3N0YWtpbmdXYWxsZXQnO1xuIl19
@@ -0,0 +1,67 @@
1
+ /**
2
+ * @prettier
3
+ */
4
+ import { IStakingWallet, StakingRequest, TransactionsReadyToSign, StakingTransaction, StakingPrebuildTransactionResult, StakingSignedTransaction, StakingSignOptions, StakeOptions, UnstakeOptions } from './iStakingWallet';
5
+ import { IWallet } from '../wallet';
6
+ import { ITssUtils } from '../utils';
7
+ export declare class StakingWallet implements IStakingWallet {
8
+ private readonly bitgo;
9
+ wallet: IWallet;
10
+ tssUtil: ITssUtils;
11
+ constructor(wallet: IWallet);
12
+ get walletId(): string;
13
+ get coin(): string;
14
+ /**
15
+ * Stake coins
16
+ * @param options - stake options
17
+ * @return StakingRequest
18
+ */
19
+ stake(options: StakeOptions): Promise<StakingRequest>;
20
+ /**
21
+ * Unstake coins
22
+ * @param options - unstake options
23
+ * @return StakingRequest
24
+ */
25
+ unstake(options: UnstakeOptions): Promise<StakingRequest>;
26
+ /**
27
+ * Get a staking request by ID
28
+ * @param stakingRequestId - id of the staking request to retrieve
29
+ * @return StakingRequest
30
+ */
31
+ getStakingRequest(stakingRequestId: string): Promise<StakingRequest>;
32
+ /**
33
+ * Get transactions ready to sign
34
+ * @param stakingRequestId
35
+ * @return TransactionsReadyToSign
36
+ */
37
+ getTransactionsReadyToSign(stakingRequestId: string): Promise<TransactionsReadyToSign>;
38
+ /**
39
+ * Build the staking transaction
40
+ * If TSS delete signature shares, else expand build params and then build
41
+ * @param transaction - staking transaction to build
42
+ */
43
+ build(transaction: StakingTransaction): Promise<StakingPrebuildTransactionResult>;
44
+ /**
45
+ * Sign the staking transaction
46
+ * @param signOptions
47
+ * @param stakingPrebuildTransaction
48
+ */
49
+ sign(signOptions: StakingSignOptions, stakingPrebuildTransaction: StakingPrebuildTransactionResult): Promise<StakingSignedTransaction>;
50
+ /**
51
+ * Send the signed staking transaction
52
+ * @param signedTransaction
53
+ */
54
+ send(signedTransaction: StakingSignedTransaction): Promise<StakingTransaction>;
55
+ /**
56
+ * Build, sign and send the transaction.
57
+ * @param signOptions
58
+ * @param transaction
59
+ */
60
+ buildSignAndSend(signOptions: StakingSignOptions, transaction: StakingTransaction): Promise<StakingTransaction>;
61
+ private expandBuildParams;
62
+ private createStakingRequest;
63
+ private stakingRequestsURL;
64
+ private stakingRequestUrl;
65
+ private stakingTransactionURL;
66
+ }
67
+ //# sourceMappingURL=stakingWallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stakingWallet.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/staking/stakingWallet.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EACL,cAAc,EACd,cAAc,EACd,uBAAuB,EACvB,kBAAkB,EAClB,gCAAgC,EAChC,wBAAwB,EACxB,kBAAkB,EAClB,YAAY,EACZ,cAAc,EACf,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,SAAS,EAA2B,MAAM,UAAU,CAAC;AAE9D,qBAAa,aAAc,YAAW,cAAc;IAClD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAY;IAE3B,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,SAAS,CAAC;gBAEd,MAAM,EAAE,OAAO;IAM3B,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED;;;;OAIG;IACG,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;IAI3D;;;;OAIG;IACG,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAI/D;;;;OAIG;IACG,iBAAiB,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAI1E;;;;OAIG;IACG,0BAA0B,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAgB5F;;;;OAIG;IACG,KAAK,CAAC,WAAW,EAAE,kBAAkB,GAAG,OAAO,CAAC,gCAAgC,CAAC;IA0BvF;;;;OAIG;IACG,IAAI,CACR,WAAW,EAAE,kBAAkB,EAC/B,0BAA0B,EAAE,gCAAgC,GAC3D,OAAO,CAAC,wBAAwB,CAAC;IAgBpC;;;OAGG;IACG,IAAI,CAAC,iBAAiB,EAAE,wBAAwB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAOpF;;;;OAIG;IACG,gBAAgB,CACpB,WAAW,EAAE,kBAAkB,EAC/B,WAAW,EAAE,kBAAkB,GAC9B,OAAO,CAAC,kBAAkB,CAAC;YAMhB,iBAAiB;YAOjB,oBAAoB;IAWlC,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,iBAAiB;IAIzB,OAAO,CAAC,qBAAqB;CAG9B"}
@@ -0,0 +1,153 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StakingWallet = void 0;
4
+ const utils_1 = require("../utils");
5
+ class StakingWallet {
6
+ constructor(wallet) {
7
+ this.wallet = wallet;
8
+ this.bitgo = wallet.bitgo;
9
+ this.tssUtil = new utils_1.TssUtils(this.bitgo, this.wallet.baseCoin, this.wallet);
10
+ }
11
+ get walletId() {
12
+ return this.wallet.id();
13
+ }
14
+ get coin() {
15
+ return this.wallet.coin();
16
+ }
17
+ /**
18
+ * Stake coins
19
+ * @param options - stake options
20
+ * @return StakingRequest
21
+ */
22
+ async stake(options) {
23
+ return await this.createStakingRequest(options.amount, 'STAKE', options.clientId);
24
+ }
25
+ /**
26
+ * Unstake coins
27
+ * @param options - unstake options
28
+ * @return StakingRequest
29
+ */
30
+ async unstake(options) {
31
+ return await this.createStakingRequest(options.amount, 'UNSTAKE', options.clientId);
32
+ }
33
+ /**
34
+ * Get a staking request by ID
35
+ * @param stakingRequestId - id of the staking request to retrieve
36
+ * @return StakingRequest
37
+ */
38
+ async getStakingRequest(stakingRequestId) {
39
+ return await this.bitgo.get(this.bitgo.microservicesUrl(this.stakingRequestUrl(stakingRequestId))).result();
40
+ }
41
+ /**
42
+ * Get transactions ready to sign
43
+ * @param stakingRequestId
44
+ * @return TransactionsReadyToSign
45
+ */
46
+ async getTransactionsReadyToSign(stakingRequestId) {
47
+ const stakingRequest = await this.getStakingRequest(stakingRequestId);
48
+ const readyToSign = stakingRequest.transactions.filter((transaction) => transaction.status === `READY`);
49
+ const newTransactions = stakingRequest.transactions.filter((transaction) => transaction.status === `NEW`);
50
+ return Promise.resolve({
51
+ allSigningComplete: stakingRequest.transactions.length > 0 && newTransactions.length === 0 && readyToSign.length === 0,
52
+ transactions: readyToSign,
53
+ });
54
+ }
55
+ /**
56
+ * Build the staking transaction
57
+ * If TSS delete signature shares, else expand build params and then build
58
+ * @param transaction - staking transaction to build
59
+ */
60
+ async build(transaction) {
61
+ if (this.wallet.baseCoin.supportsTss()) {
62
+ if (!transaction.txRequestId) {
63
+ throw new Error('txRequestId is required to sign and send');
64
+ }
65
+ // delete signature shares before signing for transaction request API
66
+ await this.tssUtil.deleteSignatureShares(transaction.txRequestId);
67
+ return {
68
+ transaction: transaction,
69
+ result: {
70
+ walletId: this.walletId,
71
+ txRequestId: transaction.txRequestId,
72
+ },
73
+ };
74
+ }
75
+ else {
76
+ transaction = await this.expandBuildParams(transaction);
77
+ if (!transaction.buildParams) {
78
+ throw Error(`Staking transaction ${transaction.id} build params not expanded`);
79
+ }
80
+ return {
81
+ transaction: transaction,
82
+ result: await this.wallet.prebuildTransaction(transaction.buildParams),
83
+ };
84
+ }
85
+ }
86
+ /**
87
+ * Sign the staking transaction
88
+ * @param signOptions
89
+ * @param stakingPrebuildTransaction
90
+ */
91
+ async sign(signOptions, stakingPrebuildTransaction) {
92
+ const reqId = new utils_1.RequestTracer();
93
+ const keychain = await this.wallet.baseCoin.keychains().getKeysForSigning({
94
+ wallet: this.wallet,
95
+ reqId: reqId,
96
+ });
97
+ return {
98
+ transaction: stakingPrebuildTransaction.transaction,
99
+ signed: await this.wallet.signTransaction({
100
+ txPrebuild: stakingPrebuildTransaction.result,
101
+ walletPassphrase: signOptions.walletPassphrase,
102
+ keychain: keychain[0],
103
+ }),
104
+ };
105
+ }
106
+ /**
107
+ * Send the signed staking transaction
108
+ * @param signedTransaction
109
+ */
110
+ async send(signedTransaction) {
111
+ return await this.bitgo
112
+ .post(this.bitgo.microservicesUrl(this.stakingTransactionURL(signedTransaction.transaction)))
113
+ .send(signedTransaction.signed)
114
+ .result();
115
+ }
116
+ /**
117
+ * Build, sign and send the transaction.
118
+ * @param signOptions
119
+ * @param transaction
120
+ */
121
+ async buildSignAndSend(signOptions, transaction) {
122
+ return await this.build(transaction)
123
+ .then((result) => this.sign(signOptions, result))
124
+ .then((result) => this.send(result));
125
+ }
126
+ async expandBuildParams(stakingTransaction) {
127
+ return await this.bitgo
128
+ .get(this.bitgo.microservicesUrl(this.stakingTransactionURL(stakingTransaction)))
129
+ .query({ expandBuildParams: true })
130
+ .result();
131
+ }
132
+ async createStakingRequest(amount, type, clientId) {
133
+ return await this.bitgo
134
+ .post(this.bitgo.microservicesUrl(this.stakingRequestsURL()))
135
+ .send({
136
+ amount: amount,
137
+ clientId: clientId,
138
+ type: type,
139
+ })
140
+ .result();
141
+ }
142
+ stakingRequestsURL() {
143
+ return `/api/staking/v1/${this.coin}/wallets/${this.walletId}/requests`;
144
+ }
145
+ stakingRequestUrl(stakingRequestId) {
146
+ return `${this.stakingRequestsURL()}/${stakingRequestId}`;
147
+ }
148
+ stakingTransactionURL(stakingTransaction) {
149
+ return `${this.stakingRequestUrl(stakingTransaction.stakingRequestId)}/transactions/${stakingTransaction.id}`;
150
+ }
151
+ }
152
+ exports.StakingWallet = StakingWallet;
153
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rha2luZ1dhbGxldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby9zdGFraW5nL3N0YWtpbmdXYWxsZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBZ0JBLG9DQUE4RDtBQUU5RCxNQUFhLGFBQWE7SUFNeEIsWUFBWSxNQUFlO1FBQ3pCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUMxQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksZ0JBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQXFCO1FBQy9CLE9BQU8sTUFBTSxJQUFJLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUF1QjtRQUNuQyxPQUFPLE1BQU0sSUFBSSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN0RixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxnQkFBd0I7UUFDOUMsT0FBTyxNQUFNLElB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LElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUM7YUFDNUQsSUFBSSxDQUFDO1lBQ0osTUFBTSxFQUFFLE1BQU07WUFDZCxRQUFRLEVBQUUsUUFBUTtZQUNsQixJQUFJLEVBQUUsSUFBSTtTQUNYLENBQUM7YUFDRCxNQUFNLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFTyxrQkFBa0I7UUFDeEIsT0FBTyxtQkFBbUIsSUFBSSxDQUFDLElBQUksWUFBWSxJQUFJLENBQUMsUUFBUSxXQUFXLENBQUM7SUFDMUUsQ0FBQztJQUVPLGlCQUFpQixDQUFDLGdCQUF3QjtRQUNoRCxPQUFPLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixFQUFFLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztJQUM1RCxDQUFDO0lBRU8scUJBQXFCLENBQUMsa0JBQXNDO1FBQ2xFLE9BQU8sR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsa0JBQWtCLENBQUMsZ0JBQWdCLENBQUMsaUJBQWlCLGtCQUFrQixDQUFDLEVBQUUsRUFBRSxDQUFDO0lBQ2hILENBQUM7Q0FDRjtBQWpMRCxzQ0FpTEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwcmV0dGllclxuICovXG5pbXBvcnQge1xuICBJU3Rha2luZ1dhbGxldCxcbiAgU3Rha2luZ1JlcXVlc3QsXG4gIFRyYW5zYWN0aW9uc1JlYWR5VG9TaWduLFxuICBTdGFraW5nVHJhbnNhY3Rpb24sXG4gIFN0YWtpbmdQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0LFxuICBTdGFraW5nU2lnbmVkVHJhbnNhY3Rpb24sXG4gIFN0YWtpbmdTaWduT3B0aW9ucyxcbiAgU3Rha2VPcHRpb25zLFxuICBVbnN0YWtlT3B0aW9ucyxcbn0gZnJvbSAnLi9pU3Rha2luZ1dhbGxldCc7XG5pbXBvcnQgeyBCaXRHb0Jhc2UgfSBmcm9tICcuLi9iaXRnb0Jhc2UnO1xuaW1wb3J0IHsgSVdhbGxldCB9IGZyb20gJy4uL3dhbGxldCc7XG5pbXBvcnQgeyBJVHNzVXRpbHMsIFJlcXVlc3RUcmFjZXIsIFRzc1V0aWxzIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgU3Rha2luZ1dhbGxldCBpbXBsZW1lbnRzIElTdGFraW5nV2FsbGV0IHtcbiAgcHJpdmF0ZSByZWFkb25seSBiaXRnbzogQml0R29CYXNlO1xuXG4gIHB1YmxpYyB3YWxsZXQ6IElXYWxsZXQ7XG4gIHB1YmxpYyB0c3NVdGlsOiBJVHNzVXRpbHM7XG5cbiAgY29uc3RydWN0b3Iod2FsbGV0OiBJV2FsbGV0KSB7XG4gICAgdGhpcy53YWxsZXQgPSB3YWxsZXQ7XG4gICAgdGhpcy5iaXRnbyA9IHdhbGxldC5iaXRnbztcbiAgICB0aGlzLnRzc1V0aWwgPSBuZXcgVHNzVXRpbHModGhpcy5iaXRnbywgdGhpcy53YWxsZXQuYmFzZUNvaW4sIHRoaXMud2FsbGV0KTtcbiAgfVxuXG4gIGdldCB3YWxsZXRJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLndhbGxldC5pZCgpO1xuICB9XG5cbiAgZ2V0IGNvaW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy53YWxsZXQuY29pbigpO1xuICB9XG5cbiAgLyoqXG4gICAqIFN0YWtlIGNvaW5zXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gc3Rha2Ugb3B0aW9uc1xuICAgKiBAcmV0dXJuIFN0YWtpbmdSZXF1ZXN0XG4gICAqL1xuICBhc3luYyBzdGFrZShvcHRpb25zOiBTdGFrZU9wdGlvbnMpOiBQcm9taXNlPFN0YWtpbmdSZXF1ZXN0PiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuY3JlYXRlU3Rha2luZ1JlcXVlc3Qob3B0aW9ucy5hbW91bnQsICdTVEFLRScsIG9wdGlvbnMuY2xpZW50SWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVuc3Rha2UgY29pbnNcbiAgICogQHBhcmFtIG9wdGlvbnMgLSB1bnN0YWtlIG9wdGlvbnNcbiAgICogQHJldHVybiBTdGFraW5nUmVxdWVzdFxuICAgKi9cbiAgYXN5bmMgdW5zdGFrZShvcHRpb25zOiBVbnN0YWtlT3B0aW9ucyk6IFByb21pc2U8U3Rha2luZ1JlcXVlc3Q+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5jcmVhdGVTdGFraW5nUmVxdWVzdChvcHRpb25zLmFtb3VudCwgJ1VOU1RBS0UnLCBvcHRpb25zLmNsaWVudElkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYSBzdGFraW5nIHJlcXVlc3QgYnkgSURcbiAgICogQHBhcmFtIHN0YWtpbmdSZXF1ZXN0SWQgLSBpZCBvZiB0aGUgc3Rha2luZyByZXF1ZXN0IHRvIHJldHJpZXZlXG4gICAqIEByZXR1cm4gU3Rha2luZ1JlcXVlc3RcbiAgICovXG4gIGFzeW5jIGdldFN0YWtpbmdSZXF1ZXN0KHN0YWtpbmdSZXF1ZXN0SWQ6IHN0cmluZyk6IFByb21pc2U8U3Rha2luZ1JlcXVlc3Q+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5iaXRnby5nZXQodGhpcy5iaXRnby5taWNyb3NlcnZpY2VzVXJsKHRoaXMuc3Rha2luZ1JlcXVlc3RVcmwoc3Rha2luZ1JlcXVlc3RJZCkpKS5yZXN1bHQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdHJhbnNhY3Rpb25zIHJlYWR5IHRvIHNpZ25cbiAgICogQHBhcmFtIHN0YWtpbmdSZXF1ZXN0SWRcbiAgICogQHJldHVybiBUcmFuc2FjdGlvbnNSZWFkeVRvU2lnblxuICAgKi9cbiAgYXN5bmMgZ2V0VHJhbnNhY3Rpb25zUmVhZHlUb1NpZ24oc3Rha2luZ1JlcXVlc3RJZDogc3RyaW5nKTogUHJvbWlzZTxUcmFuc2FjdGlvbnNSZWFkeVRvU2lnbj4ge1xuICAgIGNvbnN0IHN0YWtpbmdSZXF1ZXN0OiBTdGFraW5nUmVxdWVzdCA9IGF3YWl0IHRoaXMuZ2V0U3Rha2luZ1JlcXVlc3Qoc3Rha2luZ1JlcXVlc3RJZCk7XG4gICAgY29uc3QgcmVhZHlUb1NpZ246IFN0YWtpbmdUcmFuc2FjdGlvbltdID0gc3Rha2luZ1JlcXVlc3QudHJhbnNhY3Rpb25zLmZpbHRlcihcbiAgICAgICh0cmFuc2FjdGlvbjogU3Rha2luZ1RyYW5zYWN0aW9uKSA9PiB0cmFuc2FjdGlvbi5zdGF0dXMgPT09IGBSRUFEWWBcbiAgICApO1xuICAgIGNvbnN0IG5ld1RyYW5zYWN0aW9uczogU3Rha2luZ1RyYW5zYWN0aW9uW10gPSBzdGFraW5nUmVxdWVzdC50cmFuc2FjdGlvbnMuZmlsdGVyKFxuICAgICAgKHRyYW5zYWN0aW9uOiBTdGFraW5nVHJhbnNhY3Rpb24pID0+IHRyYW5zYWN0aW9uLnN0YXR1cyA9PT0gYE5FV2BcbiAgICApO1xuXG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh7XG4gICAgICBhbGxTaWduaW5nQ29tcGxldGU6XG4gICAgICAgIHN0YWtpbmdSZXF1ZXN0LnRyYW5zYWN0aW9ucy5sZW5ndGggPiAwICYmIG5ld1RyYW5zYWN0aW9ucy5sZW5ndGggPT09IDAgJiYgcmVhZHlUb1NpZ24ubGVuZ3RoID09PSAwLFxuICAgICAgdHJhbnNhY3Rpb25zOiByZWFkeVRvU2lnbixcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZCB0aGUgc3Rha2luZyB0cmFuc2FjdGlvblxuICAgKiBJZiBUU1MgZGVsZXRlIHNpZ25hdHVyZSBzaGFyZXMsIGVsc2UgZXhwYW5kIGJ1aWxkIHBhcmFtcyBhbmQgdGhlbiBidWlsZFxuICAgKiBAcGFyYW0gdHJhbnNhY3Rpb24gLSBzdGFraW5nIHRyYW5zYWN0aW9uIHRvIGJ1aWxkXG4gICAqL1xuICBhc3luYyBidWlsZCh0cmFuc2FjdGlvbjogU3Rha2luZ1RyYW5zYWN0aW9uKTogUHJvbWlzZTxTdGFraW5nUHJlYnVpbGRUcmFuc2FjdGlvblJlc3VsdD4ge1xuICAgIGlmICh0aGlzLndhbGxldC5iYXNlQ29pbi5zdXBwb3J0c1RzcygpKSB7XG4gICAgICBpZiAoIXRyYW5zYWN0aW9uLnR4UmVxdWVzdElkKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcigndHhSZXF1ZXN0SWQgaXMgcmVxdWlyZWQgdG8gc2lnbiBhbmQgc2VuZCcpO1xuICAgICAgfVxuICAgICAgLy8gZGVsZXRlIHNpZ25hdHVyZSBzaGFyZXMgYmVmb3JlIHNpZ25pbmcgZm9yIHRyYW5zYWN0aW9uIHJlcXVlc3QgQVBJXG4gICAgICBhd2FpdCB0aGlzLnRzc1V0aWwuZGVsZXRlU2lnbmF0dXJlU2hhcmVzKHRyYW5zYWN0aW9uLnR4UmVxdWVzdElkKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHRyYW5zYWN0aW9uOiB0cmFuc2FjdGlvbixcbiAgICAgICAgcmVzdWx0OiB7XG4gICAgICAgICAgd2FsbGV0SWQ6IHRoaXMud2FsbGV0SWQsXG4gICAgICAgICAgdHhSZXF1ZXN0SWQ6IHRyYW5zYWN0aW9uLnR4UmVxdWVzdElkLFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgdHJhbnNhY3Rpb24gPSBhd2FpdCB0aGlzLmV4cGFuZEJ1aWxkUGFyYW1zKHRyYW5zYWN0aW9uKTtcbiAgICAgIGlmICghdHJhbnNhY3Rpb24uYnVpbGRQYXJhbXMpIHtcbiAgICAgICAgdGhyb3cgRXJyb3IoYFN0YWtpbmcgdHJhbnNhY3Rpb24gJHt0cmFuc2FjdGlvbi5pZH0gYnVpbGQgcGFyYW1zIG5vdCBleHBhbmRlZGApO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHJhbnNhY3Rpb246IHRyYW5zYWN0aW9uLFxuICAgICAgICByZXN1bHQ6IGF3YWl0IHRoaXMud2FsbGV0LnByZWJ1aWxkVHJhbnNhY3Rpb24odHJhbnNhY3Rpb24uYnVpbGRQYXJhbXMpLFxuICAgICAgfTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2lnbiB0aGUgc3Rha2luZyB0cmFuc2FjdGlvblxuICAgKiBAcGFyYW0gc2lnbk9wdGlvbnNcbiAgICogQHBhcmFtIHN0YWtpbmdQcmVidWlsZFRyYW5zYWN0aW9uXG4gICAqL1xuICBhc3luYyBzaWduKFxuICAgIHNpZ25PcHRpb25zOiBTdGFraW5nU2lnbk9wdGlvbnMsXG4gICAgc3Rha2luZ1ByZWJ1aWxkVHJhbnNhY3Rpb246IFN0YWtpbmdQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0XG4gICk6IFByb21pc2U8U3Rha2luZ1NpZ25lZFRyYW5zYWN0aW9uPiB7XG4gICAgY29uc3QgcmVxSWQgPSBuZXcgUmVxdWVzdFRyYWNlcigpO1xuICAgIGNvbnN0IGtleWNoYWluID0gYXdhaXQgdGhpcy53YWxsZXQuYmFzZUNvaW4ua2V5Y2hhaW5zKCkuZ2V0S2V5c0ZvclNpZ25pbmcoe1xuICAgICAgd2FsbGV0OiB0aGlzLndhbGxldCxcbiAgICAgIHJlcUlkOiByZXFJZCxcbiAgICB9KTtcbiAgICByZXR1cm4ge1xuICAgICAgdHJhbnNhY3Rpb246IHN0YWtpbmdQcmVidWlsZFRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uLFxuICAgICAgc2lnbmVkOiBhd2FpdCB0aGlzLndhbGxldC5zaWduVHJhbnNhY3Rpb24oe1xuICAgICAgICB0eFByZWJ1aWxkOiBzdGFraW5nUHJlYnVpbGRUcmFuc2FjdGlvbi5yZXN1bHQsXG4gICAgICAgIHdhbGxldFBhc3NwaHJhc2U6IHNpZ25PcHRpb25zLndhbGxldFBhc3NwaHJhc2UsXG4gICAgICAgIGtleWNoYWluOiBrZXljaGFpblswXSxcbiAgICAgIH0pLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogU2VuZCB0aGUgc2lnbmVkIHN0YWtpbmcgdHJhbnNhY3Rpb25cbiAgICogQHBhcmFtIHNpZ25lZFRyYW5zYWN0aW9uXG4gICAqL1xuICBhc3luYyBzZW5kKHNpZ25lZFRyYW5zYWN0aW9uOiBTdGFraW5nU2lnbmVkVHJhbnNhY3Rpb24pOiBQcm9taXNlPFN0YWtpbmdUcmFuc2FjdGlvbj4ge1xuICAgIHJldHVybiBhd2FpdCB0aGlzLmJpdGdvXG4gICAgICAucG9zdCh0aGlzLmJpdGdvLm1pY3Jvc2VydmljZXNVcmwodGhpcy5zdGFraW5nVHJhbnNhY3Rpb25VUkwoc2lnbmVkVHJhbnNhY3Rpb24udHJhbnNhY3Rpb24pKSlcbiAgICAgIC5zZW5kKHNpZ25lZFRyYW5zYWN0aW9uLnNpZ25lZClcbiAgICAgIC5yZXN1bHQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZCwgc2lnbiBhbmQgc2VuZCB0aGUgdHJhbnNhY3Rpb24uXG4gICAqIEBwYXJhbSBzaWduT3B0aW9uc1xuICAgKiBAcGFyYW0gdHJhbnNhY3Rpb25cbiAgICovXG4gIGFzeW5jIGJ1aWxkU2lnbkFuZFNlbmQoXG4gICAgc2lnbk9wdGlvbnM6IFN0YWtpbmdTaWduT3B0aW9ucyxcbiAgICB0cmFuc2FjdGlvbjogU3Rha2luZ1RyYW5zYWN0aW9uXG4gICk6IFByb21pc2U8U3Rha2luZ1RyYW5zYWN0aW9uPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuYnVpbGQodHJhbnNhY3Rpb24pXG4gICAgICAudGhlbigocmVzdWx0OiBTdGFraW5nUHJlYnVpbGRUcmFuc2FjdGlvblJlc3VsdCkgPT4gdGhpcy5zaWduKHNpZ25PcHRpb25zLCByZXN1bHQpKVxuICAgICAgLnRoZW4oKHJlc3VsdDogU3Rha2luZ1NpZ25lZFRyYW5zYWN0aW9uKSA9PiB0aGlzLnNlbmQocmVzdWx0KSk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGV4cGFuZEJ1aWxkUGFyYW1zKHN0YWtpbmdUcmFuc2FjdGlvbjogU3Rha2luZ1RyYW5zYWN0aW9uKTogUHJvbWlzZTxTdGFraW5nVHJhbnNhY3Rpb24+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5iaXRnb1xuICAgICAgLmdldCh0aGlzLmJpdGdvLm1pY3Jvc2VydmljZXNVcmwodGhpcy5zdGFraW5nVHJhbnNhY3Rpb25VUkwoc3Rha2luZ1RyYW5zYWN0aW9uKSkpXG4gICAgICAucXVlcnkoeyBleHBhbmRCdWlsZFBhcmFtczogdHJ1ZSB9KVxuICAgICAgLnJlc3VsdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBjcmVhdGVTdGFraW5nUmVxdWVzdChhbW91bnQ6IHN0cmluZywgdHlwZTogc3RyaW5nLCBjbGllbnRJZD86IHN0cmluZyk6IFByb21pc2U8U3Rha2luZ1JlcXVlc3Q+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5iaXRnb1xuICAgICAgLnBvc3QodGhpcy5iaXRnby5taWNyb3NlcnZpY2VzVXJsKHRoaXMuc3Rha2luZ1JlcXVlc3RzVVJMKCkpKVxuICAgICAgLnNlbmQoe1xuICAgICAgICBhbW91bnQ6IGFtb3VudCxcbiAgICAgICAgY2xpZW50SWQ6IGNsaWVudElkLFxuICAgICAgICB0eXBlOiB0eXBlLFxuICAgICAgfSlcbiAgICAgIC5yZXN1bHQoKTtcbiAgfVxuXG4gIHByaXZhdGUgc3Rha2luZ1JlcXVlc3RzVVJMKCkge1xuICAgIHJldHVybiBgL2FwaS9zdGFraW5nL3YxLyR7dGhpcy5jb2lufS93YWxsZXRzLyR7dGhpcy53YWxsZXRJZH0vcmVxdWVzdHNgO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGFraW5nUmVxdWVzdFVybChzdGFraW5nUmVxdWVzdElkOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLnN0YWtpbmdSZXF1ZXN0c1VSTCgpfS8ke3N0YWtpbmdSZXF1ZXN0SWR9YDtcbiAgfVxuXG4gIHByaXZhdGUgc3Rha2luZ1RyYW5zYWN0aW9uVVJMKHN0YWtpbmdUcmFuc2FjdGlvbjogU3Rha2luZ1RyYW5zYWN0aW9uKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7dGhpcy5zdGFraW5nUmVxdWVzdFVybChzdGFraW5nVHJhbnNhY3Rpb24uc3Rha2luZ1JlcXVlc3RJZCl9L3RyYW5zYWN0aW9ucy8ke3N0YWtpbmdUcmFuc2FjdGlvbi5pZH1gO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,35 @@
1
+ /**
2
+ * @prettier
3
+ */
4
+ import { BitGoBase } from '../bitgoBase';
5
+ import { AffirmationStatus, IAffirmation, Lock, Payload } from '../trading';
6
+ export declare class Affirmation implements IAffirmation {
7
+ private bitgo;
8
+ private enterpriseId;
9
+ id?: string;
10
+ partyAccountId?: string;
11
+ status?: AffirmationStatus;
12
+ settlement?: string;
13
+ lock?: Lock;
14
+ payload?: string;
15
+ createdAt?: Date;
16
+ expireAt?: Date;
17
+ constructor(affirmationData: any, bitgo: BitGoBase, enterpriseId: string);
18
+ /**
19
+ * Affirms a pending affirmation, authorizing the settlement
20
+ * @param payload payload authorizing the movement of funds from a trading account
21
+ * @param signature signature of the payload with the user key of the trading account
22
+ */
23
+ affirm(payload: Payload, signature: string): Promise<void>;
24
+ /**
25
+ * Rejects a pending affirmation, cancelling the settlement
26
+ */
27
+ reject(): Promise<void>;
28
+ /**
29
+ * Cancels a pending affirmation, cancelling the settlement
30
+ */
31
+ cancel(): Promise<void>;
32
+ private updateStatus;
33
+ private updateAffirmationData;
34
+ }
35
+ //# sourceMappingURL=affirmation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"affirmation.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/trading/affirmation.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5E,qBAAa,WAAY,YAAW,YAAY;IAC9C,OAAO,CAAC,KAAK,CAAY;IACzB,OAAO,CAAC,YAAY,CAAS;IAEtB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,QAAQ,CAAC,EAAE,IAAI,CAAC;gBAEX,eAAe,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM;IAOxE;;;;OAIG;IACG,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAShE;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAI7B;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;YAIf,YAAY;IAS1B,OAAO,CAAC,qBAAqB;CAU9B"}