@ledgerhq/coin-multiversx 0.2.0-next.0

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 (378) hide show
  1. package/.eslintrc.js +23 -0
  2. package/.turbo/turbo-build.log +4 -0
  3. package/.unimportedrc.json +31 -0
  4. package/CHANGELOG.md +400 -0
  5. package/LICENSE.txt +21 -0
  6. package/jest.config.js +8 -0
  7. package/lib/api/apiCalls.d.ts +22 -0
  8. package/lib/api/apiCalls.d.ts.map +1 -0
  9. package/lib/api/apiCalls.js +153 -0
  10. package/lib/api/apiCalls.js.map +1 -0
  11. package/lib/api/dtos/multiversx-account.d.ts +9 -0
  12. package/lib/api/dtos/multiversx-account.d.ts.map +1 -0
  13. package/lib/api/dtos/multiversx-account.js +17 -0
  14. package/lib/api/dtos/multiversx-account.js.map +1 -0
  15. package/lib/api/index.d.ts +2 -0
  16. package/lib/api/index.d.ts.map +1 -0
  17. package/lib/api/index.js +16 -0
  18. package/lib/api/index.js.map +1 -0
  19. package/lib/api/sdk.d.ts +29 -0
  20. package/lib/api/sdk.d.ts.map +1 -0
  21. package/lib/api/sdk.js +281 -0
  22. package/lib/api/sdk.js.map +1 -0
  23. package/lib/bridge/js.d.ts +11 -0
  24. package/lib/bridge/js.d.ts.map +1 -0
  25. package/lib/bridge/js.js +62 -0
  26. package/lib/bridge/js.js.map +1 -0
  27. package/lib/bridge.integration.test.d.ts +4 -0
  28. package/lib/bridge.integration.test.d.ts.map +1 -0
  29. package/lib/bridge.integration.test.js +142 -0
  30. package/lib/bridge.integration.test.js.map +1 -0
  31. package/lib/broadcast.d.ts +9 -0
  32. package/lib/broadcast.d.ts.map +1 -0
  33. package/lib/broadcast.js +16 -0
  34. package/lib/broadcast.js.map +1 -0
  35. package/lib/buildOptimisticOperation.d.ts +4 -0
  36. package/lib/buildOptimisticOperation.d.ts.map +1 -0
  37. package/lib/buildOptimisticOperation.js +100 -0
  38. package/lib/buildOptimisticOperation.js.map +1 -0
  39. package/lib/buildOptimisticOperation.test.d.ts +2 -0
  40. package/lib/buildOptimisticOperation.test.d.ts.map +1 -0
  41. package/lib/buildOptimisticOperation.test.js +78 -0
  42. package/lib/buildOptimisticOperation.test.js.map +1 -0
  43. package/lib/buildSubAccounts.d.ts +11 -0
  44. package/lib/buildSubAccounts.d.ts.map +1 -0
  45. package/lib/buildSubAccounts.js +117 -0
  46. package/lib/buildSubAccounts.js.map +1 -0
  47. package/lib/buildTransaction.d.ts +19 -0
  48. package/lib/buildTransaction.d.ts.map +1 -0
  49. package/lib/buildTransaction.js +49 -0
  50. package/lib/buildTransaction.js.map +1 -0
  51. package/lib/buildTransaction.unit.test.d.ts +2 -0
  52. package/lib/buildTransaction.unit.test.d.ts.map +1 -0
  53. package/lib/buildTransaction.unit.test.js +47 -0
  54. package/lib/buildTransaction.unit.test.js.map +1 -0
  55. package/lib/cli-transaction.d.ts +16 -0
  56. package/lib/cli-transaction.d.ts.map +1 -0
  57. package/lib/cli-transaction.js +35 -0
  58. package/lib/cli-transaction.js.map +1 -0
  59. package/lib/config.d.ts +14 -0
  60. package/lib/config.d.ts.map +1 -0
  61. package/lib/config.js +16 -0
  62. package/lib/config.js.map +1 -0
  63. package/lib/constants.d.ts +21 -0
  64. package/lib/constants.d.ts.map +1 -0
  65. package/lib/constants.js +27 -0
  66. package/lib/constants.js.map +1 -0
  67. package/lib/createTransaction.d.ts +9 -0
  68. package/lib/createTransaction.d.ts.map +1 -0
  69. package/lib/createTransaction.js +26 -0
  70. package/lib/createTransaction.js.map +1 -0
  71. package/lib/datasets/multiversx1.d.ts +3 -0
  72. package/lib/datasets/multiversx1.d.ts.map +1 -0
  73. package/lib/datasets/multiversx1.js +21 -0
  74. package/lib/datasets/multiversx1.js.map +1 -0
  75. package/lib/deviceTransactionConfig.d.ts +10 -0
  76. package/lib/deviceTransactionConfig.d.ts.map +1 -0
  77. package/lib/deviceTransactionConfig.js +60 -0
  78. package/lib/deviceTransactionConfig.js.map +1 -0
  79. package/lib/encode.d.ts +11 -0
  80. package/lib/encode.d.ts.map +1 -0
  81. package/lib/encode.js +39 -0
  82. package/lib/encode.js.map +1 -0
  83. package/lib/errors.d.ts +16 -0
  84. package/lib/errors.d.ts.map +1 -0
  85. package/lib/errors.js +10 -0
  86. package/lib/errors.js.map +1 -0
  87. package/lib/estimateMaxSpendable.d.ts +10 -0
  88. package/lib/estimateMaxSpendable.d.ts.map +1 -0
  89. package/lib/estimateMaxSpendable.js +35 -0
  90. package/lib/estimateMaxSpendable.js.map +1 -0
  91. package/lib/formatters.d.ts +11 -0
  92. package/lib/formatters.d.ts.map +1 -0
  93. package/lib/formatters.js +65 -0
  94. package/lib/formatters.js.map +1 -0
  95. package/lib/getTransactionStatus.d.ts +5 -0
  96. package/lib/getTransactionStatus.d.ts.map +1 -0
  97. package/lib/getTransactionStatus.js +107 -0
  98. package/lib/getTransactionStatus.js.map +1 -0
  99. package/lib/helpers/denominate.d.ts +9 -0
  100. package/lib/helpers/denominate.d.ts.map +1 -0
  101. package/lib/helpers/denominate.js +75 -0
  102. package/lib/helpers/denominate.js.map +1 -0
  103. package/lib/helpers/handleTransactionStatus.d.ts +7 -0
  104. package/lib/helpers/handleTransactionStatus.d.ts.map +1 -0
  105. package/lib/helpers/handleTransactionStatus.js +18 -0
  106. package/lib/helpers/handleTransactionStatus.js.map +1 -0
  107. package/lib/helpers/hasMinimumDelegableBalance.d.ts +3 -0
  108. package/lib/helpers/hasMinimumDelegableBalance.d.ts.map +1 -0
  109. package/lib/helpers/hasMinimumDelegableBalance.js +7 -0
  110. package/lib/helpers/hasMinimumDelegableBalance.js.map +1 -0
  111. package/lib/helpers/randomizeProviders.d.ts +7 -0
  112. package/lib/helpers/randomizeProviders.d.ts.map +1 -0
  113. package/lib/helpers/randomizeProviders.js +12 -0
  114. package/lib/helpers/randomizeProviders.js.map +1 -0
  115. package/lib/hw-getAddress.d.ts +6 -0
  116. package/lib/hw-getAddress.d.ts.map +1 -0
  117. package/lib/hw-getAddress.js +14 -0
  118. package/lib/hw-getAddress.js.map +1 -0
  119. package/lib/logic.d.ts +15 -0
  120. package/lib/logic.d.ts.map +1 -0
  121. package/lib/logic.js +77 -0
  122. package/lib/logic.js.map +1 -0
  123. package/lib/preload.d.ts +11 -0
  124. package/lib/preload.d.ts.map +1 -0
  125. package/lib/preload.js +94 -0
  126. package/lib/preload.js.map +1 -0
  127. package/lib/prepareTransaction.d.ts +10 -0
  128. package/lib/prepareTransaction.d.ts.map +1 -0
  129. package/lib/prepareTransaction.js +72 -0
  130. package/lib/prepareTransaction.js.map +1 -0
  131. package/lib/reconciliation.d.ts +3 -0
  132. package/lib/reconciliation.d.ts.map +1 -0
  133. package/lib/reconciliation.js +56 -0
  134. package/lib/reconciliation.js.map +1 -0
  135. package/lib/serialization.d.ts +9 -0
  136. package/lib/serialization.d.ts.map +1 -0
  137. package/lib/serialization.js +65 -0
  138. package/lib/serialization.js.map +1 -0
  139. package/lib/signOperation.d.ts +10 -0
  140. package/lib/signOperation.d.ts.map +1 -0
  141. package/lib/signOperation.js +65 -0
  142. package/lib/signOperation.js.map +1 -0
  143. package/lib/signer.d.ts +16 -0
  144. package/lib/signer.d.ts.map +1 -0
  145. package/lib/signer.js +3 -0
  146. package/lib/signer.js.map +1 -0
  147. package/lib/specs.d.ts +7 -0
  148. package/lib/specs.d.ts.map +1 -0
  149. package/lib/specs.js +286 -0
  150. package/lib/specs.js.map +1 -0
  151. package/lib/speculos-deviceActions.d.ts +16 -0
  152. package/lib/speculos-deviceActions.d.ts.map +1 -0
  153. package/lib/speculos-deviceActions.js +250 -0
  154. package/lib/speculos-deviceActions.js.map +1 -0
  155. package/lib/synchronisation.d.ts +5 -0
  156. package/lib/synchronisation.d.ts.map +1 -0
  157. package/lib/synchronisation.js +69 -0
  158. package/lib/synchronisation.js.map +1 -0
  159. package/lib/transaction.d.ts +15 -0
  160. package/lib/transaction.d.ts.map +1 -0
  161. package/lib/transaction.js +62 -0
  162. package/lib/transaction.js.map +1 -0
  163. package/lib/types.d.ts +188 -0
  164. package/lib/types.d.ts.map +1 -0
  165. package/lib/types.js +17 -0
  166. package/lib/types.js.map +1 -0
  167. package/lib/utils/binary.utils.d.ts +5 -0
  168. package/lib/utils/binary.utils.d.ts.map +1 -0
  169. package/lib/utils/binary.utils.js +16 -0
  170. package/lib/utils/binary.utils.js.map +1 -0
  171. package/lib-es/api/apiCalls.d.ts +22 -0
  172. package/lib-es/api/apiCalls.d.ts.map +1 -0
  173. package/lib-es/api/apiCalls.js +147 -0
  174. package/lib-es/api/apiCalls.js.map +1 -0
  175. package/lib-es/api/dtos/multiversx-account.d.ts +9 -0
  176. package/lib-es/api/dtos/multiversx-account.d.ts.map +1 -0
  177. package/lib-es/api/dtos/multiversx-account.js +13 -0
  178. package/lib-es/api/dtos/multiversx-account.js.map +1 -0
  179. package/lib-es/api/index.d.ts +2 -0
  180. package/lib-es/api/index.d.ts.map +1 -0
  181. package/lib-es/api/index.js +2 -0
  182. package/lib-es/api/index.js.map +1 -0
  183. package/lib-es/api/sdk.d.ts +29 -0
  184. package/lib-es/api/sdk.d.ts.map +1 -0
  185. package/lib-es/api/sdk.js +264 -0
  186. package/lib-es/api/sdk.js.map +1 -0
  187. package/lib-es/bridge/js.d.ts +11 -0
  188. package/lib-es/bridge/js.d.ts.map +1 -0
  189. package/lib-es/bridge/js.js +53 -0
  190. package/lib-es/bridge/js.js.map +1 -0
  191. package/lib-es/bridge.integration.test.d.ts +4 -0
  192. package/lib-es/bridge.integration.test.d.ts.map +1 -0
  193. package/lib-es/bridge.integration.test.js +139 -0
  194. package/lib-es/bridge.integration.test.js.map +1 -0
  195. package/lib-es/broadcast.d.ts +9 -0
  196. package/lib-es/broadcast.d.ts.map +1 -0
  197. package/lib-es/broadcast.js +12 -0
  198. package/lib-es/broadcast.js.map +1 -0
  199. package/lib-es/buildOptimisticOperation.d.ts +4 -0
  200. package/lib-es/buildOptimisticOperation.d.ts.map +1 -0
  201. package/lib-es/buildOptimisticOperation.js +93 -0
  202. package/lib-es/buildOptimisticOperation.js.map +1 -0
  203. package/lib-es/buildOptimisticOperation.test.d.ts +2 -0
  204. package/lib-es/buildOptimisticOperation.test.d.ts.map +1 -0
  205. package/lib-es/buildOptimisticOperation.test.js +73 -0
  206. package/lib-es/buildOptimisticOperation.test.js.map +1 -0
  207. package/lib-es/buildSubAccounts.d.ts +11 -0
  208. package/lib-es/buildSubAccounts.d.ts.map +1 -0
  209. package/lib-es/buildSubAccounts.js +112 -0
  210. package/lib-es/buildSubAccounts.js.map +1 -0
  211. package/lib-es/buildTransaction.d.ts +19 -0
  212. package/lib-es/buildTransaction.d.ts.map +1 -0
  213. package/lib-es/buildTransaction.js +44 -0
  214. package/lib-es/buildTransaction.js.map +1 -0
  215. package/lib-es/buildTransaction.unit.test.d.ts +2 -0
  216. package/lib-es/buildTransaction.unit.test.d.ts.map +1 -0
  217. package/lib-es/buildTransaction.unit.test.js +42 -0
  218. package/lib-es/buildTransaction.unit.test.js.map +1 -0
  219. package/lib-es/cli-transaction.d.ts +16 -0
  220. package/lib-es/cli-transaction.d.ts.map +1 -0
  221. package/lib-es/cli-transaction.js +29 -0
  222. package/lib-es/cli-transaction.js.map +1 -0
  223. package/lib-es/config.d.ts +14 -0
  224. package/lib-es/config.d.ts.map +1 -0
  225. package/lib-es/config.js +11 -0
  226. package/lib-es/config.js.map +1 -0
  227. package/lib-es/constants.d.ts +21 -0
  228. package/lib-es/constants.d.ts.map +1 -0
  229. package/lib-es/constants.js +21 -0
  230. package/lib-es/constants.js.map +1 -0
  231. package/lib-es/createTransaction.d.ts +9 -0
  232. package/lib-es/createTransaction.d.ts.map +1 -0
  233. package/lib-es/createTransaction.js +19 -0
  234. package/lib-es/createTransaction.js.map +1 -0
  235. package/lib-es/datasets/multiversx1.d.ts +3 -0
  236. package/lib-es/datasets/multiversx1.d.ts.map +1 -0
  237. package/lib-es/datasets/multiversx1.js +18 -0
  238. package/lib-es/datasets/multiversx1.js.map +1 -0
  239. package/lib-es/deviceTransactionConfig.d.ts +10 -0
  240. package/lib-es/deviceTransactionConfig.d.ts.map +1 -0
  241. package/lib-es/deviceTransactionConfig.js +55 -0
  242. package/lib-es/deviceTransactionConfig.js.map +1 -0
  243. package/lib-es/encode.d.ts +11 -0
  244. package/lib-es/encode.d.ts.map +1 -0
  245. package/lib-es/encode.js +35 -0
  246. package/lib-es/encode.js.map +1 -0
  247. package/lib-es/errors.d.ts +16 -0
  248. package/lib-es/errors.d.ts.map +1 -0
  249. package/lib-es/errors.js +7 -0
  250. package/lib-es/errors.js.map +1 -0
  251. package/lib-es/estimateMaxSpendable.d.ts +10 -0
  252. package/lib-es/estimateMaxSpendable.d.ts.map +1 -0
  253. package/lib-es/estimateMaxSpendable.js +31 -0
  254. package/lib-es/estimateMaxSpendable.js.map +1 -0
  255. package/lib-es/formatters.d.ts +11 -0
  256. package/lib-es/formatters.d.ts.map +1 -0
  257. package/lib-es/formatters.js +60 -0
  258. package/lib-es/formatters.js.map +1 -0
  259. package/lib-es/getTransactionStatus.d.ts +5 -0
  260. package/lib-es/getTransactionStatus.d.ts.map +1 -0
  261. package/lib-es/getTransactionStatus.js +100 -0
  262. package/lib-es/getTransactionStatus.js.map +1 -0
  263. package/lib-es/helpers/denominate.d.ts +9 -0
  264. package/lib-es/helpers/denominate.d.ts.map +1 -0
  265. package/lib-es/helpers/denominate.js +71 -0
  266. package/lib-es/helpers/denominate.js.map +1 -0
  267. package/lib-es/helpers/handleTransactionStatus.d.ts +7 -0
  268. package/lib-es/helpers/handleTransactionStatus.d.ts.map +1 -0
  269. package/lib-es/helpers/handleTransactionStatus.js +14 -0
  270. package/lib-es/helpers/handleTransactionStatus.js.map +1 -0
  271. package/lib-es/helpers/hasMinimumDelegableBalance.d.ts +3 -0
  272. package/lib-es/helpers/hasMinimumDelegableBalance.d.ts.map +1 -0
  273. package/lib-es/helpers/hasMinimumDelegableBalance.js +3 -0
  274. package/lib-es/helpers/hasMinimumDelegableBalance.js.map +1 -0
  275. package/lib-es/helpers/randomizeProviders.d.ts +7 -0
  276. package/lib-es/helpers/randomizeProviders.d.ts.map +1 -0
  277. package/lib-es/helpers/randomizeProviders.js +8 -0
  278. package/lib-es/helpers/randomizeProviders.js.map +1 -0
  279. package/lib-es/hw-getAddress.d.ts +6 -0
  280. package/lib-es/hw-getAddress.d.ts.map +1 -0
  281. package/lib-es/hw-getAddress.js +12 -0
  282. package/lib-es/hw-getAddress.js.map +1 -0
  283. package/lib-es/logic.d.ts +15 -0
  284. package/lib-es/logic.d.ts.map +1 -0
  285. package/lib-es/logic.js +65 -0
  286. package/lib-es/logic.js.map +1 -0
  287. package/lib-es/preload.d.ts +11 -0
  288. package/lib-es/preload.d.ts.map +1 -0
  289. package/lib-es/preload.js +85 -0
  290. package/lib-es/preload.js.map +1 -0
  291. package/lib-es/prepareTransaction.d.ts +10 -0
  292. package/lib-es/prepareTransaction.d.ts.map +1 -0
  293. package/lib-es/prepareTransaction.js +68 -0
  294. package/lib-es/prepareTransaction.js.map +1 -0
  295. package/lib-es/reconciliation.d.ts +3 -0
  296. package/lib-es/reconciliation.d.ts.map +1 -0
  297. package/lib-es/reconciliation.js +52 -0
  298. package/lib-es/reconciliation.js.map +1 -0
  299. package/lib-es/serialization.d.ts +9 -0
  300. package/lib-es/serialization.d.ts.map +1 -0
  301. package/lib-es/serialization.js +53 -0
  302. package/lib-es/serialization.js.map +1 -0
  303. package/lib-es/signOperation.d.ts +10 -0
  304. package/lib-es/signOperation.d.ts.map +1 -0
  305. package/lib-es/signOperation.js +61 -0
  306. package/lib-es/signOperation.js.map +1 -0
  307. package/lib-es/signer.d.ts +16 -0
  308. package/lib-es/signer.d.ts.map +1 -0
  309. package/lib-es/signer.js +2 -0
  310. package/lib-es/signer.js.map +1 -0
  311. package/lib-es/specs.d.ts +7 -0
  312. package/lib-es/specs.d.ts.map +1 -0
  313. package/lib-es/specs.js +281 -0
  314. package/lib-es/specs.js.map +1 -0
  315. package/lib-es/speculos-deviceActions.d.ts +16 -0
  316. package/lib-es/speculos-deviceActions.d.ts.map +1 -0
  317. package/lib-es/speculos-deviceActions.js +244 -0
  318. package/lib-es/speculos-deviceActions.js.map +1 -0
  319. package/lib-es/synchronisation.d.ts +5 -0
  320. package/lib-es/synchronisation.d.ts.map +1 -0
  321. package/lib-es/synchronisation.js +62 -0
  322. package/lib-es/synchronisation.js.map +1 -0
  323. package/lib-es/transaction.d.ts +15 -0
  324. package/lib-es/transaction.d.ts.map +1 -0
  325. package/lib-es/transaction.js +56 -0
  326. package/lib-es/transaction.js.map +1 -0
  327. package/lib-es/types.d.ts +188 -0
  328. package/lib-es/types.d.ts.map +1 -0
  329. package/lib-es/types.js +12 -0
  330. package/lib-es/types.js.map +1 -0
  331. package/lib-es/utils/binary.utils.d.ts +5 -0
  332. package/lib-es/utils/binary.utils.d.ts.map +1 -0
  333. package/lib-es/utils/binary.utils.js +12 -0
  334. package/lib-es/utils/binary.utils.js.map +1 -0
  335. package/package.json +86 -0
  336. package/src/__snapshots__/bridge.integration.test.ts.snap +181 -0
  337. package/src/api/apiCalls.ts +243 -0
  338. package/src/api/dtos/multiversx-account.ts +20 -0
  339. package/src/api/index.ts +13 -0
  340. package/src/api/sdk.ts +368 -0
  341. package/src/bridge/js.ts +77 -0
  342. package/src/bridge.integration.test.ts +147 -0
  343. package/src/broadcast.ts +16 -0
  344. package/src/buildOptimisticOperation.test.ts +88 -0
  345. package/src/buildOptimisticOperation.ts +120 -0
  346. package/src/buildSubAccounts.ts +153 -0
  347. package/src/buildTransaction.ts +67 -0
  348. package/src/buildTransaction.unit.test.ts +49 -0
  349. package/src/cli-transaction.ts +41 -0
  350. package/src/config.ts +26 -0
  351. package/src/constants.ts +24 -0
  352. package/src/createTransaction.ts +21 -0
  353. package/src/datasets/multiversx1.ts +19 -0
  354. package/src/deviceTransactionConfig.ts +74 -0
  355. package/src/encode.ts +46 -0
  356. package/src/errors.ts +19 -0
  357. package/src/estimateMaxSpendable.ts +43 -0
  358. package/src/formatters.ts +76 -0
  359. package/src/getTransactionStatus.ts +151 -0
  360. package/src/helpers/denominate.ts +95 -0
  361. package/src/helpers/handleTransactionStatus.ts +26 -0
  362. package/src/helpers/hasMinimumDelegableBalance.ts +6 -0
  363. package/src/helpers/randomizeProviders.ts +20 -0
  364. package/src/hw-getAddress.ts +19 -0
  365. package/src/logic.ts +83 -0
  366. package/src/preload.ts +95 -0
  367. package/src/prepareTransaction.ts +78 -0
  368. package/src/reconciliation.ts +64 -0
  369. package/src/serialization.ts +72 -0
  370. package/src/signOperation.ts +99 -0
  371. package/src/signer.ts +21 -0
  372. package/src/specs.ts +387 -0
  373. package/src/speculos-deviceActions.ts +269 -0
  374. package/src/synchronisation.ts +74 -0
  375. package/src/transaction.ts +76 -0
  376. package/src/types.ts +235 -0
  377. package/src/utils/binary.utils.ts +13 -0
  378. package/tsconfig.json +13 -0
