@pezkuwi/api-derive 16.5.5 → 16.5.6

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 (719) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +2 -2
  3. package/accounts/accountId.js +29 -0
  4. package/{build/accounts → accounts}/flags.d.ts +2 -2
  5. package/accounts/flags.js +55 -0
  6. package/accounts/idAndIndex.js +34 -0
  7. package/accounts/idToIndex.js +17 -0
  8. package/{build/accounts → accounts}/identity.d.ts +3 -3
  9. package/accounts/identity.js +153 -0
  10. package/{src/accounts/index.ts → accounts/index.js} +0 -3
  11. package/accounts/indexToId.js +18 -0
  12. package/accounts/indexes.js +34 -0
  13. package/accounts/info.js +33 -0
  14. package/{src/alliance/index.ts → alliance/index.js} +0 -5
  15. package/augment.js +1 -0
  16. package/bagsList/get.js +42 -0
  17. package/bagsList/getExpanded.js +19 -0
  18. package/bagsList/index.js +3 -0
  19. package/bagsList/listNodes.d.ts +9 -0
  20. package/bagsList/listNodes.js +26 -0
  21. package/{build/bagsList → bagsList}/types.d.ts +3 -3
  22. package/bagsList/types.js +1 -0
  23. package/bagsList/util.js +8 -0
  24. package/balances/account.js +149 -0
  25. package/balances/all.js +167 -0
  26. package/{src/balances/index.ts → balances/index.js} +0 -6
  27. package/{build/balances → balances}/types.d.ts +7 -7
  28. package/balances/types.js +1 -0
  29. package/balances/votingBalances.js +18 -0
  30. package/bounties/bounties.js +50 -0
  31. package/bounties/helpers/filterBountyProposals.js +5 -0
  32. package/bounties/index.js +1 -0
  33. package/bundle.js +107 -0
  34. package/{src/chain/bestNumber.ts → chain/bestNumber.js} +1 -10
  35. package/{src/chain/bestNumberFinalized.ts → chain/bestNumberFinalized.js} +1 -10
  36. package/chain/bestNumberLag.js +19 -0
  37. package/chain/getBlock.js +25 -0
  38. package/chain/getBlockByNumber.js +16 -0
  39. package/chain/getHeader.js +19 -0
  40. package/{src/chain/index.ts → chain/index.js} +0 -3
  41. package/chain/subscribeFinalizedBlocks.js +15 -0
  42. package/chain/subscribeFinalizedHeads.js +37 -0
  43. package/chain/subscribeNewBlocks.js +15 -0
  44. package/chain/subscribeNewHeads.js +21 -0
  45. package/chain/util.js +57 -0
  46. package/cjs/accounts/accountId.d.ts +17 -0
  47. package/cjs/accounts/accountId.js +32 -0
  48. package/cjs/accounts/flags.d.ts +29 -0
  49. package/cjs/accounts/flags.js +59 -0
  50. package/cjs/accounts/idAndIndex.d.ts +15 -0
  51. package/cjs/accounts/idAndIndex.js +37 -0
  52. package/cjs/accounts/idToIndex.d.ts +16 -0
  53. package/cjs/accounts/idToIndex.js +20 -0
  54. package/cjs/accounts/identity.d.ts +48 -0
  55. package/cjs/accounts/identity.js +159 -0
  56. package/cjs/accounts/index.d.ts +8 -0
  57. package/cjs/accounts/index.js +11 -0
  58. package/cjs/accounts/indexToId.d.ts +15 -0
  59. package/cjs/accounts/indexToId.js +21 -0
  60. package/cjs/accounts/indexes.d.ts +16 -0
  61. package/cjs/accounts/indexes.js +37 -0
  62. package/cjs/accounts/info.d.ts +18 -0
  63. package/cjs/accounts/info.js +36 -0
  64. package/cjs/accounts/types.d.ts +39 -0
  65. package/cjs/accounts/types.js +2 -0
  66. package/cjs/alliance/index.d.ts +70 -0
  67. package/cjs/alliance/index.js +74 -0
  68. package/cjs/augment.d.ts +1 -0
  69. package/cjs/augment.js +3 -0
  70. package/cjs/bagsList/get.d.ts +12 -0
  71. package/cjs/bagsList/get.js +47 -0
  72. package/cjs/bagsList/getExpanded.d.ts +16 -0
  73. package/cjs/bagsList/getExpanded.js +23 -0
  74. package/cjs/bagsList/index.d.ts +3 -0
  75. package/cjs/bagsList/index.js +6 -0
  76. package/cjs/bagsList/listNodes.d.ts +9 -0
  77. package/cjs/bagsList/listNodes.js +29 -0
  78. package/cjs/bagsList/types.d.ts +13 -0
  79. package/cjs/bagsList/types.js +2 -0
  80. package/cjs/bagsList/util.d.ts +2 -0
  81. package/cjs/bagsList/util.js +11 -0
  82. package/cjs/balances/account.d.ts +17 -0
  83. package/cjs/balances/account.js +152 -0
  84. package/cjs/balances/all.d.ts +20 -0
  85. package/cjs/balances/all.js +170 -0
  86. package/cjs/balances/index.d.ts +20 -0
  87. package/cjs/balances/index.js +25 -0
  88. package/cjs/balances/types.d.ts +69 -0
  89. package/cjs/balances/types.js +2 -0
  90. package/cjs/balances/votingBalances.d.ts +15 -0
  91. package/cjs/balances/votingBalances.js +21 -0
  92. package/cjs/bounties/bounties.d.ts +12 -0
  93. package/cjs/bounties/bounties.js +53 -0
  94. package/cjs/bounties/helpers/filterBountyProposals.d.ts +2 -0
  95. package/cjs/bounties/helpers/filterBountyProposals.js +8 -0
  96. package/cjs/bounties/index.d.ts +1 -0
  97. package/cjs/bounties/index.js +4 -0
  98. package/cjs/bundle.d.ts +9 -0
  99. package/cjs/bundle.js +112 -0
  100. package/cjs/chain/bestNumber.d.ts +11 -0
  101. package/cjs/chain/bestNumber.js +15 -0
  102. package/cjs/chain/bestNumberFinalized.d.ts +12 -0
  103. package/cjs/chain/bestNumberFinalized.js +16 -0
  104. package/cjs/chain/bestNumberLag.d.ts +15 -0
  105. package/cjs/chain/bestNumberLag.js +22 -0
  106. package/cjs/chain/getBlock.d.ts +15 -0
  107. package/cjs/chain/getBlock.js +28 -0
  108. package/{src/chain/getBlockByNumber.ts → cjs/chain/getBlockByNumber.d.ts} +1 -15
  109. package/cjs/chain/getBlockByNumber.js +19 -0
  110. package/cjs/chain/getHeader.d.ts +16 -0
  111. package/cjs/chain/getHeader.js +22 -0
  112. package/cjs/chain/index.d.ts +10 -0
  113. package/cjs/chain/index.js +13 -0
  114. package/cjs/chain/subscribeFinalizedBlocks.d.ts +14 -0
  115. package/cjs/chain/subscribeFinalizedBlocks.js +18 -0
  116. package/cjs/chain/subscribeFinalizedHeads.d.ts +22 -0
  117. package/cjs/chain/subscribeFinalizedHeads.js +41 -0
  118. package/cjs/chain/subscribeNewBlocks.d.ts +14 -0
  119. package/cjs/chain/subscribeNewBlocks.js +18 -0
  120. package/cjs/chain/subscribeNewHeads.d.ts +15 -0
  121. package/cjs/chain/subscribeNewHeads.js +24 -0
  122. package/cjs/chain/util.d.ts +9 -0
  123. package/cjs/chain/util.js +61 -0
  124. package/cjs/collective/helpers.js +23 -0
  125. package/cjs/collective/index.js +6 -0
  126. package/cjs/collective/members.js +5 -0
  127. package/cjs/collective/prime.js +11 -0
  128. package/cjs/collective/proposals.js +44 -0
  129. package/cjs/collective/types.js +2 -0
  130. package/{build → cjs}/contracts/fees.d.ts +1 -1
  131. package/cjs/contracts/fees.js +48 -0
  132. package/cjs/contracts/index.js +4 -0
  133. package/cjs/council/index.js +77 -0
  134. package/cjs/council/types.js +2 -0
  135. package/cjs/council/votes.js +59 -0
  136. package/cjs/council/votesOf.js +21 -0
  137. package/{build → cjs}/crowdloan/childKey.d.ts +2 -2
  138. package/cjs/crowdloan/childKey.js +26 -0
  139. package/{build → cjs}/crowdloan/contributions.d.ts +2 -2
  140. package/cjs/crowdloan/contributions.js +83 -0
  141. package/cjs/crowdloan/index.js +6 -0
  142. package/{build → cjs}/crowdloan/ownContributions.d.ts +2 -2
  143. package/cjs/crowdloan/ownContributions.js +48 -0
  144. package/cjs/crowdloan/types.js +2 -0
  145. package/{build → cjs}/crowdloan/util.d.ts +2 -2
  146. package/cjs/crowdloan/util.js +20 -0
  147. package/cjs/democracy/dispatchQueue.js +90 -0
  148. package/cjs/democracy/index.js +14 -0
  149. package/cjs/democracy/locks.js +65 -0
  150. package/cjs/democracy/nextExternal.js +31 -0
  151. package/{build → cjs}/democracy/preimages.d.ts +5 -5
  152. package/cjs/democracy/preimages.js +117 -0
  153. package/cjs/democracy/proposals.js +46 -0
  154. package/cjs/democracy/referendumIds.js +24 -0
  155. package/cjs/democracy/referendums.js +22 -0
  156. package/cjs/democracy/referendumsActive.js +19 -0
  157. package/{build → cjs}/democracy/referendumsFinished.d.ts +2 -2
  158. package/cjs/democracy/referendumsFinished.js +20 -0
  159. package/{build → cjs}/democracy/referendumsInfo.d.ts +2 -2
  160. package/cjs/democracy/referendumsInfo.js +114 -0
  161. package/cjs/democracy/sqrtElectorate.js +18 -0
  162. package/{build → cjs}/democracy/types.d.ts +3 -3
  163. package/cjs/democracy/types.js +2 -0
  164. package/{build → cjs}/democracy/util.d.ts +5 -5
  165. package/cjs/democracy/util.js +137 -0
  166. package/{build → cjs}/derive.d.ts +2 -2
  167. package/cjs/derive.js +25 -0
  168. package/cjs/elections/index.js +4 -0
  169. package/cjs/elections/info.js +93 -0
  170. package/cjs/elections/types.js +2 -0
  171. package/cjs/imOnline/index.js +4 -0
  172. package/cjs/imOnline/receivedHeartbeats.js +42 -0
  173. package/cjs/index.js +5 -0
  174. package/cjs/membership/index.js +74 -0
  175. package/cjs/package.json +3 -0
  176. package/cjs/packageDetect.d.ts +1 -0
  177. package/cjs/packageDetect.js +5 -0
  178. package/cjs/packageInfo.js +4 -0
  179. package/cjs/session/index.js +6 -0
  180. package/cjs/session/indexes.js +68 -0
  181. package/cjs/session/info.js +28 -0
  182. package/cjs/session/progress.js +93 -0
  183. package/cjs/session/types.js +2 -0
  184. package/cjs/society/candidates.js +42 -0
  185. package/cjs/society/index.js +7 -0
  186. package/cjs/society/info.js +36 -0
  187. package/cjs/society/member.js +18 -0
  188. package/cjs/society/members.js +70 -0
  189. package/{build → cjs}/society/types.d.ts +5 -5
  190. package/cjs/society/types.js +2 -0
  191. package/{build → cjs}/staking/account.d.ts +1 -1
  192. package/cjs/staking/account.js +80 -0
  193. package/cjs/staking/cache.js +39 -0
  194. package/{build → cjs}/staking/currentPoints.d.ts +2 -2
  195. package/cjs/staking/currentPoints.js +17 -0
  196. package/cjs/staking/electedInfo.js +37 -0
  197. package/cjs/staking/erasExposure.js +76 -0
  198. package/cjs/staking/erasHistoric.js +31 -0
  199. package/cjs/staking/erasPoints.js +51 -0
  200. package/cjs/staking/erasPrefs.js +47 -0
  201. package/cjs/staking/erasRewards.js +38 -0
  202. package/cjs/staking/erasSlashes.js +53 -0
  203. package/cjs/staking/index.js +25 -0
  204. package/{build → cjs}/staking/keys.d.ts +1 -1
  205. package/cjs/staking/keys.js +61 -0
  206. package/cjs/staking/overview.js +31 -0
  207. package/{build → cjs}/staking/ownExposure.d.ts +1 -1
  208. package/cjs/staking/ownExposure.js +64 -0
  209. package/{build → cjs}/staking/ownSlashes.d.ts +1 -1
  210. package/cjs/staking/ownSlashes.js +51 -0
  211. package/{build → cjs}/staking/query.d.ts +1 -1
  212. package/cjs/staking/query.js +176 -0
  213. package/{build → cjs}/staking/stakerExposure.d.ts +1 -1
  214. package/cjs/staking/stakerExposure.js +56 -0
  215. package/cjs/staking/stakerPoints.js +35 -0
  216. package/cjs/staking/stakerPrefs.js +33 -0
  217. package/{build → cjs}/staking/stakerRewards.d.ts +1 -1
  218. package/cjs/staking/stakerRewards.js +222 -0
  219. package/cjs/staking/stakerSlashes.js +34 -0
  220. package/cjs/staking/stashes.js +38 -0
  221. package/{build → cjs}/staking/types.d.ts +15 -15
  222. package/cjs/staking/types.js +2 -0
  223. package/cjs/staking/util.js +53 -0
  224. package/cjs/staking/validators.js +71 -0
  225. package/cjs/staking/waitingInfo.js +32 -0
  226. package/cjs/technicalCommittee/index.js +74 -0
  227. package/cjs/teyrchains/index.js +5 -0
  228. package/{build/parachains → cjs/teyrchains}/info.d.ts +7 -7
  229. package/cjs/teyrchains/info.js +75 -0
  230. package/cjs/teyrchains/overview.d.ts +15 -0
  231. package/cjs/teyrchains/overview.js +39 -0
  232. package/{build/parachains → cjs/teyrchains}/types.d.ts +6 -6
  233. package/cjs/teyrchains/types.js +2 -0
  234. package/cjs/teyrchains/util.js +8 -0
  235. package/cjs/treasury/index.js +4 -0
  236. package/cjs/treasury/proposals.js +71 -0
  237. package/cjs/tx/constants.js +8 -0
  238. package/cjs/tx/events.js +24 -0
  239. package/cjs/tx/extrinsicInfo.js +87 -0
  240. package/cjs/tx/index.js +6 -0
  241. package/cjs/tx/signingInfo.js +81 -0
  242. package/cjs/type/HeaderExtended.js +23 -0
  243. package/cjs/type/SignedBlockExtended.js +60 -0
  244. package/cjs/type/index.js +7 -0
  245. package/cjs/type/types.js +2 -0
  246. package/cjs/type/util.js +36 -0
  247. package/{build → cjs}/types.d.ts +4 -4
  248. package/cjs/types.js +15 -0
  249. package/cjs/util/approvalFlagsToBools.js +19 -0
  250. package/cjs/util/blockNumber.js +9 -0
  251. package/cjs/util/cache.js +45 -0
  252. package/cjs/util/cacheImpl.js +26 -0
  253. package/cjs/util/first.js +12 -0
  254. package/cjs/util/index.js +13 -0
  255. package/cjs/util/lazy.js +7 -0
  256. package/cjs/util/types.js +2 -0
  257. package/collective/helpers.d.ts +6 -0
  258. package/collective/helpers.js +18 -0
  259. package/collective/index.d.ts +3 -0
  260. package/collective/index.js +3 -0
  261. package/collective/members.d.ts +2 -0
  262. package/collective/members.js +2 -0
  263. package/collective/prime.d.ts +2 -0
  264. package/collective/prime.js +8 -0
  265. package/collective/proposals.d.ts +6 -0
  266. package/collective/proposals.js +38 -0
  267. package/{src/collective/types.ts → collective/types.d.ts} +0 -11
  268. package/collective/types.js +1 -0
  269. package/contracts/fees.d.ts +14 -0
  270. package/contracts/fees.js +45 -0
  271. package/contracts/index.d.ts +1 -0
  272. package/contracts/index.js +1 -0
  273. package/council/index.d.ts +72 -0
  274. package/{src/council/index.ts → council/index.js} +0 -6
  275. package/{src/council/types.ts → council/types.d.ts} +2 -7
  276. package/council/types.js +1 -0
  277. package/council/votes.d.ts +11 -0
  278. package/council/votes.js +56 -0
  279. package/council/votesOf.d.ts +16 -0
  280. package/council/votesOf.js +18 -0
  281. package/crowdloan/childKey.d.ts +15 -0
  282. package/crowdloan/childKey.js +23 -0
  283. package/crowdloan/contributions.d.ts +14 -0
  284. package/crowdloan/contributions.js +80 -0
  285. package/crowdloan/index.d.ts +3 -0
  286. package/crowdloan/index.js +3 -0
  287. package/crowdloan/ownContributions.d.ts +15 -0
  288. package/crowdloan/ownContributions.js +45 -0
  289. package/{src/crowdloan/types.ts → crowdloan/types.d.ts} +2 -7
  290. package/crowdloan/types.js +1 -0
  291. package/crowdloan/util.d.ts +10 -0
  292. package/crowdloan/util.js +17 -0
  293. package/democracy/dispatchQueue.d.ts +12 -0
  294. package/democracy/dispatchQueue.js +87 -0
  295. package/{src/democracy/index.ts → democracy/index.d.ts} +0 -3
  296. package/democracy/index.js +11 -0
  297. package/democracy/locks.d.ts +14 -0
  298. package/democracy/locks.js +62 -0
  299. package/democracy/nextExternal.d.ts +12 -0
  300. package/democracy/nextExternal.js +28 -0
  301. package/democracy/preimages.d.ts +24 -0
  302. package/democracy/preimages.js +113 -0
  303. package/democracy/proposals.d.ts +12 -0
  304. package/democracy/proposals.js +43 -0
  305. package/democracy/referendumIds.d.ts +12 -0
  306. package/democracy/referendumIds.js +21 -0
  307. package/democracy/referendums.d.ts +11 -0
  308. package/democracy/referendums.js +19 -0
  309. package/democracy/referendumsActive.d.ts +12 -0
  310. package/democracy/referendumsActive.js +16 -0
  311. package/democracy/referendumsFinished.d.ts +15 -0
  312. package/democracy/referendumsFinished.js +17 -0
  313. package/democracy/referendumsInfo.d.ts +23 -0
  314. package/democracy/referendumsInfo.js +108 -0
  315. package/democracy/sqrtElectorate.d.ts +13 -0
  316. package/democracy/sqrtElectorate.js +15 -0
  317. package/democracy/types.d.ts +70 -0
  318. package/democracy/types.js +1 -0
  319. package/democracy/util.d.ts +18 -0
  320. package/democracy/util.js +129 -0
  321. package/derive.d.ts +52 -0
  322. package/{src/derive.ts → derive.js} +2 -22
  323. package/elections/index.d.ts +1 -0
  324. package/elections/index.js +1 -0
  325. package/elections/info.d.ts +14 -0
  326. package/elections/info.js +90 -0
  327. package/elections/types.d.ts +18 -0
  328. package/elections/types.js +1 -0
  329. package/imOnline/index.d.ts +1 -0
  330. package/imOnline/index.js +1 -0
  331. package/imOnline/receivedHeartbeats.d.ts +13 -0
  332. package/imOnline/receivedHeartbeats.js +39 -0
  333. package/index.d.ts +2 -0
  334. package/index.js +2 -0
  335. package/membership/index.d.ts +70 -0
  336. package/{src/membership/index.ts → membership/index.js} +0 -5
  337. package/package.json +2066 -19
  338. package/packageDetect.d.ts +1 -0
  339. package/packageDetect.js +3 -0
  340. package/packageInfo.d.ts +6 -0
  341. package/packageInfo.js +1 -0
  342. package/session/index.d.ts +3 -0
  343. package/session/index.js +3 -0
  344. package/session/indexes.d.ts +15 -0
  345. package/session/indexes.js +65 -0
  346. package/session/info.d.ts +13 -0
  347. package/{src/session/info.ts → session/info.js} +7 -21
  348. package/session/progress.d.ts +47 -0
  349. package/session/progress.js +89 -0
  350. package/session/types.d.ts +19 -0
  351. package/session/types.js +1 -0
  352. package/society/candidates.d.ts +12 -0
  353. package/society/candidates.js +39 -0
  354. package/{src/society/index.ts → society/index.d.ts} +0 -3
  355. package/society/index.js +4 -0
  356. package/society/info.d.ts +12 -0
  357. package/society/info.js +33 -0
  358. package/society/member.d.ts +14 -0
  359. package/society/member.js +15 -0
  360. package/society/members.d.ts +14 -0
  361. package/society/members.js +66 -0
  362. package/society/types.d.ts +27 -0
  363. package/society/types.js +1 -0
  364. package/staking/account.d.ts +31 -0
  365. package/staking/account.js +76 -0
  366. package/staking/cache.d.ts +12 -0
  367. package/staking/cache.js +32 -0
  368. package/staking/currentPoints.d.ts +13 -0
  369. package/staking/currentPoints.js +14 -0
  370. package/staking/electedInfo.d.ts +23 -0
  371. package/staking/electedInfo.js +34 -0
  372. package/staking/erasExposure.d.ts +30 -0
  373. package/staking/erasExposure.js +72 -0
  374. package/staking/erasHistoric.d.ts +8 -0
  375. package/staking/erasHistoric.js +28 -0
  376. package/staking/erasPoints.d.ts +18 -0
  377. package/staking/erasPoints.js +47 -0
  378. package/staking/erasPrefs.d.ts +27 -0
  379. package/staking/erasPrefs.js +43 -0
  380. package/staking/erasRewards.d.ts +14 -0
  381. package/staking/erasRewards.js +34 -0
  382. package/staking/erasSlashes.d.ts +26 -0
  383. package/staking/erasSlashes.js +49 -0
  384. package/{src/staking/index.ts → staking/index.d.ts} +0 -3
  385. package/staking/index.js +22 -0
  386. package/staking/keys.d.ts +35 -0
  387. package/staking/keys.js +57 -0
  388. package/staking/overview.d.ts +19 -0
  389. package/staking/overview.js +28 -0
  390. package/staking/ownExposure.d.ts +37 -0
  391. package/staking/ownExposure.js +60 -0
  392. package/staking/ownSlashes.d.ts +35 -0
  393. package/staking/ownSlashes.js +47 -0
  394. package/staking/query.d.ts +31 -0
  395. package/staking/query.js +172 -0
  396. package/staking/stakerExposure.d.ts +33 -0
  397. package/staking/stakerExposure.js +51 -0
  398. package/staking/stakerPoints.d.ts +22 -0
  399. package/staking/stakerPoints.js +31 -0
  400. package/staking/stakerPrefs.d.ts +24 -0
  401. package/staking/stakerPrefs.js +29 -0
  402. package/staking/stakerRewards.d.ts +49 -0
  403. package/staking/stakerRewards.js +215 -0
  404. package/staking/stakerSlashes.d.ts +22 -0
  405. package/staking/stakerSlashes.js +30 -0
  406. package/staking/stashes.d.ts +16 -0
  407. package/staking/stashes.js +35 -0
  408. package/staking/types.d.ts +139 -0
  409. package/staking/types.js +1 -0
  410. package/staking/util.d.ts +14 -0
  411. package/staking/util.js +46 -0
  412. package/staking/validators.d.ts +33 -0
  413. package/{src/staking/validators.ts → staking/validators.js} +25 -40
  414. package/staking/waitingInfo.d.ts +16 -0
  415. package/{src/staking/waitingInfo.ts → staking/waitingInfo.js} +8 -24
  416. package/technicalCommittee/index.d.ts +70 -0
  417. package/{src/technicalCommittee/index.ts → technicalCommittee/index.js} +0 -5
  418. package/teyrchains/index.d.ts +2 -0
  419. package/teyrchains/index.js +2 -0
  420. package/teyrchains/info.d.ts +19 -0
  421. package/teyrchains/info.js +72 -0
  422. package/teyrchains/overview.d.ts +15 -0
  423. package/teyrchains/overview.js +36 -0
  424. package/teyrchains/types.d.ts +38 -0
  425. package/teyrchains/types.js +1 -0
  426. package/teyrchains/util.d.ts +3 -0
  427. package/teyrchains/util.js +5 -0
  428. package/treasury/index.d.ts +1 -0
  429. package/treasury/index.js +1 -0
  430. package/treasury/proposals.d.ts +12 -0
  431. package/treasury/proposals.js +68 -0
  432. package/tx/constants.d.ts +5 -0
  433. package/{src/tx/constants.ts → tx/constants.js} +0 -8
  434. package/tx/events.d.ts +22 -0
  435. package/tx/events.js +21 -0
  436. package/tx/extrinsicInfo.d.ts +61 -0
  437. package/tx/extrinsicInfo.js +83 -0
  438. package/tx/index.d.ts +3 -0
  439. package/tx/index.js +3 -0
  440. package/tx/signingInfo.d.ts +25 -0
  441. package/tx/signingInfo.js +78 -0
  442. package/type/HeaderExtended.d.ts +4 -0
  443. package/type/HeaderExtended.js +20 -0
  444. package/type/SignedBlockExtended.d.ts +4 -0
  445. package/type/SignedBlockExtended.js +57 -0
  446. package/{src/type/index.ts → type/index.d.ts} +0 -3
  447. package/type/index.js +2 -0
  448. package/type/types.d.ts +15 -0
  449. package/type/types.js +1 -0
  450. package/type/util.d.ts +2 -0
  451. package/type/util.js +33 -0
  452. package/{src/types.ts → types.d.ts} +39 -57
  453. package/types.js +12 -0
  454. package/util/approvalFlagsToBools.d.ts +4 -0
  455. package/util/approvalFlagsToBools.js +16 -0
  456. package/util/blockNumber.d.ts +7 -0
  457. package/util/blockNumber.js +6 -0
  458. package/util/cache.d.ts +4 -0
  459. package/util/cache.js +42 -0
  460. package/util/cacheImpl.d.ts +3 -0
  461. package/util/cacheImpl.js +23 -0
  462. package/util/first.d.ts +4 -0
  463. package/util/first.js +8 -0
  464. package/{src/util/index.ts → util/index.d.ts} +0 -6
  465. package/util/index.js +7 -0
  466. package/util/lazy.d.ts +4 -0
  467. package/util/lazy.js +4 -0
  468. package/util/types.d.ts +6 -0
  469. package/util/types.js +1 -0
  470. package/build/bagsList/listNodes.d.ts +0 -9
  471. package/build/parachains/overview.d.ts +0 -15
  472. package/src/accounts/accountId.ts +0 -44
  473. package/src/accounts/flags.ts +0 -90
  474. package/src/accounts/idAndIndex.ts +0 -51
  475. package/src/accounts/idToIndex.ts +0 -31
  476. package/src/accounts/identity.ts +0 -235
  477. package/src/accounts/indexToId.ts +0 -33
  478. package/src/accounts/indexes.ts +0 -56
  479. package/src/accounts/info.ts +0 -58
  480. package/src/accounts/types.ts +0 -48
  481. package/src/augment.ts +0 -4
  482. package/src/bagsList/get.ts +0 -79
  483. package/src/bagsList/getExpanded.ts +0 -41
  484. package/src/bagsList/index.ts +0 -6
  485. package/src/bagsList/listNodes.ts +0 -50
  486. package/src/bagsList/types.ts +0 -18
  487. package/src/bagsList/util.ts +0 -14
  488. package/src/balances/account.ts +0 -210
  489. package/src/balances/all.ts +0 -246
  490. package/src/balances/types.ts +0 -79
  491. package/src/balances/votingBalances.ts +0 -33
  492. package/src/bounties/bounties.spec.ts +0 -162
  493. package/src/bounties/bounties.ts +0 -76
  494. package/src/bounties/helpers/filterBountyProposals.ts +0 -13
  495. package/src/bounties/index.ts +0 -4
  496. package/src/bundle.ts +0 -140
  497. package/src/chain/bestNumberLag.ts +0 -33
  498. package/src/chain/getBlock.ts +0 -43
  499. package/src/chain/getHeader.ts +0 -37
  500. package/src/chain/subscribeFinalizedBlocks.ts +0 -30
  501. package/src/chain/subscribeFinalizedHeads.ts +0 -62
  502. package/src/chain/subscribeNewBlocks.ts +0 -30
  503. package/src/chain/subscribeNewHeads.ts +0 -38
  504. package/src/chain/util.ts +0 -112
  505. package/src/checkTypes.manual.ts +0 -8
  506. package/src/collective/helpers.ts +0 -36
  507. package/src/collective/index.ts +0 -6
  508. package/src/collective/members.ts +0 -8
  509. package/src/collective/prime.ts +0 -25
  510. package/src/collective/proposals.ts +0 -73
  511. package/src/contracts/fees.ts +0 -61
  512. package/src/contracts/index.ts +0 -4
  513. package/src/council/votes.ts +0 -97
  514. package/src/council/votesOf.ts +0 -35
  515. package/src/crowdloan/childKey.ts +0 -57
  516. package/src/crowdloan/contributions.ts +0 -142
  517. package/src/crowdloan/index.ts +0 -6
  518. package/src/crowdloan/ownContributions.ts +0 -81
  519. package/src/crowdloan/util.ts +0 -33
  520. package/src/democracy/dispatchQueue.ts +0 -158
  521. package/src/democracy/locks.ts +0 -114
  522. package/src/democracy/nextExternal.ts +0 -49
  523. package/src/democracy/preimages.ts +0 -171
  524. package/src/democracy/proposals.ts +0 -81
  525. package/src/democracy/referendumIds.ts +0 -37
  526. package/src/democracy/referendums.ts +0 -39
  527. package/src/democracy/referendumsActive.ts +0 -30
  528. package/src/democracy/referendumsFinished.ts +0 -37
  529. package/src/democracy/referendumsInfo.ts +0 -181
  530. package/src/democracy/sqrtElectorate.ts +0 -29
  531. package/src/democracy/types.ts +0 -84
  532. package/src/democracy/util.ts +0 -166
  533. package/src/elections/index.ts +0 -4
  534. package/src/elections/info.ts +0 -126
  535. package/src/elections/types.ts +0 -22
  536. package/src/imOnline/index.ts +0 -4
  537. package/src/imOnline/receivedHeartbeats.ts +0 -65
  538. package/src/index.spec.ts +0 -103
  539. package/src/index.ts +0 -6
  540. package/src/mod.ts +0 -4
  541. package/src/packageDetect.ts +0 -11
  542. package/src/packageInfo.ts +0 -6
  543. package/src/parachains/index.ts +0 -5
  544. package/src/parachains/info.ts +0 -111
  545. package/src/parachains/overview.ts +0 -63
  546. package/src/parachains/types.ts +0 -46
  547. package/src/parachains/util.ts +0 -11
  548. package/src/session/index.ts +0 -6
  549. package/src/session/indexes.ts +0 -90
  550. package/src/session/progress.ts +0 -130
  551. package/src/session/types.ts +0 -25
  552. package/src/society/candidates.ts +0 -71
  553. package/src/society/info.ts +0 -50
  554. package/src/society/member.ts +0 -28
  555. package/src/society/members.ts +0 -107
  556. package/src/society/types.ts +0 -33
  557. package/src/staking/account.ts +0 -112
  558. package/src/staking/cache.ts +0 -48
  559. package/src/staking/currentPoints.ts +0 -28
  560. package/src/staking/electedInfo.ts +0 -54
  561. package/src/staking/erasExposure.ts +0 -105
  562. package/src/staking/erasHistoric.ts +0 -47
  563. package/src/staking/erasPoints.ts +0 -67
  564. package/src/staking/erasPrefs.ts +0 -63
  565. package/src/staking/erasRewards.ts +0 -52
  566. package/src/staking/erasSlashes.ts +0 -69
  567. package/src/staking/keys.ts +0 -86
  568. package/src/staking/overview.ts +0 -42
  569. package/src/staking/ownExposure.ts +0 -83
  570. package/src/staking/ownSlashes.ts +0 -68
  571. package/src/staking/query.ts +0 -230
  572. package/src/staking/stakerExposure.ts +0 -78
  573. package/src/staking/stakerPoints.ts +0 -46
  574. package/src/staking/stakerPrefs.ts +0 -45
  575. package/src/staking/stakerRewards.ts +0 -298
  576. package/src/staking/stakerSlashes.ts +0 -45
  577. package/src/staking/stashes.ts +0 -55
  578. package/src/staking/types.ts +0 -174
  579. package/src/staking/util.ts +0 -94
  580. package/src/test/bountyFactory.ts +0 -39
  581. package/src/test/bytesFactory.ts +0 -15
  582. package/src/test/helpers.ts +0 -23
  583. package/src/test/proposalFactory.ts +0 -25
  584. package/src/treasury/index.ts +0 -4
  585. package/src/treasury/proposals.ts +0 -109
  586. package/src/tx/events.ts +0 -43
  587. package/src/tx/extrinsicInfo.ts +0 -123
  588. package/src/tx/index.ts +0 -6
  589. package/src/tx/signingInfo.ts +0 -129
  590. package/src/type/HeaderExtended.ts +0 -33
  591. package/src/type/SignedBlockExtended.ts +0 -75
  592. package/src/type/types.ts +0 -21
  593. package/src/type/util.ts +0 -45
  594. package/src/util/approvalFlagToBools.spec.ts +0 -37
  595. package/src/util/approvalFlagsToBools.ts +0 -26
  596. package/src/util/blockNumber.ts +0 -15
  597. package/src/util/cache.ts +0 -65
  598. package/src/util/cacheImpl.ts +0 -30
  599. package/src/util/first.ts +0 -20
  600. package/src/util/lazy.ts +0 -16
  601. package/src/util/types.ts +0 -9
  602. package/tsconfig.build.json +0 -21
  603. package/tsconfig.build.tsbuildinfo +0 -1
  604. package/tsconfig.spec.json +0 -27
  605. /package/{build/accounts → accounts}/accountId.d.ts +0 -0
  606. /package/{build/accounts → accounts}/idAndIndex.d.ts +0 -0
  607. /package/{build/accounts → accounts}/idToIndex.d.ts +0 -0
  608. /package/{build/accounts → accounts}/index.d.ts +0 -0
  609. /package/{build/accounts → accounts}/indexToId.d.ts +0 -0
  610. /package/{build/accounts → accounts}/indexes.d.ts +0 -0
  611. /package/{build/accounts → accounts}/info.d.ts +0 -0
  612. /package/{build/accounts → accounts}/types.d.ts +0 -0
  613. /package/{build/packageDetect.d.ts → accounts/types.js} +0 -0
  614. /package/{build/alliance → alliance}/index.d.ts +0 -0
  615. /package/{build/augment.d.ts → augment.d.ts} +0 -0
  616. /package/{build/bagsList → bagsList}/get.d.ts +0 -0
  617. /package/{build/bagsList → bagsList}/getExpanded.d.ts +0 -0
  618. /package/{build/bagsList → bagsList}/index.d.ts +0 -0
  619. /package/{build/bagsList → bagsList}/util.d.ts +0 -0
  620. /package/{build/balances → balances}/account.d.ts +0 -0
  621. /package/{build/balances → balances}/all.d.ts +0 -0
  622. /package/{build/balances → balances}/index.d.ts +0 -0
  623. /package/{build/balances → balances}/votingBalances.d.ts +0 -0
  624. /package/{build/bounties → bounties}/bounties.d.ts +0 -0
  625. /package/{build/bounties → bounties}/helpers/filterBountyProposals.d.ts +0 -0
  626. /package/{build/bounties → bounties}/index.d.ts +0 -0
  627. /package/{build/bundle.d.ts → bundle.d.ts} +0 -0
  628. /package/{build/chain → chain}/bestNumber.d.ts +0 -0
  629. /package/{build/chain → chain}/bestNumberFinalized.d.ts +0 -0
  630. /package/{build/chain → chain}/bestNumberLag.d.ts +0 -0
  631. /package/{build/chain → chain}/getBlock.d.ts +0 -0
  632. /package/{build/chain → chain}/getBlockByNumber.d.ts +0 -0
  633. /package/{build/chain → chain}/getHeader.d.ts +0 -0
  634. /package/{build/chain → chain}/index.d.ts +0 -0
  635. /package/{build/chain → chain}/subscribeFinalizedBlocks.d.ts +0 -0
  636. /package/{build/chain → chain}/subscribeFinalizedHeads.d.ts +0 -0
  637. /package/{build/chain → chain}/subscribeNewBlocks.d.ts +0 -0
  638. /package/{build/chain → chain}/subscribeNewHeads.d.ts +0 -0
  639. /package/{build/chain → chain}/util.d.ts +0 -0
  640. /package/{build → cjs}/collective/helpers.d.ts +0 -0
  641. /package/{build → cjs}/collective/index.d.ts +0 -0
  642. /package/{build → cjs}/collective/members.d.ts +0 -0
  643. /package/{build → cjs}/collective/prime.d.ts +0 -0
  644. /package/{build → cjs}/collective/proposals.d.ts +0 -0
  645. /package/{build → cjs}/collective/types.d.ts +0 -0
  646. /package/{build → cjs}/contracts/index.d.ts +0 -0
  647. /package/{build → cjs}/council/index.d.ts +0 -0
  648. /package/{build → cjs}/council/types.d.ts +0 -0
  649. /package/{build → cjs}/council/votes.d.ts +0 -0
  650. /package/{build → cjs}/council/votesOf.d.ts +0 -0
  651. /package/{build → cjs}/crowdloan/index.d.ts +0 -0
  652. /package/{build → cjs}/crowdloan/types.d.ts +0 -0
  653. /package/{build → cjs}/democracy/dispatchQueue.d.ts +0 -0
  654. /package/{build → cjs}/democracy/index.d.ts +0 -0
  655. /package/{build → cjs}/democracy/locks.d.ts +0 -0
  656. /package/{build → cjs}/democracy/nextExternal.d.ts +0 -0
  657. /package/{build → cjs}/democracy/proposals.d.ts +0 -0
  658. /package/{build → cjs}/democracy/referendumIds.d.ts +0 -0
  659. /package/{build → cjs}/democracy/referendums.d.ts +0 -0
  660. /package/{build → cjs}/democracy/referendumsActive.d.ts +0 -0
  661. /package/{build → cjs}/democracy/sqrtElectorate.d.ts +0 -0
  662. /package/{build → cjs}/elections/index.d.ts +0 -0
  663. /package/{build → cjs}/elections/info.d.ts +0 -0
  664. /package/{build → cjs}/elections/types.d.ts +0 -0
  665. /package/{build → cjs}/imOnline/index.d.ts +0 -0
  666. /package/{build → cjs}/imOnline/receivedHeartbeats.d.ts +0 -0
  667. /package/{build → cjs}/index.d.ts +0 -0
  668. /package/{build → cjs}/membership/index.d.ts +0 -0
  669. /package/{build → cjs}/packageInfo.d.ts +0 -0
  670. /package/{build → cjs}/session/index.d.ts +0 -0
  671. /package/{build → cjs}/session/indexes.d.ts +0 -0
  672. /package/{build → cjs}/session/info.d.ts +0 -0
  673. /package/{build → cjs}/session/progress.d.ts +0 -0
  674. /package/{build → cjs}/session/types.d.ts +0 -0
  675. /package/{build → cjs}/society/candidates.d.ts +0 -0
  676. /package/{build → cjs}/society/index.d.ts +0 -0
  677. /package/{build → cjs}/society/info.d.ts +0 -0
  678. /package/{build → cjs}/society/member.d.ts +0 -0
  679. /package/{build → cjs}/society/members.d.ts +0 -0
  680. /package/{build → cjs}/staking/cache.d.ts +0 -0
  681. /package/{build → cjs}/staking/electedInfo.d.ts +0 -0
  682. /package/{build → cjs}/staking/erasExposure.d.ts +0 -0
  683. /package/{build → cjs}/staking/erasHistoric.d.ts +0 -0
  684. /package/{build → cjs}/staking/erasPoints.d.ts +0 -0
  685. /package/{build → cjs}/staking/erasPrefs.d.ts +0 -0
  686. /package/{build → cjs}/staking/erasRewards.d.ts +0 -0
  687. /package/{build → cjs}/staking/erasSlashes.d.ts +0 -0
  688. /package/{build → cjs}/staking/index.d.ts +0 -0
  689. /package/{build → cjs}/staking/overview.d.ts +0 -0
  690. /package/{build → cjs}/staking/stakerPoints.d.ts +0 -0
  691. /package/{build → cjs}/staking/stakerPrefs.d.ts +0 -0
  692. /package/{build → cjs}/staking/stakerSlashes.d.ts +0 -0
  693. /package/{build → cjs}/staking/stashes.d.ts +0 -0
  694. /package/{build → cjs}/staking/util.d.ts +0 -0
  695. /package/{build → cjs}/staking/validators.d.ts +0 -0
  696. /package/{build → cjs}/staking/waitingInfo.d.ts +0 -0
  697. /package/{build → cjs}/technicalCommittee/index.d.ts +0 -0
  698. /package/{build/parachains → cjs/teyrchains}/index.d.ts +0 -0
  699. /package/{build/parachains → cjs/teyrchains}/util.d.ts +0 -0
  700. /package/{build → cjs}/treasury/index.d.ts +0 -0
  701. /package/{build → cjs}/treasury/proposals.d.ts +0 -0
  702. /package/{build → cjs}/tx/constants.d.ts +0 -0
  703. /package/{build → cjs}/tx/events.d.ts +0 -0
  704. /package/{build → cjs}/tx/extrinsicInfo.d.ts +0 -0
  705. /package/{build → cjs}/tx/index.d.ts +0 -0
  706. /package/{build → cjs}/tx/signingInfo.d.ts +0 -0
  707. /package/{build → cjs}/type/HeaderExtended.d.ts +0 -0
  708. /package/{build → cjs}/type/SignedBlockExtended.d.ts +0 -0
  709. /package/{build → cjs}/type/index.d.ts +0 -0
  710. /package/{build → cjs}/type/types.d.ts +0 -0
  711. /package/{build → cjs}/type/util.d.ts +0 -0
  712. /package/{build → cjs}/util/approvalFlagsToBools.d.ts +0 -0
  713. /package/{build → cjs}/util/blockNumber.d.ts +0 -0
  714. /package/{build → cjs}/util/cache.d.ts +0 -0
  715. /package/{build → cjs}/util/cacheImpl.d.ts +0 -0
  716. /package/{build → cjs}/util/first.d.ts +0 -0
  717. /package/{build → cjs}/util/index.d.ts +0 -0
  718. /package/{build → cjs}/util/lazy.d.ts +0 -0
  719. /package/{build → cjs}/util/types.d.ts +0 -0
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.expand = expand;
4
+ exports.getExpanded = getExpanded;
5
+ const rxjs_1 = require("rxjs");
6
+ const util_1 = require("@pezkuwi/util");
7
+ const index_js_1 = require("../util/index.js");
8
+ /**
9
+ * @name expand
10
+ * @description Expands a given bag by retrieving all its nodes (accounts contained within the bag).
11
+ * @param {Bag} bag The bag to be expanded.
12
+ */
13
+ function expand(instanceId, api) {
14
+ return (0, index_js_1.memo)(instanceId, (bag) => api.derive.bagsList.listNodes(bag.bag).pipe((0, rxjs_1.map)((nodes) => (0, util_1.objectSpread)({ nodes }, bag))));
15
+ }
16
+ /**
17
+ * @name getExpanded
18
+ * @description Retrieves and expands a specific bag from the BagsList pallet.
19
+ * @param {BN | number} id The id of the bag to expand.
20
+ */
21
+ function getExpanded(instanceId, api) {
22
+ return (0, index_js_1.memo)(instanceId, (id) => api.derive.bagsList.get(id).pipe((0, rxjs_1.switchMap)((bag) => api.derive.bagsList.expand(bag))));
23
+ }
@@ -0,0 +1,3 @@
1
+ export * from './get.js';
2
+ export * from './getExpanded.js';
3
+ export * from './listNodes.js';
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./get.js"), exports);
5
+ tslib_1.__exportStar(require("./getExpanded.js"), exports);
6
+ tslib_1.__exportStar(require("./listNodes.js"), exports);
@@ -0,0 +1,9 @@
1
+ import type { Observable } from 'rxjs';
2
+ import type { PezpalletBagsListListBag, PezpalletBagsListListNode } from '@pezkuwi/types/lookup';
3
+ import type { DeriveApi } from '../types.js';
4
+ /**
5
+ * @name listNodes
6
+ * @param {(PezpalletBagsListListBag | null)} bag A reference to a specific bag in the BagsList pallet.
7
+ * @description Retrieves the list of nodes (accounts) contained in a specific bag within the BagsList pallet.
8
+ */
9
+ export declare function listNodes(instanceId: string, api: DeriveApi): (bag: PezpalletBagsListListBag | null) => Observable<PezpalletBagsListListNode[]>;
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.listNodes = listNodes;
4
+ const rxjs_1 = require("rxjs");
5
+ const util_1 = require("@pezkuwi/util");
6
+ const index_js_1 = require("../util/index.js");
7
+ const util_js_1 = require("./util.js");
8
+ function traverseLinks(api, head) {
9
+ const subject = new rxjs_1.BehaviorSubject(head);
10
+ const query = (0, util_js_1.getQueryInterface)(api);
11
+ return subject.pipe((0, rxjs_1.switchMap)((account) => query.listNodes(account)), (0, rxjs_1.tap)((node) => {
12
+ (0, util_1.nextTick)(() => {
13
+ node.isSome && node.value.next.isSome
14
+ ? subject.next(node.unwrap().next.unwrap())
15
+ : subject.complete();
16
+ });
17
+ }), (0, rxjs_1.toArray)(), // toArray since we want to startSubject to be completed
18
+ (0, rxjs_1.map)((all) => all.map((o) => o.unwrap())));
19
+ }
20
+ /**
21
+ * @name listNodes
22
+ * @param {(PezpalletBagsListListBag | null)} bag A reference to a specific bag in the BagsList pallet.
23
+ * @description Retrieves the list of nodes (accounts) contained in a specific bag within the BagsList pallet.
24
+ */
25
+ function listNodes(instanceId, api) {
26
+ return (0, index_js_1.memo)(instanceId, (bag) => bag && bag.head.isSome
27
+ ? traverseLinks(api, bag.head.unwrap())
28
+ : (0, rxjs_1.of)([]));
29
+ }
@@ -0,0 +1,13 @@
1
+ import type { PezpalletBagsListListBag, PezpalletBagsListListNode } from '@pezkuwi/types/lookup';
2
+ import type { BN } from '@pezkuwi/util';
3
+ export interface Bag {
4
+ bag: PezpalletBagsListListBag | null;
5
+ bagUpper: BN;
6
+ bagLower: BN;
7
+ id: BN;
8
+ index: number;
9
+ key: string;
10
+ }
11
+ export interface BagExpanded extends Bag {
12
+ nodes: PezpalletBagsListListNode[];
13
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,2 @@
1
+ import type { DeriveApi } from '../types.js';
2
+ export declare function getQueryInterface(api: DeriveApi): DeriveApi['query']['voterList'];
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getQueryInterface = getQueryInterface;
4
+ function getQueryInterface(api) {
5
+ return (
6
+ // latest bizinikiwi & pezkuwi
7
+ api.query.voterList ||
8
+ // previous bizinikiwi
9
+ api.query['voterBagsList'] ||
10
+ api.query['bagsList']);
11
+ }
@@ -0,0 +1,17 @@
1
+ import type { Observable } from 'rxjs';
2
+ import type { AccountId, AccountIndex, Address } from '@pezkuwi/types/interfaces';
3
+ import type { DeriveApi, DeriveBalancesAccount } from '../types.js';
4
+ /**
5
+ * @name account
6
+ * @description Retrieves the essential balance details for an account, such as free balance and account nonce.
7
+ * @param {( AccountIndex | AccountId | Address | string )} address An accountsId in different formats.
8
+ * @example
9
+ * ```javascript
10
+ * const ALICE = 'F7Hs';
11
+ *
12
+ * api.derive.balances.all(ALICE, ({ accountId, lockedBalance }) => {
13
+ * console.log(`The account ${accountId} has a locked balance ${lockedBalance} units.`);
14
+ * });
15
+ * ```
16
+ */
17
+ export declare function account(instanceId: string, api: DeriveApi): (address: AccountIndex | AccountId | Address | string) => Observable<DeriveBalancesAccount>;
@@ -0,0 +1,152 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.account = account;
4
+ const rxjs_1 = require("rxjs");
5
+ const util_1 = require("@pezkuwi/util");
6
+ const index_js_1 = require("../util/index.js");
7
+ function zeroBalance(api) {
8
+ return api.registry.createType('Balance');
9
+ }
10
+ function getBalance(api, [freeBalance, reservedBalance, frozenFeeOrFrozen, frozenMiscOrFlags], accType) {
11
+ const votingBalance = api.registry.createType('Balance', freeBalance.toBn());
12
+ if (accType.isFrameAccountData) {
13
+ return {
14
+ frameSystemAccountInfo: {
15
+ flags: frozenMiscOrFlags,
16
+ frozen: frozenFeeOrFrozen
17
+ },
18
+ freeBalance,
19
+ frozenFee: api.registry.createType('Balance', 0),
20
+ frozenMisc: api.registry.createType('Balance', 0),
21
+ reservedBalance,
22
+ votingBalance
23
+ };
24
+ }
25
+ return {
26
+ freeBalance,
27
+ frozenFee: frozenFeeOrFrozen,
28
+ frozenMisc: frozenMiscOrFlags,
29
+ reservedBalance,
30
+ votingBalance
31
+ };
32
+ }
33
+ function calcBalances(api, [accountId, [accountNonce, [primary, ...additional], accType]]) {
34
+ return (0, util_1.objectSpread)({
35
+ accountId,
36
+ accountNonce,
37
+ additional: additional.map((b) => getBalance(api, b, accType))
38
+ }, getBalance(api, primary, accType));
39
+ }
40
+ function queryBalancesFree(api, accountId) {
41
+ return (0, rxjs_1.combineLatest)([
42
+ api.query.balances['freeBalance'](accountId),
43
+ api.query.balances['reservedBalance'](accountId),
44
+ api.query.system['accountNonce'](accountId)
45
+ ]).pipe((0, rxjs_1.map)(([freeBalance, reservedBalance, accountNonce]) => [
46
+ accountNonce,
47
+ [[freeBalance, reservedBalance, zeroBalance(api), zeroBalance(api)]],
48
+ { isFrameAccountData: false }
49
+ ]));
50
+ }
51
+ function queryNonceOnly(api, accountId) {
52
+ const fill = (nonce) => [
53
+ nonce,
54
+ [[zeroBalance(api), zeroBalance(api), zeroBalance(api), zeroBalance(api)]],
55
+ { isFrameAccountData: false }
56
+ ];
57
+ return (0, util_1.isFunction)(api.query.system.account)
58
+ ? api.query.system.account(accountId).pipe((0, rxjs_1.map)(({ nonce }) => fill(nonce)))
59
+ : (0, util_1.isFunction)(api.query.system['accountNonce'])
60
+ ? api.query.system['accountNonce'](accountId).pipe((0, rxjs_1.map)((nonce) => fill(nonce)))
61
+ : (0, rxjs_1.of)(fill(api.registry.createType('Index')));
62
+ }
63
+ function queryBalancesAccount(api, accountId, modules = ['balances']) {
64
+ const balances = modules
65
+ .map((m) => api.derive[m]?.customAccount || api.query[m]?.account)
66
+ .filter((q) => (0, util_1.isFunction)(q));
67
+ const extract = (nonce, data) => [
68
+ nonce,
69
+ data.map(({ feeFrozen, free, miscFrozen, reserved }) => [free, reserved, feeFrozen, miscFrozen]),
70
+ { isFrameAccountData: false }
71
+ ];
72
+ // NOTE this is for the first case where we do have instances specified
73
+ return balances.length
74
+ ? (0, util_1.isFunction)(api.query.system.account)
75
+ ? (0, rxjs_1.combineLatest)([
76
+ api.query.system.account(accountId),
77
+ ...balances.map((c) => c(accountId))
78
+ ]).pipe((0, rxjs_1.map)(([{ nonce }, ...balances]) => extract(nonce, balances)))
79
+ : (0, rxjs_1.combineLatest)([
80
+ api.query.system['accountNonce'](accountId),
81
+ ...balances.map((c) => c(accountId))
82
+ ]).pipe((0, rxjs_1.map)(([nonce, ...balances]) => extract(nonce, balances)))
83
+ : queryNonceOnly(api, accountId);
84
+ }
85
+ function querySystemAccount(api, accountId) {
86
+ // AccountInfo is current, support old, eg. Edgeware
87
+ return api.query.system.account(accountId).pipe((0, rxjs_1.map)((infoOrTuple) => {
88
+ const data = infoOrTuple.nonce
89
+ ? infoOrTuple.data
90
+ : infoOrTuple[1];
91
+ const nonce = infoOrTuple.nonce || infoOrTuple[0];
92
+ if (!data || data.isEmpty) {
93
+ return [
94
+ nonce,
95
+ [[zeroBalance(api), zeroBalance(api), zeroBalance(api), zeroBalance(api)]],
96
+ { isFrameAccountData: false }
97
+ ];
98
+ }
99
+ const isFrameType = !!infoOrTuple.data.frozen;
100
+ if (isFrameType) {
101
+ const { flags, free, frozen, reserved } = data;
102
+ return [
103
+ nonce,
104
+ [[free, reserved, frozen, flags]],
105
+ { isFrameAccountData: true }
106
+ ];
107
+ }
108
+ else {
109
+ const { feeFrozen, free, miscFrozen, reserved } = data;
110
+ return [
111
+ nonce,
112
+ [[free, reserved, feeFrozen, miscFrozen]],
113
+ { isFrameAccountData: false }
114
+ ];
115
+ }
116
+ }));
117
+ }
118
+ /**
119
+ * @name account
120
+ * @description Retrieves the essential balance details for an account, such as free balance and account nonce.
121
+ * @param {( AccountIndex | AccountId | Address | string )} address An accountsId in different formats.
122
+ * @example
123
+ * ```javascript
124
+ * const ALICE = 'F7Hs';
125
+ *
126
+ * api.derive.balances.all(ALICE, ({ accountId, lockedBalance }) => {
127
+ * console.log(`The account ${accountId} has a locked balance ${lockedBalance} units.`);
128
+ * });
129
+ * ```
130
+ */
131
+ function account(instanceId, api) {
132
+ const balanceInstances = api.registry.getModuleInstances(api.runtimeVersion.specName, 'balances');
133
+ const nonDefaultBalances = balanceInstances && balanceInstances[0] !== 'balances';
134
+ return (0, index_js_1.memo)(instanceId, (address) => api.derive.accounts.accountId(address).pipe((0, rxjs_1.switchMap)((accountId) => (accountId
135
+ ? (0, rxjs_1.combineLatest)([
136
+ (0, rxjs_1.of)(accountId),
137
+ nonDefaultBalances
138
+ ? queryBalancesAccount(api, accountId, balanceInstances)
139
+ : (0, util_1.isFunction)(api.query.system?.account)
140
+ ? querySystemAccount(api, accountId)
141
+ : (0, util_1.isFunction)(api.query.balances?.account)
142
+ ? queryBalancesAccount(api, accountId)
143
+ : (0, util_1.isFunction)(api.query.balances?.['freeBalance'])
144
+ ? queryBalancesFree(api, accountId)
145
+ : queryNonceOnly(api, accountId)
146
+ ])
147
+ : (0, rxjs_1.of)([api.registry.createType('AccountId'), [
148
+ api.registry.createType('Index'),
149
+ [[zeroBalance(api), zeroBalance(api), zeroBalance(api), zeroBalance(api)]],
150
+ { isFrameAccountData: false }
151
+ ]]))), (0, rxjs_1.map)((result) => calcBalances(api, result))));
152
+ }
@@ -0,0 +1,20 @@
1
+ import type { Observable } from 'rxjs';
2
+ import type { AccountId } from '@pezkuwi/types/interfaces';
3
+ import type { DeriveApi, DeriveBalancesAll } from '../types.js';
4
+ /**
5
+ * @name all
6
+ * @description Retrieves the complete balance information for an account, including free balance, locked balance, reserved balance, and more.
7
+ * @param {( AccountId | string )} address An accountsId in different formats.
8
+ * @example
9
+ * ```javascript
10
+ * const ALICE = 'F7Hs';
11
+ *
12
+ * api.derive.balances.account(ALICE, (accountInfo) => {
13
+ * console.log(
14
+ * `${accountInfo.accountId} info:`,
15
+ * Object.keys(accountInfo).map((key) => `${key}: ${accountInfo[key]}`)
16
+ * );
17
+ * });
18
+ * ```
19
+ */
20
+ export declare function all(instanceId: string, api: DeriveApi): (address: AccountId | string) => Observable<DeriveBalancesAll>;
@@ -0,0 +1,170 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.all = all;
4
+ const rxjs_1 = require("rxjs");
5
+ const util_1 = require("@pezkuwi/util");
6
+ const index_js_1 = require("../util/index.js");
7
+ const VESTING_ID = '0x76657374696e6720';
8
+ function calcLocked(api, bestNumber, locks) {
9
+ let lockedBalance = api.registry.createType('Balance');
10
+ let lockedBreakdown = [];
11
+ let vestingLocked = api.registry.createType('Balance');
12
+ let allLocked = false;
13
+ if (Array.isArray(locks)) {
14
+ // only get the locks that are valid until passed the current block
15
+ lockedBreakdown = locks.filter(({ until }) => !until || (bestNumber && until.gt(bestNumber)));
16
+ allLocked = lockedBreakdown.some(({ amount }) => amount && amount.isMax());
17
+ vestingLocked = api.registry.createType('Balance', lockedBreakdown.filter(({ id }) => id.eq(VESTING_ID)).reduce((result, { amount }) => result.iadd(amount), new util_1.BN(0)));
18
+ // get the maximum of the locks according to https://github.com/pezkuwichain/bizinikiwi/blob/master/srml/balances/src/lib.rs#L699
19
+ const notAll = lockedBreakdown.filter(({ amount }) => amount && !amount.isMax());
20
+ if (notAll.length) {
21
+ lockedBalance = api.registry.createType('Balance', (0, util_1.bnMax)(...notAll.map(({ amount }) => amount)));
22
+ }
23
+ }
24
+ return { allLocked, lockedBalance, lockedBreakdown, vestingLocked };
25
+ }
26
+ function calcShared(api, bestNumber, data, locks) {
27
+ const { allLocked, lockedBalance, lockedBreakdown, vestingLocked } = calcLocked(api, bestNumber, locks);
28
+ let transferable = null;
29
+ if (data?.frameSystemAccountInfo?.frozen) {
30
+ const { frameSystemAccountInfo, freeBalance, reservedBalance } = data;
31
+ const noFrozenReserved = frameSystemAccountInfo.frozen.isZero() && reservedBalance.isZero();
32
+ const ED = api.consts.balances.existentialDeposit;
33
+ const maybeED = noFrozenReserved ? new util_1.BN(0) : ED;
34
+ const frozenReserveDif = frameSystemAccountInfo.frozen.sub(reservedBalance);
35
+ transferable = api.registry.createType('Balance', allLocked
36
+ ? 0
37
+ : (0, util_1.bnMax)(new util_1.BN(0), freeBalance.sub((0, util_1.bnMax)(maybeED, frozenReserveDif))));
38
+ }
39
+ return (0, util_1.objectSpread)({}, data, {
40
+ availableBalance: api.registry.createType('Balance', allLocked ? 0 : (0, util_1.bnMax)(new util_1.BN(0), data?.freeBalance ? data.freeBalance.sub(lockedBalance) : new util_1.BN(0))),
41
+ lockedBalance,
42
+ lockedBreakdown,
43
+ transferable,
44
+ vestingLocked
45
+ });
46
+ }
47
+ function calcVesting(bestNumber, shared, _vesting) {
48
+ // Calculate the vesting balances,
49
+ // - offset = balance locked at startingBlock
50
+ // - perBlock is the unlock amount
51
+ const vesting = _vesting || [];
52
+ const isVesting = !shared.vestingLocked.isZero();
53
+ const vestedBalances = vesting.map(({ locked, perBlock, startingBlock }) => bestNumber.gt(startingBlock)
54
+ ? (0, util_1.bnMin)(locked, perBlock.mul(bestNumber.sub(startingBlock)))
55
+ : util_1.BN_ZERO);
56
+ const vestedBalance = vestedBalances.reduce((all, value) => all.iadd(value), new util_1.BN(0));
57
+ const vestingTotal = vesting.reduce((all, { locked }) => all.iadd(locked), new util_1.BN(0));
58
+ return {
59
+ isVesting,
60
+ vestedBalance,
61
+ vestedClaimable: isVesting
62
+ ? shared.vestingLocked.sub(vestingTotal.sub(vestedBalance))
63
+ : util_1.BN_ZERO,
64
+ vesting: vesting
65
+ .map(({ locked, perBlock, startingBlock }, index) => ({
66
+ endBlock: locked.div(perBlock).iadd(startingBlock),
67
+ locked,
68
+ perBlock,
69
+ startingBlock,
70
+ vested: vestedBalances[index]
71
+ }))
72
+ .filter(({ locked }) => !locked.isZero()),
73
+ vestingTotal
74
+ };
75
+ }
76
+ function calcBalances(api, result) {
77
+ const [data, [vesting, allLocks, namedReserves], bestNumber] = result;
78
+ const shared = calcShared(api, bestNumber, data, allLocks[0]);
79
+ return (0, util_1.objectSpread)(shared, calcVesting(bestNumber, shared, vesting), {
80
+ accountId: data.accountId,
81
+ accountNonce: data.accountNonce,
82
+ additional: allLocks
83
+ .slice(1)
84
+ .map((l, index) => calcShared(api, bestNumber, data.additional[index], l)),
85
+ namedReserves
86
+ });
87
+ }
88
+ function queryOld(api, accountId) {
89
+ return (0, rxjs_1.combineLatest)([
90
+ api.query.balances.locks(accountId),
91
+ api.query.balances['vesting'](accountId)
92
+ ]).pipe((0, rxjs_1.map)(([locks, optVesting]) => {
93
+ let vestingNew = null;
94
+ if (optVesting.isSome) {
95
+ const { offset: locked, perBlock, startingBlock } = optVesting.unwrap();
96
+ vestingNew = api.registry.createType('VestingInfo', { locked, perBlock, startingBlock });
97
+ }
98
+ return [
99
+ vestingNew
100
+ ? [vestingNew]
101
+ : null,
102
+ [locks],
103
+ []
104
+ ];
105
+ }));
106
+ }
107
+ const isNonNullable = (nullable) => !!nullable;
108
+ function createCalls(calls) {
109
+ return [
110
+ calls.map((c) => !c),
111
+ calls.filter(isNonNullable)
112
+ ];
113
+ }
114
+ function queryCurrent(api, accountId, balanceInstances = ['balances']) {
115
+ const [lockEmpty, lockQueries] = createCalls(balanceInstances.map((m) => api.derive[m]?.customLocks || api.query[m]?.locks));
116
+ const [reserveEmpty, reserveQueries] = createCalls(balanceInstances.map((m) => api.query[m]?.reserves));
117
+ return (0, rxjs_1.combineLatest)([
118
+ api.query.vesting?.vesting
119
+ ? api.query.vesting.vesting(accountId)
120
+ : (0, rxjs_1.of)(api.registry.createType('Option<VestingInfo>')),
121
+ lockQueries.length
122
+ ? (0, rxjs_1.combineLatest)(lockQueries.map((c) => c(accountId)))
123
+ : (0, rxjs_1.of)([]),
124
+ reserveQueries.length
125
+ ? (0, rxjs_1.combineLatest)(reserveQueries.map((c) => c(accountId)))
126
+ : (0, rxjs_1.of)([])
127
+ ]).pipe((0, rxjs_1.map)(([opt, locks, reserves]) => {
128
+ let offsetLock = -1;
129
+ let offsetReserve = -1;
130
+ const vesting = opt.unwrapOr(null);
131
+ return [
132
+ vesting
133
+ ? Array.isArray(vesting)
134
+ ? vesting
135
+ : [vesting]
136
+ : null,
137
+ lockEmpty.map((e) => e ? api.registry.createType('Vec<BalanceLock>') : locks[++offsetLock]),
138
+ reserveEmpty.map((e) => e ? api.registry.createType('Vec<PezpalletBalancesReserveData>') : reserves[++offsetReserve])
139
+ ];
140
+ }));
141
+ }
142
+ /**
143
+ * @name all
144
+ * @description Retrieves the complete balance information for an account, including free balance, locked balance, reserved balance, and more.
145
+ * @param {( AccountId | string )} address An accountsId in different formats.
146
+ * @example
147
+ * ```javascript
148
+ * const ALICE = 'F7Hs';
149
+ *
150
+ * api.derive.balances.account(ALICE, (accountInfo) => {
151
+ * console.log(
152
+ * `${accountInfo.accountId} info:`,
153
+ * Object.keys(accountInfo).map((key) => `${key}: ${accountInfo[key]}`)
154
+ * );
155
+ * });
156
+ * ```
157
+ */
158
+ function all(instanceId, api) {
159
+ const balanceInstances = api.registry.getModuleInstances(api.runtimeVersion.specName, 'balances');
160
+ return (0, index_js_1.memo)(instanceId, (address) => (0, rxjs_1.combineLatest)([
161
+ api.derive.balances.account(address),
162
+ (0, util_1.isFunction)(api.query.system?.account) || (0, util_1.isFunction)(api.query.balances?.account)
163
+ ? queryCurrent(api, address, balanceInstances)
164
+ : queryOld(api, address)
165
+ ]).pipe((0, rxjs_1.switchMap)(([account, locks]) => (0, rxjs_1.combineLatest)([
166
+ (0, rxjs_1.of)(account),
167
+ (0, rxjs_1.of)(locks),
168
+ api.derive.chain.bestNumber()
169
+ ])), (0, rxjs_1.map)((result) => calcBalances(api, result))));
170
+ }
@@ -0,0 +1,20 @@
1
+ import { all } from './all.js';
2
+ export * from './account.js';
3
+ export * from './votingBalances.js';
4
+ /**
5
+ * @name votingBalance
6
+ * @param {( AccountId | string )} address An accounts Id in different formats.
7
+ * @returns An object containing the results of various balance queries
8
+ * @example
9
+ * <BR>
10
+ *
11
+ * ```javascript
12
+ * const ALICE = 'F7Hs';
13
+ *
14
+ * api.derive.balances.votingBalance(ALICE, ({ accountId, lockedBalance }) => {
15
+ * console.log(`The account ${accountId} has a locked balance ${lockedBalance} units.`);
16
+ * });
17
+ * ```
18
+ */
19
+ declare const votingBalance: typeof all;
20
+ export { all, votingBalance };
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.votingBalance = exports.all = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const all_js_1 = require("./all.js");
6
+ Object.defineProperty(exports, "all", { enumerable: true, get: function () { return all_js_1.all; } });
7
+ tslib_1.__exportStar(require("./account.js"), exports);
8
+ tslib_1.__exportStar(require("./votingBalances.js"), exports);
9
+ /**
10
+ * @name votingBalance
11
+ * @param {( AccountId | string )} address An accounts Id in different formats.
12
+ * @returns An object containing the results of various balance queries
13
+ * @example
14
+ * <BR>
15
+ *
16
+ * ```javascript
17
+ * const ALICE = 'F7Hs';
18
+ *
19
+ * api.derive.balances.votingBalance(ALICE, ({ accountId, lockedBalance }) => {
20
+ * console.log(`The account ${accountId} has a locked balance ${lockedBalance} units.`);
21
+ * });
22
+ * ```
23
+ */
24
+ const votingBalance = all_js_1.all;
25
+ exports.votingBalance = votingBalance;
@@ -0,0 +1,69 @@
1
+ import type { AccountId, Balance, BalanceLockTo212, Index } from '@pezkuwi/types/interfaces';
2
+ import type { PezpalletBalancesBalanceLock, PezpalletBalancesReserveData } from '@pezkuwi/types/lookup';
3
+ import type { BN } from '@pezkuwi/util';
4
+ export interface DeriveBalancesAccountData {
5
+ frameSystemAccountInfo?: {
6
+ frozen: Balance;
7
+ flags: Balance;
8
+ };
9
+ freeBalance: Balance;
10
+ frozenFee: Balance;
11
+ frozenMisc: Balance;
12
+ reservedBalance: Balance;
13
+ votingBalance: Balance;
14
+ }
15
+ export interface DeriveBalancesAccount extends DeriveBalancesAccountData {
16
+ accountId: AccountId;
17
+ accountNonce: Index;
18
+ additional: DeriveBalancesAccountData[];
19
+ }
20
+ export interface DeriveBalancesAllAccountData extends DeriveBalancesAccountData {
21
+ /**
22
+ * Calculated available balance. This uses the formula: max(0, free - locked)
23
+ * This is only correct when the return type of `api.query.system.account` is `AccountInfo` which was replaced by `PezframeSystemAccountInfo`.
24
+ * See `transferable` for the correct balance calculation.
25
+ *
26
+ * ref: https://github.com/pezkuwichain/bizinikiwi/pull/12951
27
+ */
28
+ availableBalance: Balance;
29
+ /**
30
+ * The amount of balance locked away.
31
+ */
32
+ lockedBalance: Balance;
33
+ /**
34
+ * The breakdown of locked balances.
35
+ */
36
+ lockedBreakdown: (PezpalletBalancesBalanceLock | BalanceLockTo212)[];
37
+ /**
38
+ * Calculated transferable balance. This uses the formula: free - max(maybeEd, frozen - reserve)
39
+ * Where `maybeEd` means if there is no frozen and reserves it will be zero, else it will be the existential deposit.
40
+ * This is only correct when the return type of `api.query.system.account` is `PezframeSystemAccountInfo`.
41
+ * Which is the most up to date calulcation for transferrable balances.
42
+ *
43
+ * ref: https://github.com/pezkuwichain/pezkuwi-sdk/issues/1833
44
+ */
45
+ transferable: Balance | null;
46
+ /**
47
+ * Amount locked in vesting.
48
+ */
49
+ vestingLocked: Balance;
50
+ }
51
+ export interface DeriveBalancesVesting {
52
+ startingBlock: BN;
53
+ endBlock: BN;
54
+ perBlock: BN;
55
+ locked: BN;
56
+ vested: BN;
57
+ }
58
+ export interface DeriveBalancesAllVesting {
59
+ isVesting: boolean;
60
+ vestedBalance: BN;
61
+ vestedClaimable: BN;
62
+ vesting: DeriveBalancesVesting[];
63
+ vestingTotal: BN;
64
+ }
65
+ export interface DeriveBalancesAll extends DeriveBalancesAccount, DeriveBalancesAllAccountData, DeriveBalancesAllVesting {
66
+ additional: DeriveBalancesAllAccountData[];
67
+ namedReserves: PezpalletBalancesReserveData[][];
68
+ }
69
+ export type DeriveBalancesMap = Record<string, DeriveBalancesAll>;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,15 @@
1
+ import type { Observable } from 'rxjs';
2
+ import type { AccountId, AccountIndex, Address } from '@pezkuwi/types/interfaces';
3
+ import type { DeriveApi, DeriveBalancesAccount } from '../types.js';
4
+ /**
5
+ * @name votingBalances
6
+ * @description Retrieves the balance information for multiple accounts, typically used in governance-related contexts to check voting power.
7
+ * @param {(AccountId | AccountIndex | Address | string)[]} addresses An array of account identifiers.
8
+ * @example
9
+ * ```javascript
10
+ * const addresses = ["5D4b...Zf1", "5HGj...yrV"];
11
+ * const balances = await api.derive.balances.votingBalances(addresses);
12
+ * console.log("Voting Balances:", balances);
13
+ * ```
14
+ */
15
+ export declare function votingBalances(instanceId: string, api: DeriveApi): (addresses?: (AccountId | AccountIndex | Address | string)[]) => Observable<DeriveBalancesAccount[]>;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.votingBalances = votingBalances;
4
+ const rxjs_1 = require("rxjs");
5
+ const index_js_1 = require("../util/index.js");
6
+ /**
7
+ * @name votingBalances
8
+ * @description Retrieves the balance information for multiple accounts, typically used in governance-related contexts to check voting power.
9
+ * @param {(AccountId | AccountIndex | Address | string)[]} addresses An array of account identifiers.
10
+ * @example
11
+ * ```javascript
12
+ * const addresses = ["5D4b...Zf1", "5HGj...yrV"];
13
+ * const balances = await api.derive.balances.votingBalances(addresses);
14
+ * console.log("Voting Balances:", balances);
15
+ * ```
16
+ */
17
+ function votingBalances(instanceId, api) {
18
+ return (0, index_js_1.memo)(instanceId, (addresses) => !addresses?.length
19
+ ? (0, rxjs_1.of)([])
20
+ : (0, rxjs_1.combineLatest)(addresses.map((accountId) => api.derive.balances.account(accountId))));
21
+ }
@@ -0,0 +1,12 @@
1
+ import type { Observable } from 'rxjs';
2
+ import type { DeriveApi, DeriveBounties } from '../types.js';
3
+ /**
4
+ * @name bounties
5
+ * @descrive Retrieves all active bounties, their descriptions, and associated proposals.
6
+ * @example
7
+ * ```javascript
8
+ * const bounties = await api.derive.bounties();
9
+ * console.log("Active bounties:", bounties);
10
+ * ```
11
+ */
12
+ export declare function bounties(instanceId: string, api: DeriveApi): () => Observable<DeriveBounties>;