@bitgo-beta/sdk-coin-sol 7.6.4-beta.59 → 7.6.4-beta.591

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 (414) hide show
  1. package/dist/cjs/src/bigint-buffer-guard.d.ts.map +1 -0
  2. package/dist/cjs/src/bigint-buffer-guard.js +29 -0
  3. package/dist/cjs/src/config/token2022StaticConfig.d.ts.map +1 -0
  4. package/dist/cjs/src/config/token2022StaticConfig.js +50 -0
  5. package/dist/cjs/src/index.d.ts.map +1 -0
  6. package/dist/{src → cjs/src}/index.js +1 -1
  7. package/dist/cjs/src/lib/ataInitializationBuilder.d.ts.map +1 -0
  8. package/dist/{src → cjs/src}/lib/ataInitializationBuilder.js +16 -12
  9. package/dist/cjs/src/lib/closeAtaBuilder.d.ts +51 -0
  10. package/dist/cjs/src/lib/closeAtaBuilder.d.ts.map +1 -0
  11. package/dist/cjs/src/lib/closeAtaBuilder.js +147 -0
  12. package/dist/{src → cjs/src}/lib/constants.d.ts +24 -0
  13. package/dist/cjs/src/lib/constants.d.ts.map +1 -0
  14. package/dist/cjs/src/lib/constants.js +196 -0
  15. package/dist/cjs/src/lib/customInstructionBuilder.d.ts.map +1 -0
  16. package/dist/cjs/src/lib/customInstructionBuilder.js +289 -0
  17. package/dist/cjs/src/lib/explainTransactionWasm.d.ts +21 -0
  18. package/dist/cjs/src/lib/explainTransactionWasm.d.ts.map +1 -0
  19. package/dist/cjs/src/lib/explainTransactionWasm.js +264 -0
  20. package/dist/{src → cjs/src}/lib/iface.d.ts +22 -2
  21. package/dist/cjs/src/lib/iface.d.ts.map +1 -0
  22. package/dist/cjs/src/lib/iface.js +7 -0
  23. package/dist/{src → cjs/src}/lib/index.d.ts +2 -0
  24. package/dist/cjs/src/lib/index.d.ts.map +1 -0
  25. package/dist/{src → cjs/src}/lib/index.js +10 -2
  26. package/dist/{src → cjs/src}/lib/instructionParamsFactory.d.ts +1 -0
  27. package/dist/cjs/src/lib/instructionParamsFactory.d.ts.map +1 -0
  28. package/dist/cjs/src/lib/instructionParamsFactory.js +1081 -0
  29. package/dist/cjs/src/lib/jitoStakePoolOperations.d.ts.map +1 -0
  30. package/dist/cjs/src/lib/jitoStakePoolOperations.js +200 -0
  31. package/dist/cjs/src/lib/keyPair.d.ts.map +1 -0
  32. package/dist/cjs/src/lib/keyPair.js +63 -0
  33. package/dist/cjs/src/lib/messages/index.d.ts.map +1 -0
  34. package/dist/{src → cjs/src}/lib/messages/index.js +1 -1
  35. package/dist/cjs/src/lib/messages/messageBuilderFactory.d.ts.map +1 -0
  36. package/dist/cjs/src/lib/messages/messageBuilderFactory.js +19 -0
  37. package/dist/cjs/src/lib/recoverNestedAtaBuilder.d.ts +25 -0
  38. package/dist/cjs/src/lib/recoverNestedAtaBuilder.d.ts.map +1 -0
  39. package/dist/cjs/src/lib/recoverNestedAtaBuilder.js +90 -0
  40. package/dist/cjs/src/lib/solInstructionFactory.d.ts.map +1 -0
  41. package/dist/cjs/src/lib/solInstructionFactory.js +605 -0
  42. package/dist/cjs/src/lib/stakingActivateBuilder.d.ts.map +1 -0
  43. package/dist/cjs/src/lib/stakingActivateBuilder.js +120 -0
  44. package/dist/cjs/src/lib/stakingAuthorizeBuilder.d.ts.map +1 -0
  45. package/dist/cjs/src/lib/stakingAuthorizeBuilder.js +89 -0
  46. package/dist/cjs/src/lib/stakingDeactivateBuilder.d.ts.map +1 -0
  47. package/dist/cjs/src/lib/stakingDeactivateBuilder.js +208 -0
  48. package/dist/cjs/src/lib/stakingDelegateBuilder.d.ts.map +1 -0
  49. package/dist/cjs/src/lib/stakingDelegateBuilder.js +120 -0
  50. package/dist/cjs/src/lib/stakingRawMsgAuthorizeBuilder.d.ts.map +1 -0
  51. package/dist/cjs/src/lib/stakingRawMsgAuthorizeBuilder.js +110 -0
  52. package/dist/cjs/src/lib/stakingWithdrawBuilder.d.ts.map +1 -0
  53. package/dist/cjs/src/lib/stakingWithdrawBuilder.js +78 -0
  54. package/dist/cjs/src/lib/token2022Config.d.ts.map +1 -0
  55. package/dist/cjs/src/lib/token2022Config.js +27 -0
  56. package/dist/cjs/src/lib/tokenExtensions.d.ts +31 -0
  57. package/dist/cjs/src/lib/tokenExtensions.d.ts.map +1 -0
  58. package/dist/cjs/src/lib/tokenExtensions.js +112 -0
  59. package/dist/cjs/src/lib/tokenTransferBuilder.d.ts.map +1 -0
  60. package/dist/cjs/src/lib/tokenTransferBuilder.js +194 -0
  61. package/dist/cjs/src/lib/transaction.d.ts.map +1 -0
  62. package/dist/cjs/src/lib/transaction.js +612 -0
  63. package/dist/cjs/src/lib/transactionBuilder.d.ts.map +1 -0
  64. package/dist/cjs/src/lib/transactionBuilder.js +380 -0
  65. package/dist/{src → cjs/src}/lib/transactionBuilderFactory.d.ts +5 -0
  66. package/dist/cjs/src/lib/transactionBuilderFactory.d.ts.map +1 -0
  67. package/dist/cjs/src/lib/transactionBuilderFactory.js +209 -0
  68. package/dist/cjs/src/lib/transferBuilder.d.ts.map +1 -0
  69. package/dist/cjs/src/lib/transferBuilder.js +70 -0
  70. package/dist/cjs/src/lib/transferBuilderV2.d.ts.map +1 -0
  71. package/dist/cjs/src/lib/transferBuilderV2.js +210 -0
  72. package/dist/{src → cjs/src}/lib/utils.d.ts +5 -0
  73. package/dist/cjs/src/lib/utils.d.ts.map +1 -0
  74. package/dist/cjs/src/lib/utils.js +632 -0
  75. package/dist/cjs/src/lib/walletInitializationBuilder.d.ts.map +1 -0
  76. package/dist/cjs/src/lib/walletInitializationBuilder.js +71 -0
  77. package/dist/cjs/src/register.d.ts +5 -0
  78. package/dist/cjs/src/register.d.ts.map +1 -0
  79. package/dist/cjs/src/register.js +29 -0
  80. package/dist/{src → cjs/src}/sol.d.ts +55 -2
  81. package/dist/cjs/src/sol.d.ts.map +1 -0
  82. package/dist/cjs/src/sol.js +1533 -0
  83. package/dist/{src → cjs/src}/solToken.d.ts +7 -0
  84. package/dist/cjs/src/solToken.d.ts.map +1 -0
  85. package/dist/cjs/src/solToken.js +79 -0
  86. package/dist/cjs/src/tsol.d.ts.map +1 -0
  87. package/dist/cjs/src/tsol.js +24 -0
  88. package/dist/{test → cjs/test}/fixtures/sol.d.ts.map +1 -1
  89. package/dist/cjs/test/fixtures/sol.js +1433 -0
  90. package/dist/{test → cjs/test}/resources/sol.d.ts +27 -27
  91. package/dist/cjs/test/resources/sol.d.ts.map +1 -0
  92. package/dist/cjs/test/resources/sol.js +320 -0
  93. package/dist/cjs/test/unit/explainTransactionWasm.d.ts +5 -0
  94. package/dist/cjs/test/unit/explainTransactionWasm.d.ts.map +1 -0
  95. package/dist/cjs/test/unit/explainTransactionWasm.js +26 -0
  96. package/dist/cjs/test/unit/fixtures/solBackupKey.d.ts.map +1 -0
  97. package/dist/cjs/test/unit/fixtures/solBackupKey.js +8 -0
  98. package/dist/cjs/test/unit/getBuilderFactory.d.ts.map +1 -0
  99. package/dist/cjs/test/unit/getBuilderFactory.js +10 -0
  100. package/dist/cjs/test/unit/instructionParamsFactory.d.ts.map +1 -0
  101. package/dist/cjs/test/unit/instructionParamsFactory.js +425 -0
  102. package/dist/cjs/test/unit/instructionParamsFactory.staking.d.ts.map +1 -0
  103. package/dist/cjs/test/unit/instructionParamsFactory.staking.js +1059 -0
  104. package/dist/cjs/test/unit/jitoWasmVerification.d.ts +2 -0
  105. package/dist/cjs/test/unit/jitoWasmVerification.d.ts.map +1 -0
  106. package/dist/cjs/test/unit/jitoWasmVerification.js +78 -0
  107. package/dist/{test → cjs/test}/unit/keyPair.d.ts.map +1 -1
  108. package/dist/cjs/test/unit/keyPair.js +177 -0
  109. package/dist/cjs/test/unit/messages/messageBuilderFactory.d.ts.map +1 -0
  110. package/dist/cjs/test/unit/messages/messageBuilderFactory.js +118 -0
  111. package/dist/cjs/test/unit/messages/simpleMessageBuilder.d.ts.map +1 -0
  112. package/dist/cjs/test/unit/messages/simpleMessageBuilder.js +194 -0
  113. package/dist/cjs/test/unit/register.d.ts +2 -0
  114. package/dist/cjs/test/unit/register.d.ts.map +1 -0
  115. package/dist/cjs/test/unit/register.js +65 -0
  116. package/dist/{test → cjs/test}/unit/sol.d.ts.map +1 -1
  117. package/dist/cjs/test/unit/sol.js +4477 -0
  118. package/dist/cjs/test/unit/solInstructionFactory.d.ts.map +1 -0
  119. package/dist/cjs/test/unit/solInstructionFactory.js +479 -0
  120. package/dist/cjs/test/unit/solToken.d.ts.map +1 -0
  121. package/dist/cjs/test/unit/solToken.js +37 -0
  122. package/dist/cjs/test/unit/tokenExtensions.d.ts +2 -0
  123. package/dist/cjs/test/unit/tokenExtensions.d.ts.map +1 -0
  124. package/dist/cjs/test/unit/tokenExtensions.js +32 -0
  125. package/dist/cjs/test/unit/transaction.d.ts.map +1 -0
  126. package/dist/cjs/test/unit/transaction.js +1108 -0
  127. package/dist/cjs/test/unit/transactionBuilder/StakingWithdrawBuilder.d.ts.map +1 -0
  128. package/dist/cjs/test/unit/transactionBuilder/StakingWithdrawBuilder.js +202 -0
  129. package/dist/cjs/test/unit/transactionBuilder/ataInitBuilder.d.ts.map +1 -0
  130. package/dist/cjs/test/unit/transactionBuilder/ataInitBuilder.js +471 -0
  131. package/dist/cjs/test/unit/transactionBuilder/closeAtaBuilder.d.ts +2 -0
  132. package/dist/cjs/test/unit/transactionBuilder/closeAtaBuilder.d.ts.map +1 -0
  133. package/dist/cjs/test/unit/transactionBuilder/closeAtaBuilder.js +333 -0
  134. package/dist/cjs/test/unit/transactionBuilder/customInstructionBuilder.d.ts.map +1 -0
  135. package/dist/cjs/test/unit/transactionBuilder/customInstructionBuilder.js +413 -0
  136. package/dist/cjs/test/unit/transactionBuilder/stakingActivateBuilder.d.ts.map +1 -0
  137. package/dist/cjs/test/unit/transactionBuilder/stakingActivateBuilder.js +430 -0
  138. package/dist/cjs/test/unit/transactionBuilder/stakingAuthorizeBuilder.d.ts.map +1 -0
  139. package/dist/cjs/test/unit/transactionBuilder/stakingAuthorizeBuilder.js +157 -0
  140. package/dist/cjs/test/unit/transactionBuilder/stakingDeactivateBuilder.d.ts.map +1 -0
  141. package/dist/cjs/test/unit/transactionBuilder/stakingDeactivateBuilder.js +384 -0
  142. package/dist/cjs/test/unit/transactionBuilder/stakingDelegateBuilder.d.ts.map +1 -0
  143. package/dist/cjs/test/unit/transactionBuilder/stakingDelegateBuilder.js +224 -0
  144. package/dist/cjs/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.d.ts.map +1 -0
  145. package/dist/cjs/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.js +259 -0
  146. package/dist/cjs/test/unit/transactionBuilder/tokenTransferBuilder.d.ts.map +1 -0
  147. package/dist/cjs/test/unit/transactionBuilder/tokenTransferBuilder.js +787 -0
  148. package/dist/cjs/test/unit/transactionBuilder/transactionBuilder.d.ts.map +1 -0
  149. package/dist/cjs/test/unit/transactionBuilder/transactionBuilder.js +495 -0
  150. package/dist/cjs/test/unit/transactionBuilder/transferBuilder.d.ts.map +1 -0
  151. package/dist/cjs/test/unit/transactionBuilder/transferBuilder.js +286 -0
  152. package/dist/cjs/test/unit/transactionBuilder/transferBuilderV2.d.ts.map +1 -0
  153. package/dist/cjs/test/unit/transactionBuilder/transferBuilderV2.js +862 -0
  154. package/dist/cjs/test/unit/transactionBuilder/walletInitBuilder.d.ts.map +1 -0
  155. package/dist/cjs/test/unit/transactionBuilder/walletInitBuilder.js +259 -0
  156. package/dist/{test → cjs/test}/unit/utils.d.ts.map +1 -1
  157. package/dist/cjs/test/unit/utils.js +557 -0
  158. package/dist/cjs/test/unit/versionedTransaction.d.ts.map +1 -0
  159. package/dist/cjs/test/unit/versionedTransaction.js +207 -0
  160. package/dist/cjs/tsconfig.tsbuildinfo +1 -0
  161. package/dist/esm/bigint-buffer-guard.d.ts +1 -0
  162. package/dist/esm/config/token2022StaticConfig.d.ts +3 -0
  163. package/dist/esm/config/token2022StaticConfig.js +47 -0
  164. package/dist/esm/index.d.ts +7 -0
  165. package/dist/esm/index.js +7 -0
  166. package/dist/esm/lib/ataInitializationBuilder.d.ts +47 -0
  167. package/dist/{src → esm}/lib/ataInitializationBuilder.d.ts.map +1 -1
  168. package/dist/esm/lib/ataInitializationBuilder.js +160 -0
  169. package/dist/esm/lib/closeAtaBuilder.d.ts +51 -0
  170. package/dist/esm/lib/closeAtaBuilder.d.ts.map +1 -0
  171. package/dist/esm/lib/closeAtaBuilder.js +140 -0
  172. package/dist/esm/lib/constants.d.ts +164 -0
  173. package/dist/esm/lib/constants.d.ts.map +1 -0
  174. package/dist/esm/lib/constants.js +193 -0
  175. package/dist/esm/lib/customInstructionBuilder.d.ts +72 -0
  176. package/dist/esm/lib/customInstructionBuilder.js +282 -0
  177. package/dist/esm/lib/explainTransactionWasm.d.ts +21 -0
  178. package/dist/esm/lib/explainTransactionWasm.d.ts.map +1 -0
  179. package/dist/esm/lib/explainTransactionWasm.js +261 -0
  180. package/dist/esm/lib/iface.d.ts +264 -0
  181. package/dist/esm/lib/iface.d.ts.map +1 -0
  182. package/dist/esm/lib/iface.js +3 -0
  183. package/dist/esm/lib/index.d.ts +24 -0
  184. package/dist/{src → esm}/lib/index.d.ts.map +1 -1
  185. package/dist/esm/lib/index.js +24 -0
  186. package/dist/esm/lib/instructionParamsFactory.d.ts +13 -0
  187. package/dist/{src → esm}/lib/instructionParamsFactory.d.ts.map +1 -1
  188. package/dist/esm/lib/instructionParamsFactory.js +1074 -0
  189. package/dist/esm/lib/jitoStakePoolOperations.d.ts +113 -0
  190. package/dist/esm/lib/jitoStakePoolOperations.js +189 -0
  191. package/dist/esm/lib/keyPair.d.ts +26 -0
  192. package/dist/esm/lib/keyPair.js +59 -0
  193. package/dist/esm/lib/messages/index.d.ts +2 -0
  194. package/dist/esm/lib/messages/index.js +2 -0
  195. package/dist/esm/lib/messages/messageBuilderFactory.d.ts +7 -0
  196. package/dist/{src → esm}/lib/messages/messageBuilderFactory.js +5 -9
  197. package/dist/esm/lib/recoverNestedAtaBuilder.d.ts +25 -0
  198. package/dist/esm/lib/recoverNestedAtaBuilder.d.ts.map +1 -0
  199. package/dist/esm/lib/recoverNestedAtaBuilder.js +83 -0
  200. package/dist/esm/lib/solInstructionFactory.d.ts +10 -0
  201. package/dist/esm/lib/solInstructionFactory.d.ts.map +1 -0
  202. package/dist/esm/lib/solInstructionFactory.js +599 -0
  203. package/dist/esm/lib/stakingActivateBuilder.d.ts +59 -0
  204. package/dist/esm/lib/stakingActivateBuilder.js +113 -0
  205. package/dist/esm/lib/stakingAuthorizeBuilder.d.ts +43 -0
  206. package/dist/esm/lib/stakingAuthorizeBuilder.js +82 -0
  207. package/dist/esm/lib/stakingDeactivateBuilder.d.ts +81 -0
  208. package/dist/{src → esm}/lib/stakingDeactivateBuilder.js +31 -38
  209. package/dist/esm/lib/stakingDelegateBuilder.d.ts +42 -0
  210. package/dist/esm/lib/stakingDelegateBuilder.js +113 -0
  211. package/dist/esm/lib/stakingRawMsgAuthorizeBuilder.d.ts +33 -0
  212. package/dist/esm/lib/stakingRawMsgAuthorizeBuilder.js +103 -0
  213. package/dist/esm/lib/stakingWithdrawBuilder.d.ts +31 -0
  214. package/dist/esm/lib/stakingWithdrawBuilder.js +71 -0
  215. package/dist/esm/lib/token2022Config.d.ts +44 -0
  216. package/dist/esm/lib/token2022Config.js +23 -0
  217. package/dist/esm/lib/tokenExtensions.d.ts +31 -0
  218. package/dist/esm/lib/tokenExtensions.d.ts.map +1 -0
  219. package/dist/esm/lib/tokenExtensions.js +105 -0
  220. package/dist/esm/lib/tokenTransferBuilder.d.ts +41 -0
  221. package/dist/{src → esm}/lib/tokenTransferBuilder.d.ts.map +1 -1
  222. package/dist/esm/lib/tokenTransferBuilder.js +187 -0
  223. package/dist/esm/lib/transaction.d.ts +103 -0
  224. package/dist/esm/lib/transaction.d.ts.map +1 -0
  225. package/dist/esm/lib/transaction.js +605 -0
  226. package/dist/esm/lib/transactionBuilder.d.ts +128 -0
  227. package/dist/esm/lib/transactionBuilder.js +373 -0
  228. package/dist/esm/lib/transactionBuilderFactory.d.ts +120 -0
  229. package/dist/esm/lib/transactionBuilderFactory.d.ts.map +1 -0
  230. package/dist/esm/lib/transactionBuilderFactory.js +205 -0
  231. package/dist/esm/lib/transferBuilder.d.ts +26 -0
  232. package/dist/esm/lib/transferBuilder.js +63 -0
  233. package/dist/esm/lib/transferBuilderV2.d.ts +43 -0
  234. package/dist/esm/lib/transferBuilderV2.js +203 -0
  235. package/dist/esm/lib/utils.d.ts +205 -0
  236. package/dist/{src → esm}/lib/utils.d.ts.map +1 -1
  237. package/dist/esm/lib/utils.js +594 -0
  238. package/dist/esm/lib/walletInitializationBuilder.d.ts +26 -0
  239. package/dist/esm/lib/walletInitializationBuilder.js +64 -0
  240. package/dist/esm/register.d.ts +5 -0
  241. package/dist/esm/register.d.ts.map +1 -0
  242. package/dist/esm/register.js +24 -0
  243. package/dist/esm/sol.d.ts +293 -0
  244. package/dist/esm/sol.d.ts.map +1 -0
  245. package/dist/esm/sol.js +1492 -0
  246. package/dist/esm/solToken.d.ts +44 -0
  247. package/dist/esm/solToken.d.ts.map +1 -0
  248. package/dist/esm/solToken.js +75 -0
  249. package/dist/esm/tsol.d.ts +11 -0
  250. package/dist/esm/tsol.js +20 -0
  251. package/package.json +35 -16
  252. package/dist/src/config/token2022StaticConfig.js +0 -50
  253. package/dist/src/lib/closeAtaBuilder.d.ts +0 -19
  254. package/dist/src/lib/closeAtaBuilder.d.ts.map +0 -1
  255. package/dist/src/lib/closeAtaBuilder.js +0 -69
  256. package/dist/src/lib/constants.d.ts.map +0 -1
  257. package/dist/src/lib/constants.js +0 -171
  258. package/dist/src/lib/customInstructionBuilder.js +0 -289
  259. package/dist/src/lib/iface.d.ts.map +0 -1
  260. package/dist/src/lib/iface.js +0 -7
  261. package/dist/src/lib/instructionParamsFactory.js +0 -1036
  262. package/dist/src/lib/jitoStakePoolOperations.js +0 -200
  263. package/dist/src/lib/keyPair.js +0 -63
  264. package/dist/src/lib/solInstructionFactory.d.ts.map +0 -1
  265. package/dist/src/lib/solInstructionFactory.js +0 -572
  266. package/dist/src/lib/stakingActivateBuilder.js +0 -120
  267. package/dist/src/lib/stakingAuthorizeBuilder.js +0 -89
  268. package/dist/src/lib/stakingDelegateBuilder.js +0 -120
  269. package/dist/src/lib/stakingRawMsgAuthorizeBuilder.js +0 -110
  270. package/dist/src/lib/stakingWithdrawBuilder.js +0 -78
  271. package/dist/src/lib/token2022Config.js +0 -27
  272. package/dist/src/lib/tokenTransferBuilder.js +0 -188
  273. package/dist/src/lib/transaction.d.ts.map +0 -1
  274. package/dist/src/lib/transaction.js +0 -595
  275. package/dist/src/lib/transactionBuilder.js +0 -380
  276. package/dist/src/lib/transactionBuilderFactory.d.ts.map +0 -1
  277. package/dist/src/lib/transactionBuilderFactory.js +0 -202
  278. package/dist/src/lib/transferBuilder.js +0 -70
  279. package/dist/src/lib/transferBuilderV2.js +0 -210
  280. package/dist/src/lib/utils.js +0 -589
  281. package/dist/src/lib/walletInitializationBuilder.js +0 -71
  282. package/dist/src/register.d.ts +0 -3
  283. package/dist/src/register.d.ts.map +0 -1
  284. package/dist/src/register.js +0 -15
  285. package/dist/src/sol.d.ts.map +0 -1
  286. package/dist/src/sol.js +0 -1324
  287. package/dist/src/solToken.d.ts.map +0 -1
  288. package/dist/src/solToken.js +0 -69
  289. package/dist/src/tsol.js +0 -24
  290. package/dist/test/fixtures/sol.js +0 -1433
  291. package/dist/test/resources/sol.d.ts.map +0 -1
  292. package/dist/test/resources/sol.js +0 -320
  293. package/dist/test/unit/fixtures/solBackupKey.d.ts.map +0 -1
  294. package/dist/test/unit/fixtures/solBackupKey.js +0 -8
  295. package/dist/test/unit/getBuilderFactory.d.ts.map +0 -1
  296. package/dist/test/unit/getBuilderFactory.js +0 -10
  297. package/dist/test/unit/instructionParamsFactory.d.ts.map +0 -1
  298. package/dist/test/unit/instructionParamsFactory.js +0 -412
  299. package/dist/test/unit/instructionParamsFactory.staking.d.ts.map +0 -1
  300. package/dist/test/unit/instructionParamsFactory.staking.js +0 -1059
  301. package/dist/test/unit/keyPair.js +0 -177
  302. package/dist/test/unit/messages/messageBuilderFactory.d.ts.map +0 -1
  303. package/dist/test/unit/messages/messageBuilderFactory.js +0 -118
  304. package/dist/test/unit/messages/simpleMessageBuilder.d.ts.map +0 -1
  305. package/dist/test/unit/messages/simpleMessageBuilder.js +0 -194
  306. package/dist/test/unit/sol.js +0 -3180
  307. package/dist/test/unit/solInstructionFactory.d.ts.map +0 -1
  308. package/dist/test/unit/solInstructionFactory.js +0 -454
  309. package/dist/test/unit/solToken.d.ts.map +0 -1
  310. package/dist/test/unit/solToken.js +0 -31
  311. package/dist/test/unit/transaction.d.ts.map +0 -1
  312. package/dist/test/unit/transaction.js +0 -983
  313. package/dist/test/unit/transactionBuilder/StakingWithdrawBuilder.d.ts.map +0 -1
  314. package/dist/test/unit/transactionBuilder/StakingWithdrawBuilder.js +0 -202
  315. package/dist/test/unit/transactionBuilder/ataInitBuilder.d.ts.map +0 -1
  316. package/dist/test/unit/transactionBuilder/ataInitBuilder.js +0 -471
  317. package/dist/test/unit/transactionBuilder/customInstructionBuilder.d.ts.map +0 -1
  318. package/dist/test/unit/transactionBuilder/customInstructionBuilder.js +0 -413
  319. package/dist/test/unit/transactionBuilder/stakingActivateBuilder.d.ts.map +0 -1
  320. package/dist/test/unit/transactionBuilder/stakingActivateBuilder.js +0 -430
  321. package/dist/test/unit/transactionBuilder/stakingAuthorizeBuilder.d.ts.map +0 -1
  322. package/dist/test/unit/transactionBuilder/stakingAuthorizeBuilder.js +0 -157
  323. package/dist/test/unit/transactionBuilder/stakingDeactivateBuilder.d.ts.map +0 -1
  324. package/dist/test/unit/transactionBuilder/stakingDeactivateBuilder.js +0 -384
  325. package/dist/test/unit/transactionBuilder/stakingDelegateBuilder.d.ts.map +0 -1
  326. package/dist/test/unit/transactionBuilder/stakingDelegateBuilder.js +0 -224
  327. package/dist/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.d.ts.map +0 -1
  328. package/dist/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.js +0 -259
  329. package/dist/test/unit/transactionBuilder/tokenTransferBuilder.d.ts.map +0 -1
  330. package/dist/test/unit/transactionBuilder/tokenTransferBuilder.js +0 -787
  331. package/dist/test/unit/transactionBuilder/transactionBuilder.d.ts.map +0 -1
  332. package/dist/test/unit/transactionBuilder/transactionBuilder.js +0 -495
  333. package/dist/test/unit/transactionBuilder/transferBuilder.d.ts.map +0 -1
  334. package/dist/test/unit/transactionBuilder/transferBuilder.js +0 -286
  335. package/dist/test/unit/transactionBuilder/transferBuilderV2.d.ts.map +0 -1
  336. package/dist/test/unit/transactionBuilder/transferBuilderV2.js +0 -862
  337. package/dist/test/unit/transactionBuilder/walletInitBuilder.d.ts.map +0 -1
  338. package/dist/test/unit/transactionBuilder/walletInitBuilder.js +0 -259
  339. package/dist/test/unit/utils.js +0 -517
  340. package/dist/test/unit/versionedTransaction.d.ts.map +0 -1
  341. package/dist/test/unit/versionedTransaction.js +0 -207
  342. package/dist/tsconfig.tsbuildinfo +0 -1
  343. /package/dist/{src → cjs/src}/bigint-buffer-guard.d.ts +0 -0
  344. /package/dist/{src → cjs/src}/config/token2022StaticConfig.d.ts +0 -0
  345. /package/dist/{src → cjs/src}/index.d.ts +0 -0
  346. /package/dist/{src → cjs/src}/lib/ataInitializationBuilder.d.ts +0 -0
  347. /package/dist/{src → cjs/src}/lib/customInstructionBuilder.d.ts +0 -0
  348. /package/dist/{src → cjs/src}/lib/jitoStakePoolOperations.d.ts +0 -0
  349. /package/dist/{src → cjs/src}/lib/keyPair.d.ts +0 -0
  350. /package/dist/{src → cjs/src}/lib/messages/index.d.ts +0 -0
  351. /package/dist/{src → cjs/src}/lib/messages/messageBuilderFactory.d.ts +0 -0
  352. /package/dist/{src → cjs/src}/lib/solInstructionFactory.d.ts +0 -0
  353. /package/dist/{src → cjs/src}/lib/stakingActivateBuilder.d.ts +0 -0
  354. /package/dist/{src → cjs/src}/lib/stakingAuthorizeBuilder.d.ts +0 -0
  355. /package/dist/{src → cjs/src}/lib/stakingDeactivateBuilder.d.ts +0 -0
  356. /package/dist/{src → cjs/src}/lib/stakingDelegateBuilder.d.ts +0 -0
  357. /package/dist/{src → cjs/src}/lib/stakingRawMsgAuthorizeBuilder.d.ts +0 -0
  358. /package/dist/{src → cjs/src}/lib/stakingWithdrawBuilder.d.ts +0 -0
  359. /package/dist/{src → cjs/src}/lib/token2022Config.d.ts +0 -0
  360. /package/dist/{src → cjs/src}/lib/tokenTransferBuilder.d.ts +0 -0
  361. /package/dist/{src → cjs/src}/lib/transaction.d.ts +0 -0
  362. /package/dist/{src → cjs/src}/lib/transactionBuilder.d.ts +0 -0
  363. /package/dist/{src → cjs/src}/lib/transferBuilder.d.ts +0 -0
  364. /package/dist/{src → cjs/src}/lib/transferBuilderV2.d.ts +0 -0
  365. /package/dist/{src → cjs/src}/lib/walletInitializationBuilder.d.ts +0 -0
  366. /package/dist/{src → cjs/src}/tsol.d.ts +0 -0
  367. /package/dist/{test → cjs/test}/fixtures/sol.d.ts +0 -0
  368. /package/dist/{test → cjs/test}/unit/fixtures/solBackupKey.d.ts +0 -0
  369. /package/dist/{test → cjs/test}/unit/getBuilderFactory.d.ts +0 -0
  370. /package/dist/{test → cjs/test}/unit/instructionParamsFactory.d.ts +0 -0
  371. /package/dist/{test → cjs/test}/unit/instructionParamsFactory.staking.d.ts +0 -0
  372. /package/dist/{test → cjs/test}/unit/keyPair.d.ts +0 -0
  373. /package/dist/{test → cjs/test}/unit/messages/messageBuilderFactory.d.ts +0 -0
  374. /package/dist/{test → cjs/test}/unit/messages/simpleMessageBuilder.d.ts +0 -0
  375. /package/dist/{test → cjs/test}/unit/sol.d.ts +0 -0
  376. /package/dist/{test → cjs/test}/unit/solInstructionFactory.d.ts +0 -0
  377. /package/dist/{test → cjs/test}/unit/solToken.d.ts +0 -0
  378. /package/dist/{test → cjs/test}/unit/transaction.d.ts +0 -0
  379. /package/dist/{test → cjs/test}/unit/transactionBuilder/StakingWithdrawBuilder.d.ts +0 -0
  380. /package/dist/{test → cjs/test}/unit/transactionBuilder/ataInitBuilder.d.ts +0 -0
  381. /package/dist/{test → cjs/test}/unit/transactionBuilder/customInstructionBuilder.d.ts +0 -0
  382. /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingActivateBuilder.d.ts +0 -0
  383. /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingAuthorizeBuilder.d.ts +0 -0
  384. /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingDeactivateBuilder.d.ts +0 -0
  385. /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingDelegateBuilder.d.ts +0 -0
  386. /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.d.ts +0 -0
  387. /package/dist/{test → cjs/test}/unit/transactionBuilder/tokenTransferBuilder.d.ts +0 -0
  388. /package/dist/{test → cjs/test}/unit/transactionBuilder/transactionBuilder.d.ts +0 -0
  389. /package/dist/{test → cjs/test}/unit/transactionBuilder/transferBuilder.d.ts +0 -0
  390. /package/dist/{test → cjs/test}/unit/transactionBuilder/transferBuilderV2.d.ts +0 -0
  391. /package/dist/{test → cjs/test}/unit/transactionBuilder/walletInitBuilder.d.ts +0 -0
  392. /package/dist/{test → cjs/test}/unit/utils.d.ts +0 -0
  393. /package/dist/{test → cjs/test}/unit/versionedTransaction.d.ts +0 -0
  394. /package/dist/{src → esm}/bigint-buffer-guard.d.ts.map +0 -0
  395. /package/dist/{src → esm}/bigint-buffer-guard.js +0 -0
  396. /package/dist/{src → esm}/config/token2022StaticConfig.d.ts.map +0 -0
  397. /package/dist/{src → esm}/index.d.ts.map +0 -0
  398. /package/dist/{src → esm}/lib/customInstructionBuilder.d.ts.map +0 -0
  399. /package/dist/{src → esm}/lib/jitoStakePoolOperations.d.ts.map +0 -0
  400. /package/dist/{src → esm}/lib/keyPair.d.ts.map +0 -0
  401. /package/dist/{src → esm}/lib/messages/index.d.ts.map +0 -0
  402. /package/dist/{src → esm}/lib/messages/messageBuilderFactory.d.ts.map +0 -0
  403. /package/dist/{src → esm}/lib/stakingActivateBuilder.d.ts.map +0 -0
  404. /package/dist/{src → esm}/lib/stakingAuthorizeBuilder.d.ts.map +0 -0
  405. /package/dist/{src → esm}/lib/stakingDeactivateBuilder.d.ts.map +0 -0
  406. /package/dist/{src → esm}/lib/stakingDelegateBuilder.d.ts.map +0 -0
  407. /package/dist/{src → esm}/lib/stakingRawMsgAuthorizeBuilder.d.ts.map +0 -0
  408. /package/dist/{src → esm}/lib/stakingWithdrawBuilder.d.ts.map +0 -0
  409. /package/dist/{src → esm}/lib/token2022Config.d.ts.map +0 -0
  410. /package/dist/{src → esm}/lib/transactionBuilder.d.ts.map +0 -0
  411. /package/dist/{src → esm}/lib/transferBuilder.d.ts.map +0 -0
  412. /package/dist/{src → esm}/lib/transferBuilderV2.d.ts.map +0 -0
  413. /package/dist/{src → esm}/lib/walletInitializationBuilder.d.ts.map +0 -0
  414. /package/dist/{src → esm}/tsol.d.ts.map +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stakingRawMsgAuthorizeBuilder.d.ts","sourceRoot":"","sources":["../../../../src/lib/stakingRawMsgAuthorizeBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EACL,WAAW,EACX,OAAO,EACP,eAAe,EACf,sBAAsB,EAEtB,eAAe,EAChB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAU5C,OAAO,SAAS,MAAM,cAAc,CAAC;AAGrC,qBAAa,6BAA8B,SAAQ,sBAAsB;IACvE,SAAS,CAAC,YAAY,EAAE,WAAW,CAAC;IACpC,SAAS,CAAC,mBAAmB,EAAE,MAAM,CAAC;gBAC1B,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,kBAAkB;IAClB,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAMlC;;;;;;OAMG;IACH,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAMrC,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;IAgB3D,mBAAmB,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO;IAIvC,KAAK,IAAI,OAAO,CAAC,WAAW,CAAC;IAInC,SAAS,CAAC,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IA6B/C,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW;IAOjE,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,eAAe;IAI3D,SAAS,KAAK,WAAW,IAAI,WAAW,CAEvC;IAED,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI;IAInE,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAI/B,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAMpD,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;CAGtC"}
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.StakingRawMsgAuthorizeBuilder = void 0;
7
+ const sdk_core_1 = require("@bitgo-beta/sdk-core");
8
+ const transaction_1 = require("./transaction");
9
+ const web3_js_1 = require("@solana/web3.js");
10
+ const assert_1 = __importDefault(require("assert"));
11
+ const constants_1 = require("./constants");
12
+ class StakingRawMsgAuthorizeBuilder extends sdk_core_1.BaseTransactionBuilder {
13
+ constructor(_coinConfig) {
14
+ super(_coinConfig);
15
+ this._transaction = new transaction_1.Transaction(_coinConfig);
16
+ }
17
+ get transactionType() {
18
+ return sdk_core_1.TransactionType.StakingAuthorizeRaw;
19
+ }
20
+ /** @inheritdoc */
21
+ initBuilder(tx) {
22
+ if (this.validateTransaction(tx)) {
23
+ this.transactionMessage(tx.solTransaction.serializeMessage().toString('base64'));
24
+ }
25
+ }
26
+ /**
27
+ * The raw message generated by Solana CLI.
28
+ *
29
+ * @param {string} msg msg generated by 'solana stake-authorize-check.
30
+ * @returns {StakeBuilder} This staking builder.
31
+ *
32
+ */
33
+ transactionMessage(msg) {
34
+ this.validateMessage(msg);
35
+ this._transactionMessage = msg;
36
+ return this;
37
+ }
38
+ /** @inheritdoc */
39
+ async buildImplementation() {
40
+ (0, assert_1.default)(this._transactionMessage, 'missing transaction message');
41
+ this.validateMessage(this._transactionMessage);
42
+ const solTransaction = web3_js_1.Transaction.populate(web3_js_1.Message.from(Buffer.from(this._transactionMessage, 'base64')), []);
43
+ // this is workaround for solana web3.js generate wrong signing message
44
+ const serialized = solTransaction.serialize({ requireAllSignatures: false }).toString('base64');
45
+ this.transaction.fromRawTransaction(serialized);
46
+ this.transaction.setTransactionType(this.transactionType);
47
+ (0, assert_1.default)(this._transactionMessage === this.transaction.signablePayload.toString('base64'), 'wrong signing message');
48
+ return this.transaction;
49
+ }
50
+ validateTransaction(tx) {
51
+ return this.validateMessage(tx.solTransaction.serializeMessage().toString('base64'));
52
+ }
53
+ async build() {
54
+ return this.buildImplementation();
55
+ }
56
+ validateMessage(msg) {
57
+ const tx = web3_js_1.Transaction.populate(web3_js_1.Message.from(Buffer.from(msg, 'base64')), []);
58
+ const instructions = tx.instructions;
59
+ if (instructions.length !== 2 && instructions.length !== 3) {
60
+ throw new Error(`Invalid transaction, expected 2 instruction, got ${instructions.length}`);
61
+ }
62
+ for (const instruction of instructions) {
63
+ switch (instruction.programId.toString()) {
64
+ case web3_js_1.SystemProgram.programId.toString():
65
+ const instructionName = web3_js_1.SystemInstruction.decodeInstructionType(instruction);
66
+ if (instructionName !== constants_1.nonceAdvanceInstruction) {
67
+ throw new Error(`Invalid system instruction : ${instructionName}`);
68
+ }
69
+ break;
70
+ case web3_js_1.StakeProgram.programId.toString():
71
+ const data = instruction.data.toString('hex');
72
+ if (data !== constants_1.validInstructionData && data !== constants_1.validInstructionData2) {
73
+ throw new Error(`Invalid staking instruction data: ${data}`);
74
+ }
75
+ break;
76
+ default:
77
+ throw new Error(`Invalid transaction, instruction program id not supported: ${instruction.programId.toString()}`);
78
+ }
79
+ }
80
+ return true;
81
+ }
82
+ fromImplementation(rawTransaction) {
83
+ const tx = new transaction_1.Transaction(this._coinConfig);
84
+ tx.fromRawTransaction(rawTransaction);
85
+ this.initBuilder(tx);
86
+ return this.transaction;
87
+ }
88
+ signImplementation(key) {
89
+ throw new sdk_core_1.NotSupported('Method not supported on this builder');
90
+ }
91
+ get transaction() {
92
+ return this._transaction;
93
+ }
94
+ validateAddress(address, addressFormat) {
95
+ throw new sdk_core_1.NotSupported('Method not supported on this builder');
96
+ }
97
+ validateKey(key) {
98
+ throw new sdk_core_1.NotSupported('Method not supported on this builder');
99
+ }
100
+ validateRawTransaction(rawTransaction) {
101
+ const tx = new transaction_1.Transaction(this._coinConfig);
102
+ tx.fromRawTransaction(rawTransaction);
103
+ this.validateTransaction(tx);
104
+ }
105
+ validateValue(value) {
106
+ throw new sdk_core_1.NotSupported('Method not supported on this builder');
107
+ }
108
+ }
109
+ exports.StakingRawMsgAuthorizeBuilder = StakingRawMsgAuthorizeBuilder;
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rha2luZ1Jhd01zZ0F1dGhvcml6ZUJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3N0YWtpbmdSYXdNc2dBdXRob3JpemVCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLG1EQU84QjtBQUM5QiwrQ0FBNEM7QUFDNUMsNkNBTXlCO0FBRXpCLG9EQUE0QjtBQUU1QiwyQ0FBbUc7QUFFbkcsTUFBYSw2QkFBOEIsU0FBUSxpQ0FBc0I7SUFHdkUsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLHlCQUFXLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVELElBQWMsZUFBZTtRQUMzQixPQUFPLDBCQUFlLENBQUMsbUJBQW1CLENBQUM7SUFDN0MsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixXQUFXLENBQUMsRUFBZTtRQUN6QixJQUFJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ2pDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsY0FBYyxDQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDbkYsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxrQkFBa0IsQ0FBQyxHQUFXO1FBQzVCLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUIsSUFBSSxDQUFDLG1CQUFtQixHQUFHLEdBQUcsQ0FBQztRQUMvQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxrQkFBa0I7SUFDUixLQUFLLENBQUMsbUJBQW1CO1FBQ2pDLElBQUEsZ0JBQU0sRUFBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsNkJBQTZCLENBQUMsQ0FBQztRQUVoRSxJQUFJLENBQUMsZUFB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LGtCQUFrQixDQUFDLGNBQXNCO1FBQ2pELE1BQU0sRUFBRSxHQUFHLElBQUkseUJBQVcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDN0MsRUFBRSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDckIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFFUyxrQkFBa0IsQ0FBQyxHQUFZO1FBQ3ZDLE1BQU0sSUFBSSx1QkFBWSxDQUFDLHNDQUFzQyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELElBQWMsV0FBVztRQUN2QixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELGVBQWUsQ0FBQyxPQUFvQixFQUFFLGFBQXNCO1FBQzFELE1BQU0sSUFBSSx1QkFBWSxDQUFDLHNDQUFzQyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELFdBQVcsQ0FBQyxHQUFZO1FBQ3RCLE1BQU0sSUFBSSx1QkFBWSxDQUFDLHNDQUFzQyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVELHNCQUFzQixDQUFDLGNBQXNCO1FBQzNDLE1BQU0sRUFBRSxHQUFHLElBQUkseUJBQVcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDN0MsRUFBRSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQWdCO1FBQzVCLE1BQU0sSUFBSSx1QkFBWSxDQUFDLHNDQUFzQyxDQUFDLENBQUM7SUFDakUsQ0FBQztDQUNGO0FBdEhELHNFQXNIQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7XG4gIEJhc2VBZGRyZXNzLFxuICBCYXNlS2V5LFxuICBCYXNlVHJhbnNhY3Rpb24sXG4gIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIE5vdFN1cHBvcnRlZCxcbiAgVHJhbnNhY3Rpb25UeXBlLFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHtcbiAgVHJhbnNhY3Rpb24gYXMgU09MVHJhbnNhY3Rpb24sXG4gIE1lc3NhZ2UgYXMgU09MTWVzc2FnZSxcbiAgU3lzdGVtUHJvZ3JhbSxcbiAgU3lzdGVtSW5zdHJ1Y3Rpb24sXG4gIFN0YWtlUHJvZ3JhbSxcbn0gZnJvbSAnQHNvbGFuYS93ZWIzLmpzJztcblxuaW1wb3J0IGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IEJpZ051bWJlciBmcm9tICdiaWdudW1iZXIuanMnO1xuaW1wb3J0IHsgbm9uY2VBZHZhbmNlSW5zdHJ1Y3Rpb24sIHZhbGlkSW5zdHJ1Y3Rpb25EYXRhLCB2YWxpZEluc3RydWN0aW9uRGF0YTIgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5cbmV4cG9ydCBjbGFzcyBTdGFraW5nUmF3TXNnQXV0aG9yaXplQnVpbGRlciBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgX3RyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbjtcbiAgcHJvdGVjdGVkIF90cmFuc2FjdGlvbk1lc3NhZ2U6IHN0cmluZztcbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uID0gbmV3IFRyYW5zYWN0aW9uKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb25UeXBlKCk6IFRyYW5zYWN0aW9uVHlwZSB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nQXV0aG9yaXplUmF3O1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGluaXRCdWlsZGVyKHR4OiBUcmFuc2FjdGlvbik6IHZvaWQge1xuICAgIGlmICh0aGlzLnZhbGlkYXRlVHJhbnNhY3Rpb24odHgpKSB7XG4gICAgICB0aGlzLnRyYW5zYWN0aW9uTWVzc2FnZSh0eC5zb2xUcmFuc2FjdGlvbi5zZXJpYWxpemVNZXNzYWdlKCkudG9TdHJpbmcoJ2Jhc2U2NCcpKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVGhlIHJhdyBtZXNzYWdlIGdlbmVyYXRlZCBieSBTb2xhbmEgQ0xJLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gbXNnIG1zZyBnZW5lcmF0ZWQgYnkgJ3NvbGFuYSBzdGFrZS1hdXRob3JpemUtY2hlY2suXG4gICAqIEByZXR1cm5zIHtTdGFrZUJ1aWxkZXJ9IFRoaXMgc3Rha2luZyBidWlsZGVyLlxuICAgKlxuICAgKi9cbiAgdHJhbnNhY3Rpb25NZXNzYWdlKG1zZzogc3RyaW5nKTogdGhpcyB7XG4gICAgdGhpcy52YWxpZGF0ZU1lc3NhZ2UobXNnKTtcbiAgICB0aGlzLl90cmFuc2FjdGlvbk1lc3NhZ2UgPSBtc2c7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGFzeW5jIGJ1aWxkSW1wbGVtZW50YXRpb24oKTogUHJvbWlzZTxUcmFuc2FjdGlvbj4ge1xuICAgIGFzc2VydCh0aGlzLl90cmFuc2FjdGlvbk1lc3NhZ2UsICdtaXNzaW5nIHRyYW5zYWN0aW9uIG1lc3NhZ2UnKTtcblxuICAgIHRoaXMudmFsaWRhdGVNZXNzYWdlKHRoaXMuX3RyYW5zYWN0aW9uTWVzc2FnZSk7XG4gICAgY29uc3Qgc29sVHJhbnNhY3Rpb24gPSBTT0xUcmFuc2FjdGlvbi5wb3B1bGF0ZShcbiAgICAgIFNPTE1lc3NhZ2UuZnJvbShCdWZmZXIuZnJvbSh0aGlzLl90cmFuc2FjdGlvbk1lc3NhZ2UsICdiYXNlNjQnKSksXG4gICAgICBbXVxuICAgICk7XG4gICAgLy8gdGhpcyBpcyB3b3JrYXJvdW5kIGZvciBzb2xhbmEgd2ViMy5qcyBnZW5lcmF0ZSB3cm9uZyBzaWduaW5nIG1lc3NhZ2VcbiAgICBjb25zdCBzZXJpYWxpemVkID0gc29sVHJhbnNhY3Rpb24uc2VyaWFsaXplKHsgcmVxdWlyZUFsbFNpZ25hdHVyZXM6IGZhbHNlIH0pLnRvU3RyaW5nKCdiYXNlNjQnKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLmZyb21SYXdUcmFuc2FjdGlvbihzZXJpYWxpemVkKTtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnNldFRyYW5zYWN0aW9uVHlwZSh0aGlzLnRyYW5zYWN0aW9uVHlwZSk7XG4gICAgYXNzZXJ0KHRoaXMuX3RyYW5zYWN0aW9uTWVzc2FnZSA9PT0gdGhpcy50cmFuc2FjdGlvbi5zaWduYWJsZVBheWxvYWQudG9TdHJpbmcoJ2Jhc2U2NCcpLCAnd3Jvbmcgc2lnbmluZyBtZXNzYWdlJyk7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb247XG4gIH1cblxuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKHR4OiBUcmFuc2FjdGlvbik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnZhbGlkYXRlTWVzc2FnZSh0eC5zb2xUcmFuc2FjdGlvbi5zZXJpYWxpemVNZXNzYWdlKCkudG9TdHJpbmcoJ2Jhc2U2NCcpKTtcbiAgfVxuXG4gIGFzeW5jIGJ1aWxkKCk6IFByb21pc2U8VHJhbnNhY3Rpb24+IHtcbiAgICByZXR1cm4gdGhpcy5idWlsZEltcGxlbWVudGF0aW9uKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgdmFsaWRhdGVNZXNzYWdlKG1zZzogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgdHggPSBTT0xUcmFuc2FjdGlvbi5wb3B1bGF0ZShTT0xNZXNzYWdlLmZyb20oQnVmZmVyLmZyb20obXNnLCAnYmFzZTY0JykpLCBbXSk7XG4gICAgY29uc3QgaW5zdHJ1Y3Rpb25zID0gdHguaW5zdHJ1Y3Rpb25zO1xuICAgIGlmIChpbnN0cnVjdGlvbnMubGVuZ3RoICE9PSAyICYmIGluc3RydWN0aW9ucy5sZW5ndGggIT09IDMpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCB0cmFuc2FjdGlvbiwgZXhwZWN0ZWQgMiBpbnN0cnVjdGlvbiwgZ290ICR7aW5zdHJ1Y3Rpb25zLmxlbmd0aH1gKTtcbiAgICB9XG4gICAgZm9yIChjb25zdCBpbnN0cnVjdGlvbiBvZiBpbnN0cnVjdGlvbnMpIHtcbiAgICAgIHN3aXRjaCAoaW5zdHJ1Y3Rpb24ucHJvZ3JhbUlkLnRvU3RyaW5nKCkpIHtcbiAgICAgICAgY2FzZSBTeXN0ZW1Qcm9ncmFtLnByb2dyYW1JZC50b1N0cmluZygpOlxuICAgICAgICAgIGNvbnN0IGluc3RydWN0aW9uTmFtZSA9IFN5c3RlbUluc3RydWN0aW9uLmRlY29kZUluc3RydWN0aW9uVHlwZShpbnN0cnVjdGlvbik7XG4gICAgICAgICAgaWYgKGluc3RydWN0aW9uTmFtZSAhPT0gbm9uY2VBZHZhbmNlSW5zdHJ1Y3Rpb24pIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBzeXN0ZW0gaW5zdHJ1Y3Rpb24gOiAke2luc3RydWN0aW9uTmFtZX1gKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgU3Rha2VQcm9ncmFtLnByb2dyYW1JZC50b1N0cmluZygpOlxuICAgICAgICAgIGNvbnN0IGRhdGEgPSBpbnN0cnVjdGlvbi5kYXRhLnRvU3RyaW5nKCdoZXgnKTtcbiAgICAgICAgICBpZiAoZGF0YSAhPT0gdmFsaWRJbnN0cnVjdGlvbkRhdGEgJiYgZGF0YSAhPT0gdmFsaWRJbnN0cnVjdGlvbkRhdGEyKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgc3Rha2luZyBpbnN0cnVjdGlvbiBkYXRhOiAke2RhdGF9YCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgIGBJbnZhbGlkIHRyYW5zYWN0aW9uLCBpbnN0cnVjdGlvbiBwcm9ncmFtIGlkIG5vdCBzdXBwb3J0ZWQ6ICR7aW5zdHJ1Y3Rpb24ucHJvZ3JhbUlkLnRvU3RyaW5nKCl9YFxuICAgICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgcHJvdGVjdGVkIGZyb21JbXBsZW1lbnRhdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogVHJhbnNhY3Rpb24ge1xuICAgIGNvbnN0IHR4ID0gbmV3IFRyYW5zYWN0aW9uKHRoaXMuX2NvaW5Db25maWcpO1xuICAgIHR4LmZyb21SYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbik7XG4gICAgdGhpcy5pbml0QnVpbGRlcih0eCk7XG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb247XG4gIH1cblxuICBwcm90ZWN0ZWQgc2lnbkltcGxlbWVudGF0aW9uKGtleTogQmFzZUtleSk6IEJhc2VUcmFuc2FjdGlvbiB7XG4gICAgdGhyb3cgbmV3IE5vdFN1cHBvcnRlZCgnTWV0aG9kIG5vdCBzdXBwb3J0ZWQgb24gdGhpcyBidWlsZGVyJyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IHRyYW5zYWN0aW9uKCk6IFRyYW5zYWN0aW9uIHtcbiAgICByZXR1cm4gdGhpcy5fdHJhbnNhY3Rpb247XG4gIH1cblxuICB2YWxpZGF0ZUFkZHJlc3MoYWRkcmVzczogQmFzZUFkZHJlc3MsIGFkZHJlc3NGb3JtYXQ/OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgTm90U3VwcG9ydGVkKCdNZXRob2Qgbm90IHN1cHBvcnRlZCBvbiB0aGlzIGJ1aWxkZXInKTtcbiAgfVxuXG4gIHZhbGlkYXRlS2V5KGtleTogQmFzZUtleSk6IHZvaWQge1xuICAgIHRocm93IG5ldyBOb3RTdXBwb3J0ZWQoJ01ldGhvZCBub3Qgc3VwcG9ydGVkIG9uIHRoaXMgYnVpbGRlcicpO1xuICB9XG5cbiAgdmFsaWRhdGVSYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgdHggPSBuZXcgVHJhbnNhY3Rpb24odGhpcy5fY29pbkNvbmZpZyk7XG4gICAgdHguZnJvbVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgICB0aGlzLnZhbGlkYXRlVHJhbnNhY3Rpb24odHgpO1xuICB9XG5cbiAgdmFsaWRhdGVWYWx1ZSh2YWx1ZTogQmlnTnVtYmVyKTogdm9pZCB7XG4gICAgdGhyb3cgbmV3IE5vdFN1cHBvcnRlZCgnTWV0aG9kIG5vdCBzdXBwb3J0ZWQgb24gdGhpcyBidWlsZGVyJyk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stakingWithdrawBuilder.d.ts","sourceRoot":"","sources":["../../../../src/lib/stakingWithdrawBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAyB,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAO1D,qBAAa,sBAAuB,SAAQ,kBAAkB;IAC5D,SAAS,CAAC,eAAe,EAAE,MAAM,CAAC;IAClC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;gBAEd,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,kBAAkB;IAClB,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IAYlC;;;;;;OAMG;IACH,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAM5C;;;;;;OAMG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAQ5B,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;CAqB5D"}
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.StakingWithdrawBuilder = void 0;
7
+ const sdk_core_1 = require("@bitgo-beta/sdk-core");
8
+ const transactionBuilder_1 = require("./transactionBuilder");
9
+ const constants_1 = require("./constants");
10
+ const assert_1 = __importDefault(require("assert"));
11
+ const utils_1 = require("./utils");
12
+ class StakingWithdrawBuilder extends transactionBuilder_1.TransactionBuilder {
13
+ constructor(_coinConfig) {
14
+ super(_coinConfig);
15
+ }
16
+ get transactionType() {
17
+ return sdk_core_1.TransactionType.StakingWithdraw;
18
+ }
19
+ /** @inheritdoc */
20
+ initBuilder(tx) {
21
+ super.initBuilder(tx);
22
+ for (const instruction of this._instructionsData) {
23
+ if (instruction.type === constants_1.InstructionBuilderTypes.StakingWithdraw) {
24
+ const withdrawInstruction = instruction;
25
+ this.sender(withdrawInstruction.params.fromAddress);
26
+ this.stakingAddress(withdrawInstruction.params.stakingAddress);
27
+ this.amount(withdrawInstruction.params.amount);
28
+ }
29
+ }
30
+ }
31
+ /**
32
+ * The address of the staking account.
33
+ *
34
+ * @param {string} stakingAddress public address of the staking account
35
+ * @returns {StakeBuilder} This staking builder.
36
+ *
37
+ */
38
+ stakingAddress(stakingAddress) {
39
+ (0, utils_1.validateAddress)(stakingAddress, 'stakingAddress');
40
+ this._stakingAddress = stakingAddress;
41
+ return this;
42
+ }
43
+ /**
44
+ * The amount to withdraw expressed in Lamports, 1 SOL = 1_000_000_000 lamports
45
+ *
46
+ * @param {string} amount expressed in Lamports
47
+ * @returns {StakeBuilder} This staking builder.
48
+ *
49
+ */
50
+ amount(amount) {
51
+ if (!(0, utils_1.isValidStakingAmount)(amount)) {
52
+ throw new sdk_core_1.BuildTransactionError('Value cannot be zero or less');
53
+ }
54
+ this._amount = amount;
55
+ return this;
56
+ }
57
+ /** @inheritdoc */
58
+ async buildImplementation() {
59
+ (0, assert_1.default)(this._sender, 'Sender must be set before building the transaction');
60
+ (0, assert_1.default)(this._stakingAddress, 'Staking address must be set before building the transaction');
61
+ (0, assert_1.default)(this._amount, 'Amount must be set before building the transaction');
62
+ if (this._sender === this._stakingAddress) {
63
+ throw new sdk_core_1.BuildTransactionError('Sender address cannot be the same as the Staking address');
64
+ }
65
+ const stakingWithdrawData = {
66
+ type: constants_1.InstructionBuilderTypes.StakingWithdraw,
67
+ params: {
68
+ fromAddress: this._sender,
69
+ stakingAddress: this._stakingAddress,
70
+ amount: this._amount,
71
+ },
72
+ };
73
+ this._instructionsData = [stakingWithdrawData];
74
+ return await super.buildImplementation();
75
+ }
76
+ }
77
+ exports.StakingWithdrawBuilder = StakingWithdrawBuilder;
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Rha2luZ1dpdGhkcmF3QnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvc3Rha2luZ1dpdGhkcmF3QnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSxtREFBOEU7QUFFOUUsNkRBQTBEO0FBQzFELDJDQUFzRDtBQUV0RCxvREFBNEI7QUFFNUIsbUNBQWdFO0FBRWhFLE1BQWEsc0JBQXVCLFNBQVEsdUNBQWtCO0lBSTVELFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBZSxDQUFDLGVBQWUsQ0FBQztJQUN6QyxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLFdBQVcsQ0FBQyxFQUFlO1FBQ3pCLEtBQUssQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdEIsS0FBSyxNQUFNLFdBQVcsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUNqRCxJQUFJLFdBQVcsQ0FBQyxJQUFJLEtBQUssbUNBQXVCLENBQUMsZUFBZSxFQUFFLENBQUM7Z0JBQ2pFLE1BQU0sbUJBQW1CLEdBQW9CLFdBQVcsQ0FBQztnQkFDekQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7Z0JBQ3BELElBQUksQ0FBQyxjQUFjLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO2dCQUMvRCxJQUFJLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNqRCxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxjQUFjLENBQUMsY0FBc0I7UUFDbkMsSUFBQSx1QkFBZSxFQUFDLGNBQWMsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxlQUFlLEdBQUcsY0FBYyxDQUFDO1FBQ3RDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILE1BQU0sQ0FBQyxNQUFjO1FBQ25CLElBQUksQ0FBQyxJQUFBLDRCQUFvQixFQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDbEMsTUFBTSxJQUFJLGdDQUFxQixDQUFDLDhCQUE4QixDQUFDLENBQUM7UUFDbEUsQ0FBQztRQUNELElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBQ3RCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELGtCQUFrQjtJQUNSLEtBQUssQ0FBQyxtQkFBbUI7UUFDakMsSUFBQSxnQkFBTSxFQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsb0RBQW9ELENBQUMsQ0FBQztRQUMzRSxJQUFBLGdCQUFNLEVBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSw2REFBNkQsQ0FBQyxDQUFDO1FBQzVGLElBQUEsZ0JBQU0sRUFBQyxJQUFJLENBQUMsT0FBTyxFQUFFLG9EQUFvRCxDQUFDLENBQUM7UUFFM0UsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUMxQyxNQUFNLElBQUksZ0NBQXFCLENBQUMsMERBQTBELENBQUMsQ0FBQztRQUM5RixDQUFDO1FBRUQsTUFBTSxtQkFBbUIsR0FBb0I7WUFDM0MsSUFBSSxFQUFFLG1DQUF1QixDQUFDLGVBQWU7WUFDN0MsTUFBTSxFQUFFO2dCQUNOLFdBQVcsRUFBRSxJQUFJLENBQUMsT0FBTztnQkFDekIsY0FBYyxFQUFFLElBQUksQ0FBQyxlQUFlO2dCQUNwQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU87YUFDckI7U0FDRixDQUFDO1FBQ0YsSUFBSSxDQUFDLGlCQUFpQixHQUFHLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUUvQyxPQUFPLE1BQU0sS0FBSyxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDM0MsQ0FBQztDQUNGO0FBM0VELHdEQTJFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IEJ1aWxkVHJhbnNhY3Rpb25FcnJvciwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IEluc3RydWN0aW9uQnVpbGRlclR5cGVzIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5pbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBTdGFraW5nV2l0aGRyYXcgfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IGlzVmFsaWRTdGFraW5nQW1vdW50LCB2YWxpZGF0ZUFkZHJlc3MgfSBmcm9tICcuL3V0aWxzJztcblxuZXhwb3J0IGNsYXNzIFN0YWtpbmdXaXRoZHJhd0J1aWxkZXIgZXh0ZW5kcyBUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcm90ZWN0ZWQgX3N0YWtpbmdBZGRyZXNzOiBzdHJpbmc7XG4gIHByb3RlY3RlZCBfYW1vdW50OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdXaXRoZHJhdztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBpbml0QnVpbGRlcih0eDogVHJhbnNhY3Rpb24pOiB2b2lkIHtcbiAgICBzdXBlci5pbml0QnVpbGRlcih0eCk7XG4gICAgZm9yIChjb25zdCBpbnN0cnVjdGlvbiBvZiB0aGlzLl9pbnN0cnVjdGlvbnNEYXRhKSB7XG4gICAgICBpZiAoaW5zdHJ1Y3Rpb24udHlwZSA9PT0gSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuU3Rha2luZ1dpdGhkcmF3KSB7XG4gICAgICAgIGNvbnN0IHdpdGhkcmF3SW5zdHJ1Y3Rpb246IFN0YWtpbmdXaXRoZHJhdyA9IGluc3RydWN0aW9uO1xuICAgICAgICB0aGlzLnNlbmRlcih3aXRoZHJhd0luc3RydWN0aW9uLnBhcmFtcy5mcm9tQWRkcmVzcyk7XG4gICAgICAgIHRoaXMuc3Rha2luZ0FkZHJlc3Mod2l0aGRyYXdJbnN0cnVjdGlvbi5wYXJhbXMuc3Rha2luZ0FkZHJlc3MpO1xuICAgICAgICB0aGlzLmFtb3VudCh3aXRoZHJhd0luc3RydWN0aW9uLnBhcmFtcy5hbW91bnQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgYWRkcmVzcyBvZiB0aGUgc3Rha2luZyBhY2NvdW50LlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gc3Rha2luZ0FkZHJlc3MgcHVibGljIGFkZHJlc3Mgb2YgdGhlIHN0YWtpbmcgYWNjb3VudFxuICAgKiBAcmV0dXJucyB7U3Rha2VCdWlsZGVyfSBUaGlzIHN0YWtpbmcgYnVpbGRlci5cbiAgICpcbiAgICovXG4gIHN0YWtpbmdBZGRyZXNzKHN0YWtpbmdBZGRyZXNzOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB2YWxpZGF0ZUFkZHJlc3Moc3Rha2luZ0FkZHJlc3MsICdzdGFraW5nQWRkcmVzcycpO1xuICAgIHRoaXMuX3N0YWtpbmdBZGRyZXNzID0gc3Rha2luZ0FkZHJlc3M7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGFtb3VudCB0byB3aXRoZHJhdyBleHByZXNzZWQgaW4gTGFtcG9ydHMsIDEgU09MID0gMV8wMDBfMDAwXzAwMCBsYW1wb3J0c1xuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gYW1vdW50IGV4cHJlc3NlZCBpbiBMYW1wb3J0c1xuICAgKiBAcmV0dXJucyB7U3Rha2VCdWlsZGVyfSBUaGlzIHN0YWtpbmcgYnVpbGRlci5cbiAgICpcbiAgICovXG4gIGFtb3VudChhbW91bnQ6IHN0cmluZyk6IHRoaXMge1xuICAgIGlmICghaXNWYWxpZFN0YWtpbmdBbW91bnQoYW1vdW50KSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignVmFsdWUgY2Fubm90IGJlIHplcm8gb3IgbGVzcycpO1xuICAgIH1cbiAgICB0aGlzLl9hbW91bnQgPSBhbW91bnQ7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIGFzeW5jIGJ1aWxkSW1wbGVtZW50YXRpb24oKTogUHJvbWlzZTxUcmFuc2FjdGlvbj4ge1xuICAgIGFzc2VydCh0aGlzLl9zZW5kZXIsICdTZW5kZXIgbXVzdCBiZSBzZXQgYmVmb3JlIGJ1aWxkaW5nIHRoZSB0cmFuc2FjdGlvbicpO1xuICAgIGFzc2VydCh0aGlzLl9zdGFraW5nQWRkcmVzcywgJ1N0YWtpbmcgYWRkcmVzcyBtdXN0IGJlIHNldCBiZWZvcmUgYnVpbGRpbmcgdGhlIHRyYW5zYWN0aW9uJyk7XG4gICAgYXNzZXJ0KHRoaXMuX2Ftb3VudCwgJ0Ftb3VudCBtdXN0IGJlIHNldCBiZWZvcmUgYnVpbGRpbmcgdGhlIHRyYW5zYWN0aW9uJyk7XG5cbiAgICBpZiAodGhpcy5fc2VuZGVyID09PSB0aGlzLl9zdGFraW5nQWRkcmVzcykge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignU2VuZGVyIGFkZHJlc3MgY2Fubm90IGJlIHRoZSBzYW1lIGFzIHRoZSBTdGFraW5nIGFkZHJlc3MnKTtcbiAgICB9XG5cbiAgICBjb25zdCBzdGFraW5nV2l0aGRyYXdEYXRhOiBTdGFraW5nV2l0aGRyYXcgPSB7XG4gICAgICB0eXBlOiBJbnN0cnVjdGlvbkJ1aWxkZXJUeXBlcy5TdGFraW5nV2l0aGRyYXcsXG4gICAgICBwYXJhbXM6IHtcbiAgICAgICAgZnJvbUFkZHJlc3M6IHRoaXMuX3NlbmRlcixcbiAgICAgICAgc3Rha2luZ0FkZHJlc3M6IHRoaXMuX3N0YWtpbmdBZGRyZXNzLFxuICAgICAgICBhbW91bnQ6IHRoaXMuX2Ftb3VudCxcbiAgICAgIH0sXG4gICAgfTtcbiAgICB0aGlzLl9pbnN0cnVjdGlvbnNEYXRhID0gW3N0YWtpbmdXaXRoZHJhd0RhdGFdO1xuXG4gICAgcmV0dXJuIGF3YWl0IHN1cGVyLmJ1aWxkSW1wbGVtZW50YXRpb24oKTtcbiAgfVxufVxuIl19
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token2022Config.d.ts","sourceRoot":"","sources":["../../../../src/lib/token2022Config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,oCAAoC;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,QAAQ,EAAE,OAAO,CAAC;IAClB,sCAAsC;IACtC,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,wDAAwD;IACxD,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,oCAAoC;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,YAAY,CAAC,EAAE,kBAAkB,CAAC;CACnC;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAM,CAAC;AAMtE;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAEnF"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ /**
3
+ * Token-2022 Configuration for Solana tokens with transfer hooks
4
+ * This file contains static configurations for Token-2022 tokens to avoid RPC calls
5
+ * when building transfer transactions with transfer hooks.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.TOKEN_2022_CONFIGS = void 0;
9
+ exports.getToken2022Config = getToken2022Config;
10
+ const token2022StaticConfig_1 = require("../config/token2022StaticConfig");
11
+ /**
12
+ * Token configurations map
13
+ * Key: mintAddress
14
+ */
15
+ exports.TOKEN_2022_CONFIGS = {};
16
+ token2022StaticConfig_1.TOKEN_2022_STATIC_CONFIGS.forEach((config) => {
17
+ exports.TOKEN_2022_CONFIGS[config.mintAddress] = config;
18
+ });
19
+ /**
20
+ * Get token configuration by mint address
21
+ * @param mintAddress - The mint address of the token
22
+ * @returns Token configuration or undefined if not found
23
+ */
24
+ function getToken2022Config(mintAddress) {
25
+ return exports.TOKEN_2022_CONFIGS[mintAddress];
26
+ }
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW4yMDIyQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi90b2tlbjIwMjJDb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7O0dBSUc7OztBQWlESCxnREFFQztBQWpERCwyRUFBNEU7QUFnQzVFOzs7R0FHRztBQUNVLFFBQUEsa0JBQWtCLEdBQW9DLEVBQUUsQ0FBQztBQUV0RSxpREFBeUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtJQUMzQywwQkFBa0IsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLEdBQUcsTUFBTSxDQUFDO0FBQ2xELENBQUMsQ0FBQyxDQUFDO0FBRUg7Ozs7R0FJRztBQUNILFNBQWdCLGtCQUFrQixDQUFDLFdBQW1CO0lBQ3BELE9BQU8sMEJBQWtCLENBQUMsV0FBVyxDQUFDLENBQUM7QUFDekMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVG9rZW4tMjAyMiBDb25maWd1cmF0aW9uIGZvciBTb2xhbmEgdG9rZW5zIHdpdGggdHJhbnNmZXIgaG9va3NcbiAqIFRoaXMgZmlsZSBjb250YWlucyBzdGF0aWMgY29uZmlndXJhdGlvbnMgZm9yIFRva2VuLTIwMjIgdG9rZW5zIHRvIGF2b2lkIFJQQyBjYWxsc1xuICogd2hlbiBidWlsZGluZyB0cmFuc2ZlciB0cmFuc2FjdGlvbnMgd2l0aCB0cmFuc2ZlciBob29rcy5cbiAqL1xuXG5pbXBvcnQgeyBUT0tFTl8yMDIyX1NUQVRJQ19DT05GSUdTIH0gZnJvbSAnLi4vY29uZmlnL3Rva2VuMjAyMlN0YXRpY0NvbmZpZyc7XG5cbi8qKlxuICogSW50ZXJmYWNlIGZvciBleHRyYSBhY2NvdW50IG1ldGFkYXRhIG5lZWRlZCBieSB0cmFuc2ZlciBob29rc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEV4dHJhQWNjb3VudE1ldGEge1xuICAvKiogVGhlIHB1YmxpYyBrZXkgb2YgdGhlIGFjY291bnQgKi9cbiAgcHVia2V5OiBzdHJpbmc7XG4gIC8qKiBXaGV0aGVyIHRoZSBhY2NvdW50IGlzIGEgc2lnbmVyICovXG4gIGlzU2lnbmVyOiBib29sZWFuO1xuICAvKiogV2hldGhlciB0aGUgYWNjb3VudCBpcyB3cml0YWJsZSAqL1xuICBpc1dyaXRhYmxlOiBib29sZWFuO1xufVxuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgdHJhbnNmZXIgaG9vayBjb25maWd1cmF0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNmZXJIb29rQ29uZmlnIHtcbiAgLyoqIEV4dHJhIGFjY291bnQgbWV0YXMgcmVxdWlyZWQgYnkgdGhlIHRyYW5zZmVyIGhvb2sgKi9cbiAgZXh0cmFBY2NvdW50TWV0YXM6IEV4dHJhQWNjb3VudE1ldGFbXTtcbn1cblxuLyoqXG4gKiBJbnRlcmZhY2UgZm9yIFRva2VuLTIwMjIgY29uZmlndXJhdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRva2VuMjAyMkNvbmZpZyB7XG4gIC8qKiBUaGUgbWludCBhZGRyZXNzIG9mIHRoZSB0b2tlbiAqL1xuICBtaW50QWRkcmVzczogc3RyaW5nO1xuICAvKiogVHJhbnNmZXIgaG9vayBjb25maWd1cmF0aW9uIGlmIGFwcGxpY2FibGUgKi9cbiAgdHJhbnNmZXJIb29rPzogVHJhbnNmZXJIb29rQ29uZmlnO1xufVxuXG4vKipcbiAqIFRva2VuIGNvbmZpZ3VyYXRpb25zIG1hcFxuICogS2V5OiBtaW50QWRkcmVzc1xuICovXG5leHBvcnQgY29uc3QgVE9LRU5fMjAyMl9DT05GSUdTOiBSZWNvcmQ8c3RyaW5nLCBUb2tlbjIwMjJDb25maWc+ID0ge307XG5cblRPS0VOXzIwMjJfU1RBVElDX0NPTkZJR1MuZm9yRWFjaCgoY29uZmlnKSA9PiB7XG4gIFRPS0VOXzIwMjJfQ09ORklHU1tjb25maWcubWludEFkZHJlc3NdID0gY29uZmlnO1xufSk7XG5cbi8qKlxuICogR2V0IHRva2VuIGNvbmZpZ3VyYXRpb24gYnkgbWludCBhZGRyZXNzXG4gKiBAcGFyYW0gbWludEFkZHJlc3MgLSBUaGUgbWludCBhZGRyZXNzIG9mIHRoZSB0b2tlblxuICogQHJldHVybnMgVG9rZW4gY29uZmlndXJhdGlvbiBvciB1bmRlZmluZWQgaWYgbm90IGZvdW5kXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRUb2tlbjIwMjJDb25maWcobWludEFkZHJlc3M6IHN0cmluZyk6IFRva2VuMjAyMkNvbmZpZyB8IHVuZGVmaW5lZCB7XG4gIHJldHVybiBUT0tFTl8yMDIyX0NPTkZJR1NbbWludEFkZHJlc3NdO1xufVxuIl19
@@ -0,0 +1,31 @@
1
+ import { SolTokenExtensions, SolTokenExtensionType } from '@bitgo-beta/statics';
2
+ import { type Mint } from '@solana/spl-token';
3
+ import { Commitment, Connection, PublicKey } from '@solana/web3.js';
4
+ /**
5
+ * Result of reading a Token-2022 mint's extension data.
6
+ *
7
+ * `detectedTypeNames` lists EVERY extension present on the mint — including ones BitGo does
8
+ * not model — so callers can run the onboarding safety gate (`getUnsupportedSolTokenExtensions`).
9
+ * `extensions` is the typed, storable config for the extensions BitGo does model.
10
+ */
11
+ export interface MintExtensionReadResult {
12
+ detectedTypeNames: string[];
13
+ extensions: SolTokenExtensions;
14
+ }
15
+ /** Human-readable names of every extension type present on the mint. */
16
+ export declare function extensionTypeNames(mintInfo: Mint): string[];
17
+ /** The subset of detected extensions that BitGo models. Pure — unit-testable without chain data. */
18
+ export declare function mapModeledExtensions(detectedTypeNames: readonly string[]): SolTokenExtensionType[];
19
+ /**
20
+ * Enforce the protocol-level incompatibility: Transfer Hook and Confidential
21
+ * Transfer cannot coexist on the same mint. Pure — unit-testable without chain data.
22
+ */
23
+ export declare function assertExtensionCompatibility(detectedTypeNames: readonly string[]): void;
24
+ /**
25
+ * Parse a decoded Token-2022 `Mint` into BitGo's extension model. Separated from the RPC call
26
+ * so it can be unit-tested against recorded mint fixtures.
27
+ */
28
+ export declare function parseMintExtensions(mintInfo: Mint): MintExtensionReadResult;
29
+ /** Fetch a Token-2022 mint and parse its extensions. Uses `finalized` commitment rules. */
30
+ export declare function readMintExtensions(connection: Connection, mint: string | PublicKey, commitment?: Commitment): Promise<MintExtensionReadResult>;
31
+ //# sourceMappingURL=tokenExtensions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenExtensions.d.ts","sourceRoot":"","sources":["../../../../src/lib/tokenExtensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAUL,KAAK,IAAI,EAEV,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAEpE;;;;;;GAMG;AACH,MAAM,WAAW,uBAAuB;IACtC,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,UAAU,EAAE,kBAAkB,CAAC;CAChC;AAcD,wEAAwE;AACxE,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,IAAI,GAAG,MAAM,EAAE,CAK3D;AAED,oGAAoG;AACpG,wBAAgB,oBAAoB,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,GAAG,qBAAqB,EAAE,CASlG;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,CAMvF;AAMD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,IAAI,GAAG,uBAAuB,CAyD3E;AAED,2FAA2F;AAC3F,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,UAAU,GAAE,UAAwB,GACnC,OAAO,CAAC,uBAAuB,CAAC,CAIlC"}
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.extensionTypeNames = extensionTypeNames;
4
+ exports.mapModeledExtensions = mapModeledExtensions;
5
+ exports.assertExtensionCompatibility = assertExtensionCompatibility;
6
+ exports.parseMintExtensions = parseMintExtensions;
7
+ exports.readMintExtensions = readMintExtensions;
8
+ const statics_1 = require("@bitgo-beta/statics");
9
+ const spl_token_1 = require("@solana/spl-token");
10
+ const web3_js_1 = require("@solana/web3.js");
11
+ /** Map from `@solana/spl-token` ExtensionType names to BitGo's modeled extension types. */
12
+ const EXTENSION_NAME_MAP = {
13
+ TransferFeeConfig: statics_1.SolTokenExtensionType.TransferFee,
14
+ TransferHook: statics_1.SolTokenExtensionType.TransferHook,
15
+ PermanentDelegate: statics_1.SolTokenExtensionType.PermanentDelegate,
16
+ InterestBearingConfig: statics_1.SolTokenExtensionType.InterestBearing,
17
+ DefaultAccountState: statics_1.SolTokenExtensionType.DefaultAccountState,
18
+ ScaledUiAmountConfig: statics_1.SolTokenExtensionType.ScaledUiAmount,
19
+ };
20
+ const CONFIDENTIAL_TRANSFER_NAMES = ['ConfidentialTransferMint', 'ConfidentialTransferFeeConfig'];
21
+ /** Human-readable names of every extension type present on the mint. */
22
+ function extensionTypeNames(mintInfo) {
23
+ if (mintInfo.tlvData.length === 0) {
24
+ return [];
25
+ }
26
+ return (0, spl_token_1.getExtensionTypes)(mintInfo.tlvData).map((t) => spl_token_1.ExtensionType[t] ?? `unknown(${t})`);
27
+ }
28
+ /** The subset of detected extensions that BitGo models. Pure — unit-testable without chain data. */
29
+ function mapModeledExtensions(detectedTypeNames) {
30
+ const modeled = [];
31
+ for (const name of detectedTypeNames) {
32
+ const mapped = EXTENSION_NAME_MAP[name];
33
+ if (mapped !== undefined && !modeled.includes(mapped)) {
34
+ modeled.push(mapped);
35
+ }
36
+ }
37
+ return modeled;
38
+ }
39
+ /**
40
+ * Enforce the protocol-level incompatibility: Transfer Hook and Confidential
41
+ * Transfer cannot coexist on the same mint. Pure — unit-testable without chain data.
42
+ */
43
+ function assertExtensionCompatibility(detectedTypeNames) {
44
+ const hasHook = detectedTypeNames.includes('TransferHook');
45
+ const hasConfidential = detectedTypeNames.some((n) => CONFIDENTIAL_TRANSFER_NAMES.includes(n));
46
+ if (hasHook && hasConfidential) {
47
+ throw new Error('Mint declares both Transfer Hook and Confidential Transfer, which cannot coexist');
48
+ }
49
+ }
50
+ function toBase58(key) {
51
+ return key ? key.toBase58() : undefined;
52
+ }
53
+ /**
54
+ * Parse a decoded Token-2022 `Mint` into BitGo's extension model. Separated from the RPC call
55
+ * so it can be unit-tested against recorded mint fixtures.
56
+ */
57
+ function parseMintExtensions(mintInfo) {
58
+ const detectedTypeNames = extensionTypeNames(mintInfo);
59
+ assertExtensionCompatibility(detectedTypeNames);
60
+ const extensions = { detected: mapModeledExtensions(detectedTypeNames) };
61
+ const authorities = {
62
+ mintAuthority: toBase58(mintInfo.mintAuthority),
63
+ freezeAuthority: toBase58(mintInfo.freezeAuthority),
64
+ };
65
+ const feeConfig = (0, spl_token_1.getTransferFeeConfig)(mintInfo);
66
+ if (feeConfig) {
67
+ extensions.transferFee = {
68
+ transferFeeBasisPoints: feeConfig.newerTransferFee.transferFeeBasisPoints,
69
+ maximumFee: feeConfig.newerTransferFee.maximumFee.toString(),
70
+ };
71
+ authorities.transferFeeConfigAuthority = toBase58(feeConfig.transferFeeConfigAuthority);
72
+ authorities.withdrawWithheldAuthority = toBase58(feeConfig.withdrawWithheldAuthority);
73
+ }
74
+ const hook = (0, spl_token_1.getTransferHook)(mintInfo);
75
+ if (hook) {
76
+ extensions.transferHookProgramId = hook.programId.toBase58();
77
+ }
78
+ const delegate = (0, spl_token_1.getPermanentDelegate)(mintInfo);
79
+ if (delegate?.delegate) {
80
+ authorities.permanentDelegate = delegate.delegate.toBase58();
81
+ }
82
+ const interest = (0, spl_token_1.getInterestBearingMintConfigState)(mintInfo);
83
+ if (interest) {
84
+ extensions.interestBearing = { rateBasisPoints: interest.currentRate };
85
+ authorities.rateAuthority = toBase58(interest.rateAuthority);
86
+ }
87
+ // DefaultAccountState is a single byte (AccountState). Decoded generically to avoid depending
88
+ // on a version-specific typed getter. permissionlessThaw is NOT on-chain — resolved separately
89
+ // at onboarding; defaults false until confirmed.
90
+ const defaultStateData = (0, spl_token_1.getExtensionData)(spl_token_1.ExtensionType.DefaultAccountState, mintInfo.tlvData);
91
+ if (defaultStateData) {
92
+ extensions.defaultAccountState = {
93
+ frozen: defaultStateData[0] === spl_token_1.AccountState.Frozen,
94
+ permissionlessThaw: false,
95
+ };
96
+ }
97
+ // NOTE: ScaledUiAmount config parsing (initialMultiplier) is intentionally deferred — the typed
98
+ // getter is not available in @solana/spl-token@0.4.9. The extension is still *detected* above
99
+ // (so the safety gate sees it); populating scaledUiAmount.initialMultiplier is a follow-up that
100
+ // bumps @solana/spl-token to a version exposing getScaledUiAmountConfig. See PR for 3.4.
101
+ if (Object.values(authorities).some((v) => v !== undefined)) {
102
+ extensions.authorities = authorities;
103
+ }
104
+ return { detectedTypeNames, extensions };
105
+ }
106
+ /** Fetch a Token-2022 mint and parse its extensions. Uses `finalized` commitment rules. */
107
+ async function readMintExtensions(connection, mint, commitment = 'finalized') {
108
+ const mintPubkey = typeof mint === 'string' ? new web3_js_1.PublicKey(mint) : mint;
109
+ const mintInfo = await (0, spl_token_1.getMint)(connection, mintPubkey, commitment, spl_token_1.TOKEN_2022_PROGRAM_ID);
110
+ return parseMintExtensions(mintInfo);
111
+ }
112
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5FeHRlbnNpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi90b2tlbkV4dGVuc2lvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUF5Q0EsZ0RBS0M7QUFHRCxvREFTQztBQU1ELG9FQU1DO0FBVUQsa0RBeURDO0FBR0QsZ0RBUUM7QUFwSkQsaURBQWdGO0FBQ2hGLGlEQVkyQjtBQUMzQiw2Q0FBb0U7QUFjcEUsMkZBQTJGO0FBQzNGLE1BQU0sa0JBQWtCLEdBQW9EO0lBQzFFLGlCQUFpQixFQUFFLCtCQUFxQixDQUFDLFdBQVc7SUFDcEQsWUFBWSxFQUFFLCtCQUFxQixDQUFDLFlBQVk7SUFDaEQsaUJBQWlCLEVBQUUsK0JBQXFCLENBQUMsaUJBQWlCO0lBQzFELHFCQUFxQixFQUFFLCtCQUFxQixDQUFDLGVBQWU7SUFDNUQsbUJBQW1CLEVBQUUsK0JBQXFCLENBQUMsbUJBQW1CO0lBQzlELG9CQUFvQixFQUFFLCtCQUFxQixDQUFDLGNBQWM7Q0FDM0QsQ0FBQztBQUVGLE1BQU0sMkJBQTJCLEdBQUcsQ0FBQywwQkFBMEIsRUFBRSwrQkFBK0IsQ0FBQyxDQUFDO0FBRWxHLHdFQUF3RTtBQUN4RSxTQUFnQixrQkFBa0IsQ0FBQyxRQUFjO0lBQy9DLElBQUksUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDbEMsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBQ0QsT0FBTyxJQUFBLDZCQUFpQixFQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLHlCQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQzdGLENBQUM7QUFFRCxvR0FBb0c7QUFDcEcsU0FBZ0Isb0JBQW9CLENBQUMsaUJBQW9DO0lBQ3ZFLE1BQU0sT0FBTyxHQUE0QixFQUFFLENBQUM7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QUFDLENBQUM7SUFDMUYsT0FBTyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUN2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU29sVG9rZW5FeHRlbnNpb25zLCBTb2xUb2tlbkV4dGVuc2lvblR5cGUgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7XG4gIEFjY291bnRTdGF0ZSxcbiAgRXh0ZW5zaW9uVHlwZSxcbiAgZ2V0RXh0ZW5zaW9uRGF0YSxcbiAgZ2V0RXh0ZW5zaW9uVHlwZXMsXG4gIGdldEludGVyZXN0QmVhcmluZ01pbnRDb25maWdTdGF0ZSxcbiAgZ2V0TWludCxcbiAgZ2V0UGVybWFuZW50RGVsZWdhdGUsXG4gIGdldFRyYW5zZmVyRmVlQ29uZmlnLFxuICBnZXRUcmFuc2Zlckhvb2ssXG4gIHR5cGUgTWludCxcbiAgVE9LRU5fMjAyMl9QUk9HUkFNX0lELFxufSBmcm9tICdAc29sYW5hL3NwbC10b2tlbic7XG5pbXBvcnQgeyBDb21taXRtZW50LCBDb25uZWN0aW9uLCBQdWJsaWNLZXkgfSBmcm9tICdAc29sYW5hL3dlYjMuanMnO1xuXG4vKipcbiAqIFJlc3VsdCBvZiByZWFkaW5nIGEgVG9rZW4tMjAyMiBtaW50J3MgZXh0ZW5zaW9uIGRhdGEuXG4gKlxuICogYGRldGVjdGVkVHlwZU5hbWVzYCBsaXN0cyBFVkVSWSBleHRlbnNpb24gcHJlc2VudCBvbiB0aGUgbWludCDigJQgaW5jbHVkaW5nIG9uZXMgQml0R28gZG9lc1xuICogbm90IG1vZGVsIOKAlCBzbyBjYWxsZXJzIGNhbiBydW4gdGhlIG9uYm9hcmRpbmcgc2FmZXR5IGdhdGUgKGBnZXRVbnN1cHBvcnRlZFNvbFRva2VuRXh0ZW5zaW9uc2ApLlxuICogYGV4dGVuc2lvbnNgIGlzIHRoZSB0eXBlZCwgc3RvcmFibGUgY29uZmlnIGZvciB0aGUgZXh0ZW5zaW9ucyBCaXRHbyBkb2VzIG1vZGVsLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1pbnRFeHRlbnNpb25SZWFkUmVzdWx0IHtcbiAgZGV0ZWN0ZWRUeXBlTmFtZXM6IHN0cmluZ1tdO1xuICBleHRlbnNpb25zOiBTb2xUb2tlbkV4dGVuc2lvbnM7XG59XG5cbi8qKiBNYXAgZnJvbSBgQHNvbGFuYS9zcGwtdG9rZW5gIEV4dGVuc2lvblR5cGUgbmFtZXMgdG8gQml0R28ncyBtb2RlbGVkIGV4dGVuc2lvbiB0eXBlcy4gKi9cbmNvbnN0IEVYVEVOU0lPTl9OQU1FX01BUDogUmVhZG9ubHk8UmVjb3JkPHN0cmluZywgU29sVG9rZW5FeHRlbnNpb25UeXBlPj4gPSB7XG4gIFRyYW5zZmVyRmVlQ29uZmlnOiBTb2xUb2tlbkV4dGVuc2lvblR5cGUuVHJhbnNmZXJGZWUsXG4gIFRyYW5zZmVySG9vazogU29sVG9rZW5FeHRlbnNpb25UeXBlLlRyYW5zZmVySG9vayxcbiAgUGVybWFuZW50RGVsZWdhdGU6IFNvbFRva2VuRXh0ZW5zaW9uVHlwZS5QZXJtYW5lbnREZWxlZ2F0ZSxcbiAgSW50ZXJlc3RCZWFyaW5nQ29uZmlnOiBTb2xUb2tlbkV4dGVuc2lvblR5cGUuSW50ZXJlc3RCZWFyaW5nLFxuICBEZWZhdWx0QWNjb3VudFN0YXRlOiBTb2xUb2tlbkV4dGVuc2lvblR5cGUuRGVmYXVsdEFjY291bnRTdGF0ZSxcbiAgU2NhbGVkVWlBbW91bnRDb25maWc6IFNvbFRva2VuRXh0ZW5zaW9uVHlwZS5TY2FsZWRVaUFtb3VudCxcbn07XG5cbmNvbnN0IENPTkZJREVOVElBTF9UUkFOU0ZFUl9OQU1FUyA9IFsnQ29uZmlkZW50aWFsVHJhbnNmZXJNaW50JywgJ0NvbmZpZGVudGlhbFRyYW5zZmVyRmVlQ29uZmlnJ107XG5cbi8qKiBIdW1hbi1yZWFkYWJsZSBuYW1lcyBvZiBldmVyeSBleHRlbnNpb24gdHlwZSBwcmVzZW50IG9uIHRoZSBtaW50LiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4dGVuc2lvblR5cGVOYW1lcyhtaW50SW5mbzogTWludCk6IHN0cmluZ1tdIHtcbiAgaWYgKG1pbnRJbmZvLnRsdkRhdGEubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuIFtdO1xuICB9XG4gIHJldHVybiBnZXRFeHRlbnNpb25UeXBlcyhtaW50SW5mby50bHZEYXRhKS5tYXAoKHQpID0+IEV4dGVuc2lvblR5cGVbdF0gPz8gYHVua25vd24oJHt0fSlgKTtcbn1cblxuLyoqIFRoZSBzdWJzZXQgb2YgZGV0ZWN0ZWQgZXh0ZW5zaW9ucyB0aGF0IEJpdEdvIG1vZGVscy4gUHVyZSDigJQgdW5pdC10ZXN0YWJsZSB3aXRob3V0IGNoYWluIGRhdGEuICovXG5leHBvcnQgZnVuY3Rpb24gbWFwTW9kZWxlZEV4dGVuc2lvbnMoZGV0ZWN0ZWRUeXBlTmFtZXM6IHJlYWRvbmx5IHN0cmluZ1tdKTogU29sVG9rZW5FeHRlbnNpb25UeXBlW10ge1xuICBjb25zdCBtb2RlbGVkOiBTb2xUb2tlbkV4dGVuc2lvblR5cGVbXSA9IFtdO1xuICBmb3IgKGNvbnN0IG5hbWUgb2YgZGV0ZWN0ZWRUeXBlTmFtZXMpIHtcbiAgICBjb25zdCBtYXBwZWQgPSBFWFRFTlNJT05fTkFNRV9NQVBbbmFtZV07XG4gICAgaWYgKG1hcHBlZCAhPT0gdW5kZWZpbmVkICYmICFtb2RlbGVkLmluY2x1ZGVzKG1hcHBlZCkpIHtcbiAgICAgIG1vZGVsZWQucHVzaChtYXBwZWQpO1xuICAgIH1cbiAgfVxuICByZXR1cm4gbW9kZWxlZDtcbn1cblxuLyoqXG4gKiBFbmZvcmNlIHRoZSBwcm90b2NvbC1sZXZlbCBpbmNvbXBhdGliaWxpdHk6IFRyYW5zZmVyIEhvb2sgYW5kIENvbmZpZGVudGlhbFxuICogVHJhbnNmZXIgY2Fubm90IGNvZXhpc3Qgb24gdGhlIHNhbWUgbWludC4gUHVyZSDigJQgdW5pdC10ZXN0YWJsZSB3aXRob3V0IGNoYWluIGRhdGEuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBhc3NlcnRFeHRlbnNpb25Db21wYXRpYmlsaXR5KGRldGVjdGVkVHlwZU5hbWVzOiByZWFkb25seSBzdHJpbmdbXSk6IHZvaWQge1xuICBjb25zdCBoYXNIb29rID0gZGV0ZWN0ZWRUeXBlTmFtZXMuaW5jbHVkZXMoJ1RyYW5zZmVySG9vaycpO1xuICBjb25zdCBoYXNDb25maWRlbnRpYWwgPSBkZXRlY3RlZFR5cGVOYW1lcy5zb21lKChuKSA9PiBDT05GSURFTlRJQUxfVFJBTlNGRVJfTkFNRVMuaW5jbHVkZXMobikpO1xuICBpZiAoaGFzSG9vayAmJiBoYXNDb25maWRlbnRpYWwpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01pbnQgZGVjbGFyZXMgYm90aCBUcmFuc2ZlciBIb29rIGFuZCBDb25maWRlbnRpYWwgVHJhbnNmZXIsIHdoaWNoIGNhbm5vdCBjb2V4aXN0Jyk7XG4gIH1cbn1cblxuZnVuY3Rpb24gdG9CYXNlNTgoa2V5OiBQdWJsaWNLZXkgfCBudWxsKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgcmV0dXJuIGtleSA/IGtleS50b0Jhc2U1OCgpIDogdW5kZWZpbmVkO1xufVxuXG4vKipcbiAqIFBhcnNlIGEgZGVjb2RlZCBUb2tlbi0yMDIyIGBNaW50YCBpbnRvIEJpdEdvJ3MgZXh0ZW5zaW9uIG1vZGVsLiBTZXBhcmF0ZWQgZnJvbSB0aGUgUlBDIGNhbGxcbiAqIHNvIGl0IGNhbiBiZSB1bml0LXRlc3RlZCBhZ2FpbnN0IHJlY29yZGVkIG1pbnQgZml4dHVyZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZU1pbnRFeHRlbnNpb25zKG1pbnRJbmZvOiBNaW50KTogTWludEV4dGVuc2lvblJlYWRSZXN1bHQge1xuICBjb25zdCBkZXRlY3RlZFR5cGVOYW1lcyA9IGV4dGVuc2lvblR5cGVOYW1lcyhtaW50SW5mbyk7XG4gIGFzc2VydEV4dGVuc2lvbkNvbXBhdGliaWxpdHkoZGV0ZWN0ZWRUeXBlTmFtZXMpO1xuXG4gIGNvbnN0IGV4dGVuc2lvbnM6IFNvbFRva2VuRXh0ZW5zaW9ucyA9IHsgZGV0ZWN0ZWQ6IG1hcE1vZGVsZWRFeHRlbnNpb25zKGRldGVjdGVkVHlwZU5hbWVzKSB9O1xuICBjb25zdCBhdXRob3JpdGllczogTm9uTnVsbGFibGU8U29sVG9rZW5FeHRlbnNpb25zWydhdXRob3JpdGllcyddPiA9IHtcbiAgICBtaW50QXV0aG9yaXR5OiB0b0Jhc2U1OChtaW50SW5mby5taW50QXV0aG9yaXR5KSxcbiAgICBmcmVlemVBdXRob3JpdHk6IHRvQmFzZTU4KG1pbnRJbmZvLmZyZWV6ZUF1dGhvcml0eSksXG4gIH07XG5cbiAgY29uc3QgZmVlQ29uZmlnID0gZ2V0VHJhbnNmZXJGZWVDb25maWcobWludEluZm8pO1xuICBpZiAoZmVlQ29uZmlnKSB7XG4gICAgZXh0ZW5zaW9ucy50cmFuc2ZlckZlZSA9IHtcbiAgICAgIHRyYW5zZmVyRmVlQmFzaXNQb2ludHM6IGZlZUNvbmZpZy5uZXdlclRyYW5zZmVyRmVlLnRyYW5zZmVyRmVlQmFzaXNQb2ludHMsXG4gICAgICBtYXhpbXVtRmVlOiBmZWVDb25maWcubmV3ZXJUcmFuc2ZlckZlZS5tYXhpbXVtRmVlLnRvU3RyaW5nKCksXG4gICAgfTtcbiAgICBhdXRob3JpdGllcy50cmFuc2ZlckZlZUNvbmZpZ0F1dGhvcml0eSA9IHRvQmFzZTU4KGZlZUNvbmZpZy50cmFuc2ZlckZlZUNvbmZpZ0F1dGhvcml0eSk7XG4gICAgYXV0aG9yaXRpZXMud2l0aGRyYXdXaXRoaGVsZEF1dGhvcml0eSA9IHRvQmFzZTU4KGZlZUNvbmZpZy53aXRoZHJhd1dpdGhoZWxkQXV0aG9yaXR5KTtcbiAgfVxuXG4gIGNvbnN0IGhvb2sgPSBnZXRUcmFuc2Zlckhvb2sobWludEluZm8pO1xuICBpZiAoaG9vaykge1xuICAgIGV4dGVuc2lvbnMudHJhbnNmZXJIb29rUHJvZ3JhbUlkID0gaG9vay5wcm9ncmFtSWQudG9CYXNlNTgoKTtcbiAgfVxuXG4gIGNvbnN0IGRlbGVnYXRlID0gZ2V0UGVybWFuZW50RGVsZWdhdGUobWludEluZm8pO1xuICBpZiAoZGVsZWdhdGU/LmRlbGVnYXRlKSB7XG4gICAgYXV0aG9yaXRpZXMucGVybWFuZW50RGVsZWdhdGUgPSBkZWxlZ2F0ZS5kZWxlZ2F0ZS50b0Jhc2U1OCgpO1xuICB9XG5cbiAgY29uc3QgaW50ZXJlc3QgPSBnZXRJbnRlcmVzdEJlYXJpbmdNaW50Q29uZmlnU3RhdGUobWludEluZm8pO1xuICBpZiAoaW50ZXJlc3QpIHtcbiAgICBleHRlbnNpb25zLmludGVyZXN0QmVhcmluZyA9IHsgcmF0ZUJhc2lzUG9pbnRzOiBpbnRlcmVzdC5jdXJyZW50UmF0ZSB9O1xuICAgIGF1dGhvcml0aWVzLnJhdGVBdXRob3JpdHkgPSB0b0Jhc2U1OChpbnRlcmVzdC5yYXRlQXV0aG9yaXR5KTtcbiAgfVxuXG4gIC8vIERlZmF1bHRBY2NvdW50U3RhdGUgaXMgYSBzaW5nbGUgYnl0ZSAoQWNjb3VudFN0YXRlKS4gRGVjb2RlZCBnZW5lcmljYWxseSB0byBhdm9pZCBkZXBlbmRpbmdcbiAgLy8gb24gYSB2ZXJzaW9uLXNwZWNpZmljIHR5cGVkIGdldHRlci4gcGVybWlzc2lvbmxlc3NUaGF3IGlzIE5PVCBvbi1jaGFpbiDigJQgcmVzb2x2ZWQgc2VwYXJhdGVseVxuICAvLyBhdCBvbmJvYXJkaW5nOyBkZWZhdWx0cyBmYWxzZSB1bnRpbCBjb25maXJtZWQuXG4gIGNvbnN0IGRlZmF1bHRTdGF0ZURhdGEgPSBnZXRFeHRlbnNpb25EYXRhKEV4dGVuc2lvblR5cGUuRGVmYXVsdEFjY291bnRTdGF0ZSwgbWludEluZm8udGx2RGF0YSk7XG4gIGlmIChkZWZhdWx0U3RhdGVEYXRhKSB7XG4gICAgZXh0ZW5zaW9ucy5kZWZhdWx0QWNjb3VudFN0YXRlID0ge1xuICAgICAgZnJvemVuOiBkZWZhdWx0U3RhdGVEYXRhWzBdID09PSBBY2NvdW50U3RhdGUuRnJvemVuLFxuICAgICAgcGVybWlzc2lvbmxlc3NUaGF3OiBmYWxzZSxcbiAgICB9O1xuICB9XG5cbiAgLy8gTk9URTogU2NhbGVkVWlBbW91bnQgY29uZmlnIHBhcnNpbmcgKGluaXRpYWxNdWx0aXBsaWVyKSBpcyBpbnRlbnRpb25hbGx5IGRlZmVycmVkIOKAlCB0aGUgdHlwZWRcbiAgLy8gZ2V0dGVyIGlzIG5vdCBhdmFpbGFibGUgaW4gQHNvbGFuYS9zcGwtdG9rZW5AMC40LjkuIFRoZSBleHRlbnNpb24gaXMgc3RpbGwgKmRldGVjdGVkKiBhYm92ZVxuICAvLyAoc28gdGhlIHNhZmV0eSBnYXRlIHNlZXMgaXQpOyBwb3B1bGF0aW5nIHNjYWxlZFVpQW1vdW50LmluaXRpYWxNdWx0aXBsaWVyIGlzIGEgZm9sbG93LXVwIHRoYXRcbiAgLy8gYnVtcHMgQHNvbGFuYS9zcGwtdG9rZW4gdG8gYSB2ZXJzaW9uIGV4cG9zaW5nIGdldFNjYWxlZFVpQW1vdW50Q29uZmlnLiBTZWUgUFIgZm9yIDMuNC5cblxuICBpZiAoT2JqZWN0LnZhbHVlcyhhdXRob3JpdGllcykuc29tZSgodikgPT4gdiAhPT0gdW5kZWZpbmVkKSkge1xuICAgIGV4dGVuc2lvbnMuYXV0aG9yaXRpZXMgPSBhdXRob3JpdGllcztcbiAgfVxuXG4gIHJldHVybiB7IGRldGVjdGVkVHlwZU5hbWVzLCBleHRlbnNpb25zIH07XG59XG5cbi8qKiBGZXRjaCBhIFRva2VuLTIwMjIgbWludCBhbmQgcGFyc2UgaXRzIGV4dGVuc2lvbnMuIFVzZXMgYGZpbmFsaXplZGAgY29tbWl0bWVudCBydWxlcy4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiByZWFkTWludEV4dGVuc2lvbnMoXG4gIGNvbm5lY3Rpb246IENvbm5lY3Rpb24sXG4gIG1pbnQ6IHN0cmluZyB8IFB1YmxpY0tleSxcbiAgY29tbWl0bWVudDogQ29tbWl0bWVudCA9ICdmaW5hbGl6ZWQnXG4pOiBQcm9taXNlPE1pbnRFeHRlbnNpb25SZWFkUmVzdWx0PiB7XG4gIGNvbnN0IG1pbnRQdWJrZXkgPSB0eXBlb2YgbWludCA9PT0gJ3N0cmluZycgPyBuZXcgUHVibGljS2V5KG1pbnQpIDogbWludDtcbiAgY29uc3QgbWludEluZm8gPSBhd2FpdCBnZXRNaW50KGNvbm5lY3Rpb24sIG1pbnRQdWJrZXksIGNvbW1pdG1lbnQsIFRPS0VOXzIwMjJfUFJPR1JBTV9JRCk7XG4gIHJldHVybiBwYXJzZU1pbnRFeHRlbnNpb25zKG1pbnRJbmZvKTtcbn1cbiJdfQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokenTransferBuilder.d.ts","sourceRoot":"","sources":["../../../../src/lib/tokenTransferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAyB,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAU5C,OAAO,EAAW,uBAAuB,EAAiC,MAAM,SAAS,CAAC;AAE1F,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAID,qBAAa,oBAAqB,SAAQ,kBAAkB;IAC1D,OAAO,CAAC,WAAW,CAAoB;IACvC,OAAO,CAAC,gBAAgB,CAA4B;gBAExC,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,WAAW,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI;IA6BlC;;;;;;;;OAQG;IACH,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE,UAAU,GAAG,IAAI;IAa9F;;;;;;OAMG;IACH,4BAA4B,CAAC,SAAS,EAAE,uBAAuB,GAAG,IAAI;IAmBtE,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;CAgG5D"}