package/lib/types.d.ts ADDED
@@ -0,0 +1,188 @@
1
+ import type { Account, AccountRaw, Operation, OperationExtra, OperationExtraRaw, OperationRaw, TransactionCommon, TransactionCommonRaw, TransactionStatusCommon, TransactionStatusCommonRaw } from "@ledgerhq/types-live";
2
+ import BigNumber from "bignumber.js";
3
+ export type MultiversXAccount = Account & {
4
+ multiversxResources: MultiversXResources;
5
+ };
6
+ export type MultiversXAccountRaw = AccountRaw & {
7
+ multiversxResources: MultiversXResourcesRaw;
8
+ };
9
+ export type MultiversXResources = {
10
+ nonce: number;
11
+ delegations: MultiversXDelegation[];
12
+ isGuarded: boolean;
13
+ };
14
+ export type MultiversXResourcesRaw = {
15
+ nonce: number;
16
+ delegations: MultiversXDelegation[];
17
+ isGuarded: boolean;
18
+ };
19
+ export type MultiversXDelegation = {
20
+ address: string;
21
+ contract: string;
22
+ userUnBondable: string;
23
+ userActiveStake: string;
24
+ claimableRewards: string;
25
+ userUndelegatedList: UserUndelegated[];
26
+ };
27
+ export type UserUndelegated = {
28
+ amount: string;
29
+ seconds: number;
30
+ };
31
+ /**
32
+ * MultiversX transaction
33
+ */
34
+ export type Transaction = TransactionCommon & {
35
+ family: "multiversx";
36
+ mode: MultiversXTransactionMode;
37
+ fees: BigNumber | null | undefined;
38
+ data?: string;
39
+ gasLimit: number;
40
+ };
41
+ export type TransactionRaw = TransactionCommonRaw & {
42
+ family: "multiversx";
43
+ mode: MultiversXTransactionMode;
44
+ fees: string | null | undefined;
45
+ data?: string;
46
+ gasLimit: number;
47
+ };
48
+ export type TransactionStatus = TransactionStatusCommon;
49
+ export type TransactionStatusRaw = TransactionStatusCommonRaw;
50
+ export type MultiversXTransactionMode = "send" | "delegate" | "reDelegateRewards" | "unDelegate" | "claimRewards" | "withdraw";
51
+ /**
52
+ * MultiversX transaction payload to sign
53
+ */
54
+ export type MultiversXProtocolTransaction = {
55
+ nonce: number;
56
+ value: string;
57
+ receiver: string;
58
+ sender: string;
59
+ gasPrice: number;
60
+ gasLimit: number;
61
+ chainID: string;
62
+ signature?: string;
63
+ data?: string;
64
+ version: number;
65
+ options: number;
66
+ };
67
+ /**
68
+ * MultiversX transaction as received from explorer
69
+ */
70
+ export type MultiversXApiTransaction = {
71
+ mode: MultiversXTransactionMode;
72
+ fees: BigNumber | null | undefined;
73
+ transfer?: MultiversXTransferOptions;
74
+ txHash?: string;
75
+ sender?: string;
76
+ receiver?: string;
77
+ value?: BigNumber;
78
+ blockHash?: string;
79
+ blockHeight?: number;
80
+ timestamp?: number;
81
+ nonce?: number;
82
+ gasLimit: number;
83
+ status?: string;
84
+ fee?: BigNumber;
85
+ round?: number;
86
+ miniBlockHash?: string;
87
+ data?: string;
88
+ tokenIdentifier?: string;
89
+ tokenValue?: string;
90
+ action?: MultiversXTransactionAction;
91
+ operations?: MultiversXTransactionOperation[];
92
+ };
93
+ export declare enum MultiversXTransferOptions {
94
+ egld = "egld",
95
+ esdt = "esdt"
96
+ }
97
+ export type MultiversXTransactionOperation = {
98
+ action: string;
99
+ type: string;
100
+ sender: string;
101
+ receiver: string;
102
+ value: string;
103
+ };
104
+ export type MultiversXTransactionAction = {
105
+ category: string;
106
+ name: string;
107
+ arguments: MultiversXTransactionActionArguments;
108
+ };
109
+ export type MultiversXTransactionActionArguments = {
110
+ transfers: MultiversXTransactionActionArgumentsTransfers[];
111
+ };
112
+ export type MultiversXTransactionActionArgumentsTransfers = {
113
+ token: string;
114
+ value: string;
115
+ };
116
+ export type ESDTToken = {
117
+ identifier: string;
118
+ name: string;
119
+ balance: string;
120
+ };
121
+ export type NetworkInfo = {
122
+ family?: "multiversx";
123
+ chainID: string;
124
+ denomination: number;
125
+ gasLimit: number;
126
+ gasPrice: number;
127
+ gasPerByte: number;
128
+ gasPriceModifier: string;
129
+ };
130
+ export type NetworkInfoRaw = {
131
+ family?: "multiversx";
132
+ chainID: string;
133
+ denomination: number;
134
+ gasLimit: number;
135
+ gasPrice: number;
136
+ gasPerByte: number;
137
+ };
138
+ export type MultiversXPreloadData = {
139
+ validators: MultiversXProvider[];
140
+ };
141
+ /**
142
+ * MultiversX validator
143
+ */
144
+ export type MultiversXProvider = {
145
+ contract: string;
146
+ owner: string;
147
+ serviceFee: string;
148
+ maxDelegationCap: string;
149
+ initialOwnerFunds: string;
150
+ totalActiveStake: string;
151
+ totalUnstaked: string;
152
+ maxDelegateAmountAllowed: string;
153
+ apr: string;
154
+ explorerURL: string;
155
+ address: string;
156
+ aprValue: number;
157
+ automaticActivation: boolean;
158
+ changeableServiceFee: boolean;
159
+ checkCapOnRedelegate: boolean;
160
+ createdNonce: number;
161
+ featured: boolean;
162
+ numNodes: number;
163
+ numUsers: number;
164
+ ownerBelowRequiredBalanceThreshold: boolean;
165
+ unBondPeriod: number;
166
+ withDelegationCap: boolean;
167
+ disabled?: boolean;
168
+ identity: {
169
+ key: string;
170
+ name: string;
171
+ avatar: string;
172
+ description: string;
173
+ location?: string;
174
+ twitter: string;
175
+ url: string;
176
+ };
177
+ };
178
+ export type MultiversXOperation = Operation<MultiversXOperationExtra>;
179
+ export type MultiversXOperationRaw = OperationRaw<MultiversXOperationExtraRaw>;
180
+ export type MultiversXOperationExtra = {
181
+ amount?: BigNumber;
182
+ };
183
+ export declare function isMultiversXOperationExtra(op: OperationExtra): op is MultiversXOperationExtra;
184
+ export type MultiversXOperationExtraRaw = {
185
+ amount?: string;
186
+ };
187
+ export declare function isMultiversXOperationExtraRaw(op: OperationExtraRaw): op is MultiversXOperationExtraRaw;
188
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/lib/types.js ADDED
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isMultiversXOperationExtraRaw = exports.isMultiversXOperationExtra = exports.MultiversXTransferOptions = void 0;
4
+ var MultiversXTransferOptions;
5
+ (function (MultiversXTransferOptions) {
6
+ MultiversXTransferOptions["egld"] = "egld";
7
+ MultiversXTransferOptions["esdt"] = "esdt";
8
+ })(MultiversXTransferOptions || (exports.MultiversXTransferOptions = MultiversXTransferOptions = {}));
9
+ function isMultiversXOperationExtra(op) {
10
+ return op !== null && typeof op === "object" && "amount" in op;
11
+ }
12
+ exports.isMultiversXOperationExtra = isMultiversXOperationExtra;
13
+ function isMultiversXOperationExtraRaw(op) {
14
+ return op !== null && typeof op === "object" && "amount" in op;
15
+ }
16
+ exports.isMultiversXOperationExtraRaw = isMultiversXOperationExtraRaw;
17
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AAyHA,IAAY,yBAGX;AAHD,WAAY,yBAAyB;IACnC,0CAAa,CAAA;IACb,0CAAa,CAAA;AACf,CAAC,EAHW,yBAAyB,yCAAzB,yBAAyB,QAGpC;AAmGD,SAAgB,0BAA0B,CAAC,EAAkB;IAC3D,OAAO,EAAE,KAAK,IAAI,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,QAAQ,IAAI,EAAE,CAAC;AACjE,CAAC;AAFD,gEAEC;AAKD,SAAgB,6BAA6B,CAC3C,EAAqB;IAErB,OAAO,EAAE,KAAK,IAAI,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,QAAQ,IAAI,EAAE,CAAC;AACjE,CAAC;AAJD,sEAIC"}
@@ -0,0 +1,5 @@
1
+ export declare class BinaryUtils {
2
+ static base64Encode(str: string): string;
3
+ static base64Decode(str: string): string;
4
+ }
5
+ //# sourceMappingURL=binary.utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binary.utils.d.ts","sourceRoot":"","sources":["../../src/utils/binary.utils.ts"],"names":[],"mappings":"AAIA,qBAAa,WAAW;IACtB,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAIxC,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;CAGzC"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BinaryUtils = void 0;
4
+ function base64DecodeBinary(str) {
5
+ return Buffer.from(str, "base64");
6
+ }
7
+ class BinaryUtils {
8
+ static base64Encode(str) {
9
+ return Buffer.from(str).toString("base64");
10
+ }
11
+ static base64Decode(str) {
12
+ return base64DecodeBinary(str).toString("binary");
13
+ }
14
+ }
15
+ exports.BinaryUtils = BinaryUtils;
16
+ //# sourceMappingURL=binary.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"binary.utils.js","sourceRoot":"","sources":["../../src/utils/binary.utils.ts"],"names":[],"mappings":";;;AAAA,SAAS,kBAAkB,CAAC,GAAW;IACrC,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AACpC,CAAC;AAED,MAAa,WAAW;IACtB,MAAM,CAAC,YAAY,CAAC,GAAW;QAC7B,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,GAAW;QAC7B,OAAO,kBAAkB,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;CACF;AARD,kCAQC"}
@@ -0,0 +1,22 @@
1
+ import { SignedOperation } from "@ledgerhq/types-live/src";
2
+ import { ESDTToken, MultiversXApiTransaction, MultiversXDelegation, MultiversXProvider, NetworkInfo } from "../types";
3
+ export default class MultiversXApi {
4
+ private API_URL;
5
+ private DELEGATION_API_URL;
6
+ constructor(API_URL: string, DELEGATION_API_URL: string);
7
+ getAccountDetails(addr: string): Promise<{
8
+ balance: import("bignumber.js").BigNumber;
9
+ nonce: number;
10
+ isGuarded: boolean;
11
+ }>;
12
+ getProviders(): Promise<MultiversXProvider[]>;
13
+ getNetworkConfig(): Promise<NetworkInfo>;
14
+ submit(signedOperation: SignedOperation): Promise<string>;
15
+ getHistory(addr: string, startAt: number): Promise<MultiversXApiTransaction[]>;
16
+ getAccountDelegations(addr: string): Promise<MultiversXDelegation[]>;
17
+ getESDTTransactionsForAddress(addr: string, token: string, startAt: number): Promise<MultiversXApiTransaction[]>;
18
+ getESDTTokensForAddress(addr: string): Promise<ESDTToken[]>;
19
+ getESDTTokensCountForAddress(addr: string): Promise<number>;
20
+ getBlockchainBlockHeight(): Promise<number>;
21
+ }
22
+ //# sourceMappingURL=apiCalls.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apiCalls.d.ts","sourceRoot":"","sources":["../../src/api/apiCalls.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE3D,OAAO,EACL,SAAS,EACT,wBAAwB,EACxB,oBAAoB,EACpB,kBAAkB,EAIlB,WAAW,EACZ,MAAM,UAAU,CAAC;AA4ClB,MAAM,CAAC,OAAO,OAAO,aAAa;IAChC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,kBAAkB,CAAS;gBAEvB,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM;IAKjD,iBAAiB,CAAC,IAAI,EAAE,MAAM;;;;;IAe9B,YAAY,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAS7C,gBAAgB,IAAI,OAAO,CAAC,WAAW,CAAC;IA6BxC,MAAM,CAAC,eAAe,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC;IAmBzD,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,EAAE,CAAC;IA0B9E,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;IASpE,6BAA6B,CACjC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,wBAAwB,EAAE,CAAC;IA0BhC,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAsB3D,4BAA4B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAS3D,wBAAwB,IAAI,OAAO,CAAC,MAAM,CAAC;CASlD"}
@@ -0,0 +1,147 @@
1
+ import network from "@ledgerhq/live-network";
2
+ import { MAX_PAGINATION_SIZE, METACHAIN_SHARD } from "../constants";
3
+ import { MultiversXTransferOptions, } from "../types";
4
+ const decodeTransactionMode = (action) => {
5
+ if (!action) {
6
+ return "send";
7
+ }
8
+ if (!action.category) {
9
+ return "send";
10
+ }
11
+ if (action.category !== "stake") {
12
+ return "send";
13
+ }
14
+ const mode = action.name;
15
+ return mode;
16
+ };
17
+ export default class MultiversXApi {
18
+ API_URL;
19
+ DELEGATION_API_URL;
20
+ constructor(API_URL, DELEGATION_API_URL) {
21
+ this.API_URL = API_URL;
22
+ this.DELEGATION_API_URL = DELEGATION_API_URL;
23
+ }
24
+ async getAccountDetails(addr) {
25
+ const { data: { balance, nonce, isGuarded }, } = await network({
26
+ method: "GET",
27
+ url: `${this.API_URL}/accounts/${addr}?withGuardianInfo=true`,
28
+ });
29
+ return {
30
+ balance,
31
+ nonce,
32
+ isGuarded,
33
+ };
34
+ }
35
+ async getProviders() {
36
+ const { data: providers } = await network({
37
+ method: "GET",
38
+ url: `${this.DELEGATION_API_URL}/providers`,
39
+ });
40
+ return providers;
41
+ }
42
+ async getNetworkConfig() {
43
+ const { data: { data: { config: { erd_chain_id: chainId, erd_denomination: denomination, erd_min_gas_limit: gasLimit, erd_min_gas_price: gasPrice, erd_gas_per_data_byte: gasPerByte, erd_gas_price_modifier: gasPriceModifier, }, }, }, } = await network({
44
+ method: "GET",
45
+ url: `${this.API_URL}/network/config`,
46
+ });
47
+ return {
48
+ chainID: chainId,
49
+ denomination,
50
+ gasLimit,
51
+ gasPrice,
52
+ gasPerByte,
53
+ gasPriceModifier,
54
+ };
55
+ }
56
+ async submit(signedOperation) {
57
+ const transaction = {
58
+ ...signedOperation.rawData,
59
+ signature: signedOperation.signature,
60
+ };
61
+ const { data: { data: { txHash: hash }, }, } = await network({
62
+ method: "POST",
63
+ url: `${this.API_URL}/transaction/send`,
64
+ data: transaction,
65
+ });
66
+ return hash;
67
+ }
68
+ async getHistory(addr, startAt) {
69
+ const { data: transactionsCount } = await network({
70
+ method: "GET",
71
+ url: `${this.API_URL}/accounts/${addr}/transactions/count?after=${startAt}`,
72
+ });
73
+ let allTransactions = [];
74
+ let from = 0;
75
+ while (from < transactionsCount) {
76
+ const { data: transactions } = await network({
77
+ method: "GET",
78
+ url: `${this.API_URL}/accounts/${addr}/transactions?after=${startAt}&from=${from}&size=${MAX_PAGINATION_SIZE}&withOperations=true&withScResults=true`,
79
+ });
80
+ for (const transaction of transactions) {
81
+ transaction.mode = decodeTransactionMode(transaction.action);
82
+ }
83
+ allTransactions = [...allTransactions, ...transactions];
84
+ from = from + MAX_PAGINATION_SIZE;
85
+ }
86
+ return allTransactions;
87
+ }
88
+ async getAccountDelegations(addr) {
89
+ const { data: delegations } = await network({
90
+ method: "GET",
91
+ url: `${this.DELEGATION_API_URL}/accounts/${addr}/delegations`,
92
+ });
93
+ return delegations;
94
+ }
95
+ async getESDTTransactionsForAddress(addr, token, startAt) {
96
+ const { data: tokenTransactionsCount } = await network({
97
+ method: "GET",
98
+ url: `${this.API_URL}/accounts/${addr}/transactions/count?token=${token}&after=${startAt}`,
99
+ });
100
+ let allTokenTransactions = [];
101
+ let from = 0;
102
+ while (from < tokenTransactionsCount) {
103
+ const { data: tokenTransactions } = await network({
104
+ method: "GET",
105
+ url: `${this.API_URL}/accounts/${addr}/transactions?token=${token}&from=${from}&after=${startAt}&size=${MAX_PAGINATION_SIZE}`,
106
+ });
107
+ allTokenTransactions = [...allTokenTransactions, ...tokenTransactions];
108
+ from = from + MAX_PAGINATION_SIZE;
109
+ }
110
+ for (const esdtTransaction of allTokenTransactions) {
111
+ esdtTransaction.transfer = MultiversXTransferOptions.esdt;
112
+ }
113
+ return allTokenTransactions;
114
+ }
115
+ async getESDTTokensForAddress(addr) {
116
+ const { data: tokensCount } = await network({
117
+ method: "GET",
118
+ url: `${this.API_URL}/accounts/${addr}/tokens/count`,
119
+ });
120
+ let allTokens = [];
121
+ let from = 0;
122
+ while (from < tokensCount) {
123
+ const { data: tokens } = await network({
124
+ method: "GET",
125
+ url: `${this.API_URL}/accounts/${addr}/tokens?from=${from}&size=${MAX_PAGINATION_SIZE}`,
126
+ });
127
+ allTokens = [...allTokens, ...tokens];
128
+ from = from + MAX_PAGINATION_SIZE;
129
+ }
130
+ return allTokens;
131
+ }
132
+ async getESDTTokensCountForAddress(addr) {
133
+ const { data: tokensCount } = await network({
134
+ method: "GET",
135
+ url: `${this.API_URL}/accounts/${addr}/tokens/count`,
136
+ });
137
+ return tokensCount;
138
+ }
139
+ async getBlockchainBlockHeight() {
140
+ const { data: [{ round: blockHeight }], } = await network({
141
+ method: "GET",
142
+ url: `${this.API_URL}/blocks?shard=${METACHAIN_SHARD}&fields=round`,
143
+ });
144
+ return blockHeight;
145
+ }
146
+ }
147
+ //# sourceMappingURL=apiCalls.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apiCalls.js","sourceRoot":"","sources":["../../src/api/apiCalls.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import BigNumber from "bignumber.js";
2
+ export declare class MultiversXAccount {
3
+ balance: BigNumber;
4
+ nonce: number;
5
+ isGuarded: boolean;
6
+ blockHeight: number;
7
+ constructor(balance: BigNumber, nonce: number, isGuarded: boolean | null | undefined, blockHeight: number);
8
+ }
9
+ //# sourceMappingURL=multiversx-account.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multiversx-account.d.ts","sourceRoot":"","sources":["../../../src/api/dtos/multiversx-account.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AAErC,qBAAa,iBAAiB;IAC5B,OAAO,EAAE,SAAS,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;gBAGlB,OAAO,EAAE,SAAS,EAClB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,OAAO,GAAG,IAAI,GAAG,SAAS,EACrC,WAAW,EAAE,MAAM;CAOtB"}
@@ -0,0 +1,13 @@
1
+ export class MultiversXAccount {
2
+ balance;
3
+ nonce;
4
+ isGuarded;
5
+ blockHeight;
6
+ constructor(balance, nonce, isGuarded, blockHeight) {
7
+ this.balance = balance;
8
+ this.nonce = nonce;
9
+ this.isGuarded = isGuarded ? true : false;
10
+ this.blockHeight = blockHeight;
11
+ }
12
+ }
13
+ //# sourceMappingURL=multiversx-account.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multiversx-account.js","sourceRoot":"","sources":["../../../src/api/dtos/multiversx-account.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,iBAAiB;IAC5B,OAAO,CAAY;IACnB,KAAK,CAAS;IACd,SAAS,CAAU;IACnB,WAAW,CAAS;IAEpB,YACE,OAAkB,EAClB,KAAa,EACb,SAAqC,EACrC,WAAmB;QAEnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;CACF"}
@@ -0,0 +1,2 @@
1
+ export { getAccount, getNetworkConfig, getProviders, getEGLDOperations, getFees, broadcastTransaction, getAccountESDTTokens, getAccountDelegations, getESDTOperations, hasESDTTokens, getAccountNonce, } from "./sdk";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EACjB,OAAO,EACP,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,EACb,eAAe,GAChB,MAAM,OAAO,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { getAccount, getNetworkConfig, getProviders, getEGLDOperations, getFees, broadcastTransaction, getAccountESDTTokens, getAccountDelegations, getESDTOperations, hasESDTTokens, getAccountNonce, } from "./sdk";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EACjB,OAAO,EACP,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,aAAa,EACb,eAAe,GAChB,MAAM,OAAO,CAAC"}
@@ -0,0 +1,29 @@
1
+ import type { SignedOperation, TokenAccount } from "@ledgerhq/types-live";
2
+ import { INetworkConfig, INonce } from "@multiversx/sdk-core";
3
+ import { BigNumber } from "bignumber.js";
4
+ import { ESDTToken, MultiversXDelegation, MultiversXOperation, MultiversXProvider, Transaction } from "../types";
5
+ import { MultiversXAccount } from "./dtos/multiversx-account";
6
+ /**
7
+ * Get account balances and nonce
8
+ */
9
+ export declare const getAccount: (addr: string) => Promise<MultiversXAccount>;
10
+ export declare const getProviders: () => Promise<MultiversXProvider[]>;
11
+ export declare const getNetworkConfig: () => Promise<INetworkConfig>;
12
+ export declare const getAccountNonce: (addr: string) => Promise<INonce>;
13
+ /**
14
+ * Fetch operation list
15
+ */
16
+ export declare const getEGLDOperations: (accountId: string, addr: string, startAt: number, subAccounts: TokenAccount[]) => Promise<MultiversXOperation[]>;
17
+ export declare const getAccountESDTTokens: (address: string) => Promise<ESDTToken[]>;
18
+ export declare const getAccountDelegations: (address: string) => Promise<MultiversXDelegation[]>;
19
+ export declare const hasESDTTokens: (address: string) => Promise<boolean>;
20
+ export declare const getESDTOperations: (tokenAccountId: string, address: string, tokenIdentifier: string, startAt: number) => Promise<MultiversXOperation[]>;
21
+ /**
22
+ * Obtain fees from blockchain
23
+ */
24
+ export declare const getFees: (t: Transaction) => Promise<BigNumber>;
25
+ /**
26
+ * Broadcast blob to blockchain
27
+ */
28
+ export declare const broadcastTransaction: (signedOperation: SignedOperation) => Promise<string>;
29
+ //# sourceMappingURL=sdk.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../src/api/sdk.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAiB,eAAe,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzF,OAAO,EAGL,cAAc,EACd,MAAM,EAGP,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AASzC,OAAO,EACL,SAAS,EAET,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAGlB,WAAW,EACZ,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAS9D;;GAEG;AACH,eAAO,MAAM,UAAU,SAAgB,MAAM,KAAG,QAAQ,iBAAiB,CAMxE,CAAC;AAEF,eAAO,MAAM,YAAY,QAAa,QAAQ,kBAAkB,EAAE,CAGjE,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAa,QAAQ,cAAc,CAE/D,CAAC;AAEF,eAAO,MAAM,eAAe,SAAgB,MAAM,KAAG,QAAQ,MAAM,CAMlE,CAAC;AA8NF;;GAEG;AACH,eAAO,MAAM,iBAAiB,cACjB,MAAM,QACX,MAAM,WACH,MAAM,eACF,YAAY,EAAE,KAC1B,QAAQ,mBAAmB,EAAE,CAM/B,CAAC;AAEF,eAAO,MAAM,oBAAoB,YAAmB,MAAM,KAAG,QAAQ,SAAS,EAAE,CAE/E,CAAC;AAEF,eAAO,MAAM,qBAAqB,YAAmB,MAAM,KAAG,QAAQ,oBAAoB,EAAE,CAE3F,CAAC;AAEF,eAAO,MAAM,aAAa,YAAmB,MAAM,KAAG,QAAQ,OAAO,CAGpE,CAAC;AAEF,eAAO,MAAM,iBAAiB,mBACZ,MAAM,WACb,MAAM,mBACE,MAAM,WACd,MAAM,KACd,QAAQ,mBAAmB,EAAE,CAU/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,MAAa,WAAW,KAAG,QAAQ,SAAS,CAoB/D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oBAAoB,oBAA2B,eAAe,KAAG,QAAQ,MAAM,CAE3F,CAAC"}