@pezkuwi/types 16.5.5

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 (917) hide show
  1. package/README.md +3 -0
  2. package/build/bundle.d.ts +11 -0
  3. package/build/codec/index.d.ts +1 -0
  4. package/build/codec/types.d.ts +1 -0
  5. package/build/create/createClass.d.ts +3 -0
  6. package/build/create/createType.d.ts +9 -0
  7. package/build/create/index.d.ts +5 -0
  8. package/build/create/lazy.d.ts +7 -0
  9. package/build/create/registry.d.ts +74 -0
  10. package/build/create/types.d.ts +3 -0
  11. package/build/ethereum/AccountId.d.ts +36 -0
  12. package/build/ethereum/LookupSource.d.ts +41 -0
  13. package/build/ethereum/index.d.ts +2 -0
  14. package/build/extrinsic/Extrinsic.d.ts +166 -0
  15. package/build/extrinsic/ExtrinsicEra.d.ts +97 -0
  16. package/build/extrinsic/ExtrinsicPayload.d.ts +117 -0
  17. package/build/extrinsic/ExtrinsicPayloadUnknown.d.ts +11 -0
  18. package/build/extrinsic/ExtrinsicUnknown.d.ts +11 -0
  19. package/build/extrinsic/SignerPayload.d.ts +54 -0
  20. package/build/extrinsic/constants.d.ts +12 -0
  21. package/build/extrinsic/index.d.ts +8 -0
  22. package/build/extrinsic/signedExtensions/emptyCheck.d.ts +2 -0
  23. package/build/extrinsic/signedExtensions/index.d.ts +5 -0
  24. package/build/extrinsic/signedExtensions/polkadot.d.ts +2 -0
  25. package/build/extrinsic/signedExtensions/shell.d.ts +2 -0
  26. package/build/extrinsic/signedExtensions/statemint.d.ts +2 -0
  27. package/build/extrinsic/signedExtensions/substrate.d.ts +2 -0
  28. package/build/extrinsic/signedExtensions/types.d.ts +6 -0
  29. package/build/extrinsic/types.d.ts +17 -0
  30. package/build/extrinsic/util.d.ts +5 -0
  31. package/build/extrinsic/v4/Extrinsic.d.ts +49 -0
  32. package/build/extrinsic/v4/ExtrinsicPayload.d.ts +66 -0
  33. package/build/extrinsic/v4/ExtrinsicSignature.d.ts +85 -0
  34. package/build/extrinsic/v4/index.d.ts +3 -0
  35. package/build/extrinsic/v5/Extrinsic.d.ts +59 -0
  36. package/build/extrinsic/v5/ExtrinsicPayload.d.ts +67 -0
  37. package/build/extrinsic/v5/ExtrinsicSignature.d.ts +98 -0
  38. package/build/extrinsic/v5/GeneralExtrinsic.d.ts +85 -0
  39. package/build/extrinsic/v5/index.d.ts +4 -0
  40. package/build/generic/AccountId.d.ts +45 -0
  41. package/build/generic/AccountIndex.d.ts +39 -0
  42. package/build/generic/Block.d.ts +42 -0
  43. package/build/generic/Call.d.ts +69 -0
  44. package/build/generic/ChainProperties.d.ts +22 -0
  45. package/build/generic/ConsensusEngineId.d.ts +53 -0
  46. package/build/generic/Event.d.ts +76 -0
  47. package/build/generic/LookupSource.d.ts +45 -0
  48. package/build/generic/MultiAddress.d.ts +13 -0
  49. package/build/generic/Vote.d.ts +44 -0
  50. package/build/generic/index.d.ts +11 -0
  51. package/build/index.d.ts +2 -0
  52. package/build/index.types.d.ts +3 -0
  53. package/build/interfaces/alias.d.ts +5 -0
  54. package/build/interfaces/assetConversion/definitions.d.ts +3 -0
  55. package/build/interfaces/assetConversion/index.d.ts +1 -0
  56. package/build/interfaces/assetConversion/runtime.d.ts +2 -0
  57. package/build/interfaces/assetConversion/types.d.ts +6 -0
  58. package/build/interfaces/assets/definitions.d.ts +3 -0
  59. package/build/interfaces/assets/index.d.ts +1 -0
  60. package/build/interfaces/assets/runtime.d.ts +2 -0
  61. package/build/interfaces/assets/types.d.ts +54 -0
  62. package/build/interfaces/attestations/definitions.d.ts +3 -0
  63. package/build/interfaces/attestations/index.d.ts +1 -0
  64. package/build/interfaces/attestations/types.d.ts +22 -0
  65. package/build/interfaces/aura/definitions.d.ts +3 -0
  66. package/build/interfaces/aura/index.d.ts +1 -0
  67. package/build/interfaces/aura/runtime.d.ts +2 -0
  68. package/build/interfaces/aura/types.d.ts +6 -0
  69. package/build/interfaces/author/definitions.d.ts +3 -0
  70. package/build/interfaces/author/index.d.ts +1 -0
  71. package/build/interfaces/author/rpc.d.ts +2 -0
  72. package/build/interfaces/author/types.d.ts +31 -0
  73. package/build/interfaces/authorship/definitions.d.ts +3 -0
  74. package/build/interfaces/authorship/index.d.ts +1 -0
  75. package/build/interfaces/authorship/types.d.ts +12 -0
  76. package/build/interfaces/babe/definitions.d.ts +3 -0
  77. package/build/interfaces/babe/index.d.ts +1 -0
  78. package/build/interfaces/babe/rpc.d.ts +2 -0
  79. package/build/interfaces/babe/runtime.d.ts +2 -0
  80. package/build/interfaces/babe/types.d.ts +166 -0
  81. package/build/interfaces/balances/definitions.d.ts +3 -0
  82. package/build/interfaces/balances/index.d.ts +1 -0
  83. package/build/interfaces/balances/types.d.ts +58 -0
  84. package/build/interfaces/beefy/definitions.d.ts +3 -0
  85. package/build/interfaces/beefy/index.d.ts +1 -0
  86. package/build/interfaces/beefy/rpc.d.ts +2 -0
  87. package/build/interfaces/beefy/runtime.d.ts +2 -0
  88. package/build/interfaces/beefy/types.d.ts +74 -0
  89. package/build/interfaces/benchmark/definitions.d.ts +3 -0
  90. package/build/interfaces/benchmark/index.d.ts +1 -0
  91. package/build/interfaces/benchmark/runtime.d.ts +2 -0
  92. package/build/interfaces/benchmark/types.d.ts +71 -0
  93. package/build/interfaces/blockbuilder/definitions.d.ts +3 -0
  94. package/build/interfaces/blockbuilder/index.d.ts +1 -0
  95. package/build/interfaces/blockbuilder/runtime.d.ts +2 -0
  96. package/build/interfaces/blockbuilder/types.d.ts +15 -0
  97. package/build/interfaces/bridges/definitions.d.ts +3 -0
  98. package/build/interfaces/bridges/index.d.ts +1 -0
  99. package/build/interfaces/bridges/types.d.ts +129 -0
  100. package/build/interfaces/chain/definitions.d.ts +3 -0
  101. package/build/interfaces/chain/index.d.ts +1 -0
  102. package/build/interfaces/chain/rpc.d.ts +2 -0
  103. package/build/interfaces/chain/types.d.ts +5 -0
  104. package/build/interfaces/childstate/definitions.d.ts +3 -0
  105. package/build/interfaces/childstate/index.d.ts +1 -0
  106. package/build/interfaces/childstate/rpc.d.ts +2 -0
  107. package/build/interfaces/childstate/types.d.ts +5 -0
  108. package/build/interfaces/claims/definitions.d.ts +3 -0
  109. package/build/interfaces/claims/index.d.ts +1 -0
  110. package/build/interfaces/claims/types.d.ts +8 -0
  111. package/build/interfaces/collective/definitions.d.ts +3 -0
  112. package/build/interfaces/collective/index.d.ts +1 -0
  113. package/build/interfaces/collective/types.d.ts +33 -0
  114. package/build/interfaces/consensus/definitions.d.ts +3 -0
  115. package/build/interfaces/consensus/index.d.ts +1 -0
  116. package/build/interfaces/consensus/types.d.ts +9 -0
  117. package/build/interfaces/contracts/definitions.d.ts +3 -0
  118. package/build/interfaces/contracts/index.d.ts +1 -0
  119. package/build/interfaces/contracts/rpc.d.ts +2 -0
  120. package/build/interfaces/contracts/runtime.d.ts +2 -0
  121. package/build/interfaces/contracts/types.d.ts +490 -0
  122. package/build/interfaces/contractsAbi/definitions.d.ts +3 -0
  123. package/build/interfaces/contractsAbi/index.d.ts +1 -0
  124. package/build/interfaces/contractsAbi/types.d.ts +393 -0
  125. package/build/interfaces/crowdloan/definitions.d.ts +3 -0
  126. package/build/interfaces/crowdloan/index.d.ts +1 -0
  127. package/build/interfaces/crowdloan/types.d.ts +32 -0
  128. package/build/interfaces/cumulus/definitions.d.ts +3 -0
  129. package/build/interfaces/cumulus/index.d.ts +1 -0
  130. package/build/interfaces/cumulus/runtime.d.ts +2 -0
  131. package/build/interfaces/cumulus/types.d.ts +40 -0
  132. package/build/interfaces/definitions.d.ts +75 -0
  133. package/build/interfaces/democracy/definitions.d.ts +4 -0
  134. package/build/interfaces/democracy/index.d.ts +1 -0
  135. package/build/interfaces/democracy/types.d.ts +134 -0
  136. package/build/interfaces/dev/definitions.d.ts +3 -0
  137. package/build/interfaces/dev/index.d.ts +1 -0
  138. package/build/interfaces/dev/rpc.d.ts +2 -0
  139. package/build/interfaces/dev/types.d.ts +9 -0
  140. package/build/interfaces/discovery/definitions.d.ts +3 -0
  141. package/build/interfaces/discovery/index.d.ts +1 -0
  142. package/build/interfaces/discovery/runtime.d.ts +2 -0
  143. package/build/interfaces/discovery/types.d.ts +1 -0
  144. package/build/interfaces/dryRunApi/definitions.d.ts +3 -0
  145. package/build/interfaces/dryRunApi/index.d.ts +1 -0
  146. package/build/interfaces/dryRunApi/runtime.d.ts +2 -0
  147. package/build/interfaces/dryRunApi/types.d.ts +37 -0
  148. package/build/interfaces/elections/definitions.d.ts +3 -0
  149. package/build/interfaces/elections/index.d.ts +1 -0
  150. package/build/interfaces/elections/types.d.ts +44 -0
  151. package/build/interfaces/engine/definitions.d.ts +3 -0
  152. package/build/interfaces/engine/index.d.ts +1 -0
  153. package/build/interfaces/engine/rpc.d.ts +2 -0
  154. package/build/interfaces/engine/types.d.ts +17 -0
  155. package/build/interfaces/essentials.d.ts +3 -0
  156. package/build/interfaces/eth/definitions.d.ts +7 -0
  157. package/build/interfaces/eth/index.d.ts +1 -0
  158. package/build/interfaces/eth/rpc.d.ts +2 -0
  159. package/build/interfaces/eth/runtime.d.ts +2 -0
  160. package/build/interfaces/eth/types.d.ts +459 -0
  161. package/build/interfaces/evm/definitions.d.ts +3 -0
  162. package/build/interfaces/evm/index.d.ts +1 -0
  163. package/build/interfaces/evm/types.d.ts +109 -0
  164. package/build/interfaces/extrinsics/definitions.d.ts +3 -0
  165. package/build/interfaces/extrinsics/index.d.ts +1 -0
  166. package/build/interfaces/extrinsics/types.d.ts +77 -0
  167. package/build/interfaces/finality/definitions.d.ts +3 -0
  168. package/build/interfaces/finality/index.d.ts +1 -0
  169. package/build/interfaces/finality/runtime.d.ts +2 -0
  170. package/build/interfaces/finality/types.d.ts +1 -0
  171. package/build/interfaces/fungibles/definitions.d.ts +3 -0
  172. package/build/interfaces/fungibles/index.d.ts +1 -0
  173. package/build/interfaces/fungibles/runtime.d.ts +2 -0
  174. package/build/interfaces/fungibles/types.d.ts +8 -0
  175. package/build/interfaces/genericAsset/definitions.d.ts +3 -0
  176. package/build/interfaces/genericAsset/index.d.ts +1 -0
  177. package/build/interfaces/genericAsset/types.d.ts +30 -0
  178. package/build/interfaces/genesisBuilder/definitions.d.ts +3 -0
  179. package/build/interfaces/genesisBuilder/index.d.ts +1 -0
  180. package/build/interfaces/genesisBuilder/runtime.d.ts +2 -0
  181. package/build/interfaces/genesisBuilder/types.d.ts +5 -0
  182. package/build/interfaces/gilt/definitions.d.ts +3 -0
  183. package/build/interfaces/gilt/index.d.ts +1 -0
  184. package/build/interfaces/gilt/types.d.ts +25 -0
  185. package/build/interfaces/grandpa/definitions.d.ts +3 -0
  186. package/build/interfaces/grandpa/index.d.ts +1 -0
  187. package/build/interfaces/grandpa/rpc.d.ts +2 -0
  188. package/build/interfaces/grandpa/runtime.d.ts +2 -0
  189. package/build/interfaces/grandpa/types.d.ts +175 -0
  190. package/build/interfaces/identity/definitions.d.ts +3 -0
  191. package/build/interfaces/identity/index.d.ts +1 -0
  192. package/build/interfaces/identity/types.d.ts +78 -0
  193. package/build/interfaces/imOnline/definitions.d.ts +3 -0
  194. package/build/interfaces/imOnline/index.d.ts +1 -0
  195. package/build/interfaces/imOnline/types.d.ts +37 -0
  196. package/build/interfaces/index.d.ts +1 -0
  197. package/build/interfaces/jsonrpc.d.ts +3 -0
  198. package/build/interfaces/lottery/definitions.d.ts +3 -0
  199. package/build/interfaces/lottery/index.d.ts +1 -0
  200. package/build/interfaces/lottery/types.d.ts +15 -0
  201. package/build/interfaces/metadata/definitions.d.ts +5 -0
  202. package/build/interfaces/metadata/hashers.d.ts +9 -0
  203. package/build/interfaces/metadata/index.d.ts +1 -0
  204. package/build/interfaces/metadata/runtime.d.ts +2 -0
  205. package/build/interfaces/metadata/types.d.ts +771 -0
  206. package/build/interfaces/metadata/v10.d.ts +2 -0
  207. package/build/interfaces/metadata/v11.d.ts +2 -0
  208. package/build/interfaces/metadata/v12.d.ts +2 -0
  209. package/build/interfaces/metadata/v13.d.ts +2 -0
  210. package/build/interfaces/metadata/v14.d.ts +2 -0
  211. package/build/interfaces/metadata/v15.d.ts +2 -0
  212. package/build/interfaces/metadata/v16.d.ts +2 -0
  213. package/build/interfaces/metadata/v9.d.ts +2 -0
  214. package/build/interfaces/mixnet/definitions.d.ts +3 -0
  215. package/build/interfaces/mixnet/index.d.ts +1 -0
  216. package/build/interfaces/mixnet/runtime.d.ts +2 -0
  217. package/build/interfaces/mixnet/types.d.ts +30 -0
  218. package/build/interfaces/mmr/definitions.d.ts +3 -0
  219. package/build/interfaces/mmr/index.d.ts +1 -0
  220. package/build/interfaces/mmr/rpc.d.ts +2 -0
  221. package/build/interfaces/mmr/runtime.d.ts +2 -0
  222. package/build/interfaces/mmr/types.d.ts +54 -0
  223. package/build/interfaces/nfts/definitions.d.ts +3 -0
  224. package/build/interfaces/nfts/index.d.ts +1 -0
  225. package/build/interfaces/nfts/runtime.d.ts +2 -0
  226. package/build/interfaces/nfts/types.d.ts +8 -0
  227. package/build/interfaces/nimbus/definitions.d.ts +3 -0
  228. package/build/interfaces/nimbus/index.d.ts +1 -0
  229. package/build/interfaces/nimbus/runtime.d.ts +2 -0
  230. package/build/interfaces/nimbus/types.d.ts +1 -0
  231. package/build/interfaces/nompools/definitions.d.ts +3 -0
  232. package/build/interfaces/nompools/index.d.ts +1 -0
  233. package/build/interfaces/nompools/runtime.d.ts +2 -0
  234. package/build/interfaces/nompools/types.d.ts +11 -0
  235. package/build/interfaces/offchain/definitions.d.ts +3 -0
  236. package/build/interfaces/offchain/index.d.ts +1 -0
  237. package/build/interfaces/offchain/rpc.d.ts +2 -0
  238. package/build/interfaces/offchain/runtime.d.ts +2 -0
  239. package/build/interfaces/offchain/types.d.ts +8 -0
  240. package/build/interfaces/offences/definitions.d.ts +3 -0
  241. package/build/interfaces/offences/index.d.ts +1 -0
  242. package/build/interfaces/offences/types.d.ts +28 -0
  243. package/build/interfaces/ormlOracle/definitions.d.ts +3 -0
  244. package/build/interfaces/ormlOracle/index.d.ts +1 -0
  245. package/build/interfaces/ormlOracle/runtime.d.ts +2 -0
  246. package/build/interfaces/ormlOracle/types.d.ts +1 -0
  247. package/build/interfaces/ormlTokens/definitions.d.ts +3 -0
  248. package/build/interfaces/ormlTokens/index.d.ts +1 -0
  249. package/build/interfaces/ormlTokens/runtime.d.ts +2 -0
  250. package/build/interfaces/ormlTokens/types.d.ts +1 -0
  251. package/build/interfaces/parachains/definitions.d.ts +3 -0
  252. package/build/interfaces/parachains/hrmp.d.ts +25 -0
  253. package/build/interfaces/parachains/index.d.ts +1 -0
  254. package/build/interfaces/parachains/runtime.d.ts +2 -0
  255. package/build/interfaces/parachains/slots.d.ts +46 -0
  256. package/build/interfaces/parachains/types.d.ts +885 -0
  257. package/build/interfaces/payment/definitions.d.ts +3 -0
  258. package/build/interfaces/payment/index.d.ts +1 -0
  259. package/build/interfaces/payment/rpc.d.ts +2 -0
  260. package/build/interfaces/payment/runtime.d.ts +2 -0
  261. package/build/interfaces/payment/types.d.ts +32 -0
  262. package/build/interfaces/poll/definitions.d.ts +3 -0
  263. package/build/interfaces/poll/index.d.ts +1 -0
  264. package/build/interfaces/poll/types.d.ts +5 -0
  265. package/build/interfaces/pow/definitions.d.ts +3 -0
  266. package/build/interfaces/pow/index.d.ts +1 -0
  267. package/build/interfaces/pow/runtime.d.ts +2 -0
  268. package/build/interfaces/pow/types.d.ts +1 -0
  269. package/build/interfaces/proxy/definitions.d.ts +3 -0
  270. package/build/interfaces/proxy/index.d.ts +1 -0
  271. package/build/interfaces/proxy/types.d.ts +23 -0
  272. package/build/interfaces/purchase/definitions.d.ts +3 -0
  273. package/build/interfaces/purchase/index.d.ts +1 -0
  274. package/build/interfaces/purchase/types.d.ts +21 -0
  275. package/build/interfaces/recovery/definitions.d.ts +3 -0
  276. package/build/interfaces/recovery/index.d.ts +1 -0
  277. package/build/interfaces/recovery/types.d.ts +16 -0
  278. package/build/interfaces/rpc/definitions.d.ts +3 -0
  279. package/build/interfaces/rpc/index.d.ts +1 -0
  280. package/build/interfaces/rpc/rpc.d.ts +2 -0
  281. package/build/interfaces/rpc/types.d.ts +7 -0
  282. package/build/interfaces/runtime/definitions.d.ts +4 -0
  283. package/build/interfaces/runtime/index.d.ts +1 -0
  284. package/build/interfaces/runtime/runtime.d.ts +2 -0
  285. package/build/interfaces/runtime/types.d.ts +396 -0
  286. package/build/interfaces/scaleInfo/definitions.d.ts +3 -0
  287. package/build/interfaces/scaleInfo/index.d.ts +1 -0
  288. package/build/interfaces/scaleInfo/types.d.ts +238 -0
  289. package/build/interfaces/scaleInfo/v0.d.ts +2 -0
  290. package/build/interfaces/scaleInfo/v1.d.ts +8 -0
  291. package/build/interfaces/scheduler/definitions.d.ts +3 -0
  292. package/build/interfaces/scheduler/index.d.ts +1 -0
  293. package/build/interfaces/scheduler/types.d.ts +34 -0
  294. package/build/interfaces/session/definitions.d.ts +3 -0
  295. package/build/interfaces/session/index.d.ts +1 -0
  296. package/build/interfaces/session/runtime.d.ts +2 -0
  297. package/build/interfaces/session/types.d.ts +74 -0
  298. package/build/interfaces/society/definitions.d.ts +3 -0
  299. package/build/interfaces/society/index.d.ts +1 -0
  300. package/build/interfaces/society/types.d.ts +41 -0
  301. package/build/interfaces/staking/definitions.d.ts +3 -0
  302. package/build/interfaces/staking/index.d.ts +1 -0
  303. package/build/interfaces/staking/runtime.d.ts +2 -0
  304. package/build/interfaces/staking/types.d.ts +385 -0
  305. package/build/interfaces/state/definitions.d.ts +3 -0
  306. package/build/interfaces/state/index.d.ts +1 -0
  307. package/build/interfaces/state/rpc.d.ts +2 -0
  308. package/build/interfaces/state/types.d.ts +107 -0
  309. package/build/interfaces/statement/definitions.d.ts +3 -0
  310. package/build/interfaces/statement/index.d.ts +1 -0
  311. package/build/interfaces/statement/runtime.d.ts +2 -0
  312. package/build/interfaces/statement/types.d.ts +21 -0
  313. package/build/interfaces/support/definitions.d.ts +3 -0
  314. package/build/interfaces/support/index.d.ts +1 -0
  315. package/build/interfaces/support/types.d.ts +10 -0
  316. package/build/interfaces/syncstate/definitions.d.ts +3 -0
  317. package/build/interfaces/syncstate/index.d.ts +1 -0
  318. package/build/interfaces/syncstate/rpc.d.ts +2 -0
  319. package/build/interfaces/syncstate/types.d.ts +1 -0
  320. package/build/interfaces/system/definitions.d.ts +3 -0
  321. package/build/interfaces/system/index.d.ts +1 -0
  322. package/build/interfaces/system/rpc.d.ts +2 -0
  323. package/build/interfaces/system/runtime.d.ts +2 -0
  324. package/build/interfaces/system/types.d.ts +423 -0
  325. package/build/interfaces/treasury/definitions.d.ts +3 -0
  326. package/build/interfaces/treasury/index.d.ts +1 -0
  327. package/build/interfaces/treasury/types.d.ts +75 -0
  328. package/build/interfaces/txpayment/definitions.d.ts +3 -0
  329. package/build/interfaces/txpayment/index.d.ts +1 -0
  330. package/build/interfaces/txpayment/types.d.ts +5 -0
  331. package/build/interfaces/txqueue/definitions.d.ts +3 -0
  332. package/build/interfaces/txqueue/index.d.ts +1 -0
  333. package/build/interfaces/txqueue/runtime.d.ts +2 -0
  334. package/build/interfaces/txqueue/types.d.ts +26 -0
  335. package/build/interfaces/types.d.ts +78 -0
  336. package/build/interfaces/uniques/definitions.d.ts +3 -0
  337. package/build/interfaces/uniques/index.d.ts +1 -0
  338. package/build/interfaces/uniques/types.d.ts +53 -0
  339. package/build/interfaces/utility/definitions.d.ts +3 -0
  340. package/build/interfaces/utility/index.d.ts +1 -0
  341. package/build/interfaces/utility/types.d.ts +15 -0
  342. package/build/interfaces/vesting/definitions.d.ts +3 -0
  343. package/build/interfaces/vesting/index.d.ts +1 -0
  344. package/build/interfaces/vesting/types.d.ts +9 -0
  345. package/build/interfaces/xcm/definitions.d.ts +3 -0
  346. package/build/interfaces/xcm/index.d.ts +1 -0
  347. package/build/interfaces/xcm/types.d.ts +2436 -0
  348. package/build/interfaces/xcm/v0.d.ts +2 -0
  349. package/build/interfaces/xcm/v1.d.ts +2 -0
  350. package/build/interfaces/xcm/v2.d.ts +2 -0
  351. package/build/interfaces/xcm/v3.d.ts +2 -0
  352. package/build/interfaces/xcm/v4.d.ts +2 -0
  353. package/build/interfaces/xcm/v5.d.ts +2 -0
  354. package/build/interfaces/xcmPaymentApi/definitions.d.ts +3 -0
  355. package/build/interfaces/xcmPaymentApi/index.d.ts +1 -0
  356. package/build/interfaces/xcmPaymentApi/runtime.d.ts +2 -0
  357. package/build/interfaces/xcmPaymentApi/types.d.ts +11 -0
  358. package/build/interfaces/xcmRuntimeApi/definitions.d.ts +3 -0
  359. package/build/interfaces/xcmRuntimeApi/index.d.ts +1 -0
  360. package/build/interfaces/xcmRuntimeApi/runtime.d.ts +2 -0
  361. package/build/interfaces/xcmRuntimeApi/types.d.ts +8 -0
  362. package/build/lookup.d.ts +1 -0
  363. package/build/metadata/MagicNumber.d.ts +6 -0
  364. package/build/metadata/Metadata.d.ts +11 -0
  365. package/build/metadata/MetadataVersioned.d.ts +69 -0
  366. package/build/metadata/PortableRegistry/PortableRegistry.d.ts +48 -0
  367. package/build/metadata/PortableRegistry/index.d.ts +2 -0
  368. package/build/metadata/PortableRegistry/toV1.d.ts +3 -0
  369. package/build/metadata/decorate/constants/index.d.ts +5 -0
  370. package/build/metadata/decorate/errors/index.d.ts +16 -0
  371. package/build/metadata/decorate/events/index.d.ts +6 -0
  372. package/build/metadata/decorate/extrinsics/createUnchecked.d.ts +5 -0
  373. package/build/metadata/decorate/extrinsics/index.d.ts +9 -0
  374. package/build/metadata/decorate/index.d.ts +13 -0
  375. package/build/metadata/decorate/storage/createFunction.d.ts +31 -0
  376. package/build/metadata/decorate/storage/getHasher.d.ts +5 -0
  377. package/build/metadata/decorate/storage/getStorage.d.ts +4 -0
  378. package/build/metadata/decorate/storage/index.d.ts +5 -0
  379. package/build/metadata/decorate/storage/substrate.d.ts +5 -0
  380. package/build/metadata/decorate/storage/util.d.ts +14 -0
  381. package/build/metadata/decorate/types.d.ts +33 -0
  382. package/build/metadata/decorate/util.d.ts +8 -0
  383. package/build/metadata/index.d.ts +3 -0
  384. package/build/metadata/types.d.ts +5 -0
  385. package/build/metadata/util/extractTypes.d.ts +4 -0
  386. package/build/metadata/util/flattenUniq.d.ts +4 -0
  387. package/build/metadata/util/getSiName.d.ts +3 -0
  388. package/build/metadata/util/getUniqTypes.d.ts +4 -0
  389. package/build/metadata/util/index.d.ts +5 -0
  390. package/build/metadata/util/testUtil.d.ts +10 -0
  391. package/build/metadata/util/toCallsOnly.d.ts +4 -0
  392. package/build/metadata/util/types.d.ts +5 -0
  393. package/build/metadata/util/validateTypes.d.ts +3 -0
  394. package/build/metadata/v10/toV11.d.ts +4 -0
  395. package/build/metadata/v11/toV12.d.ts +6 -0
  396. package/build/metadata/v12/toV13.d.ts +6 -0
  397. package/build/metadata/v13/toV14.d.ts +18 -0
  398. package/build/metadata/v14/toV15.d.ts +7 -0
  399. package/build/metadata/v15/toV16.d.ts +7 -0
  400. package/build/metadata/v16/toLatest.d.ts +7 -0
  401. package/build/metadata/v9/toV10.d.ts +4 -0
  402. package/build/metadata/versions.d.ts +5 -0
  403. package/build/packageDetect.d.ts +1 -0
  404. package/build/packageInfo.d.ts +6 -0
  405. package/build/primitive/Data.d.ts +31 -0
  406. package/build/primitive/StorageKey.d.ts +53 -0
  407. package/build/primitive/index.d.ts +6 -0
  408. package/build/primitive/types.d.ts +17 -0
  409. package/build/types/augmentLookup.d.ts +15 -0
  410. package/build/types/augmentRegistry.d.ts +39 -0
  411. package/build/types/calls.d.ts +10 -0
  412. package/build/types/codec.d.ts +4 -0
  413. package/build/types/definitions.d.ts +108 -0
  414. package/build/types/detect.d.ts +42 -0
  415. package/build/types/events.d.ts +28 -0
  416. package/build/types/extrinsic.d.ts +220 -0
  417. package/build/types/index.d.ts +12 -0
  418. package/build/types/interfaces.d.ts +40 -0
  419. package/build/types/registry.d.ts +128 -0
  420. package/build/util/index.d.ts +1 -0
  421. package/build/util/storage.d.ts +7 -0
  422. package/package.json +37 -0
  423. package/src/bundle.ts +22 -0
  424. package/src/checkTypes.manual.ts +101 -0
  425. package/src/codec/index.ts +9 -0
  426. package/src/codec/types.ts +4 -0
  427. package/src/create/createClass.spec.ts +47 -0
  428. package/src/create/createClass.ts +11 -0
  429. package/src/create/createType.spec.ts +252 -0
  430. package/src/create/createType.ts +17 -0
  431. package/src/create/index.ts +11 -0
  432. package/src/create/lazy.ts +22 -0
  433. package/src/create/registry.spec.ts +186 -0
  434. package/src/create/registry.ts +639 -0
  435. package/src/create/types.ts +9 -0
  436. package/src/ethereum/AccountId.spec.ts +86 -0
  437. package/src/ethereum/AccountId.ts +76 -0
  438. package/src/ethereum/LookupSource.spec.ts +107 -0
  439. package/src/ethereum/LookupSource.ts +122 -0
  440. package/src/ethereum/index.ts +5 -0
  441. package/src/extrinsic/Extrinsic.spec.ts +111 -0
  442. package/src/extrinsic/Extrinsic.ts +461 -0
  443. package/src/extrinsic/ExtrinsicEra.spec.ts +87 -0
  444. package/src/extrinsic/ExtrinsicEra.ts +299 -0
  445. package/src/extrinsic/ExtrinsicPayload.spec.ts +116 -0
  446. package/src/extrinsic/ExtrinsicPayload.ts +223 -0
  447. package/src/extrinsic/ExtrinsicPayloadUnknown.ts +20 -0
  448. package/src/extrinsic/ExtrinsicUnknown.ts +22 -0
  449. package/src/extrinsic/SignerPayload.spec.ts +189 -0
  450. package/src/extrinsic/SignerPayload.ts +198 -0
  451. package/src/extrinsic/constants.ts +28 -0
  452. package/src/extrinsic/index.ts +14 -0
  453. package/src/extrinsic/signedExtensions/emptyCheck.ts +9 -0
  454. package/src/extrinsic/signedExtensions/index.ts +46 -0
  455. package/src/extrinsic/signedExtensions/polkadot.ts +15 -0
  456. package/src/extrinsic/signedExtensions/shell.ts +10 -0
  457. package/src/extrinsic/signedExtensions/statemint.ts +15 -0
  458. package/src/extrinsic/signedExtensions/substrate.ts +75 -0
  459. package/src/extrinsic/signedExtensions/types.ts +11 -0
  460. package/src/extrinsic/types.ts +25 -0
  461. package/src/extrinsic/util.ts +23 -0
  462. package/src/extrinsic/v4/Extrinsic.spec.ts +86 -0
  463. package/src/extrinsic/v4/Extrinsic.ts +108 -0
  464. package/src/extrinsic/v4/ExtrinsicPayload.spec.ts +74 -0
  465. package/src/extrinsic/v4/ExtrinsicPayload.ts +131 -0
  466. package/src/extrinsic/v4/ExtrinsicSignature.spec.ts +160 -0
  467. package/src/extrinsic/v4/ExtrinsicSignature.ts +229 -0
  468. package/src/extrinsic/v4/index.ts +6 -0
  469. package/src/extrinsic/v5/Extrinsic.spec.ts +74 -0
  470. package/src/extrinsic/v5/Extrinsic.ts +116 -0
  471. package/src/extrinsic/v5/ExtrinsicPayload.spec.ts +39 -0
  472. package/src/extrinsic/v5/ExtrinsicPayload.ts +115 -0
  473. package/src/extrinsic/v5/ExtrinsicSignature.spec.ts +105 -0
  474. package/src/extrinsic/v5/ExtrinsicSignature.ts +200 -0
  475. package/src/extrinsic/v5/GeneralExtrinsic.spec.ts +47 -0
  476. package/src/extrinsic/v5/GeneralExtrinsic.ts +208 -0
  477. package/src/extrinsic/v5/index.ts +7 -0
  478. package/src/generic/AccountId.spec.ts +179 -0
  479. package/src/generic/AccountId.ts +100 -0
  480. package/src/generic/AccountIndex.spec.ts +75 -0
  481. package/src/generic/AccountIndex.ts +129 -0
  482. package/src/generic/Block.spec.ts +49 -0
  483. package/src/generic/Block.ts +65 -0
  484. package/src/generic/Call.spec.ts +47 -0
  485. package/src/generic/Call.ts +244 -0
  486. package/src/generic/ChainProperties.spec.ts +95 -0
  487. package/src/generic/ChainProperties.ts +93 -0
  488. package/src/generic/ConsensusEngineId.spec.ts +23 -0
  489. package/src/generic/ConsensusEngineId.ts +131 -0
  490. package/src/generic/Event.ts +200 -0
  491. package/src/generic/LookupSource.spec.ts +123 -0
  492. package/src/generic/LookupSource.ts +141 -0
  493. package/src/generic/MultiAddress.spec.ts +52 -0
  494. package/src/generic/MultiAddress.ts +73 -0
  495. package/src/generic/Vote.spec.ts +167 -0
  496. package/src/generic/Vote.ts +133 -0
  497. package/src/generic/index.ts +17 -0
  498. package/src/index.spec.ts +78 -0
  499. package/src/index.ts +6 -0
  500. package/src/index.types.ts +6 -0
  501. package/src/interfaces/alias.spec.ts +50 -0
  502. package/src/interfaces/alias.ts +116 -0
  503. package/src/interfaces/assetConversion/definitions.ts +17 -0
  504. package/src/interfaces/assetConversion/index.ts +4 -0
  505. package/src/interfaces/assetConversion/runtime.ts +72 -0
  506. package/src/interfaces/assetConversion/types.ts +10 -0
  507. package/src/interfaces/assets/definitions.ts +57 -0
  508. package/src/interfaces/assets/index.ts +4 -0
  509. package/src/interfaces/assets/runtime.ts +24 -0
  510. package/src/interfaces/assets/types.ts +64 -0
  511. package/src/interfaces/attestations/definitions.ts +26 -0
  512. package/src/interfaces/attestations/index.ts +4 -0
  513. package/src/interfaces/attestations/types.ts +28 -0
  514. package/src/interfaces/aura/definitions.ts +19 -0
  515. package/src/interfaces/aura/index.ts +4 -0
  516. package/src/interfaces/aura/runtime.ts +24 -0
  517. package/src/interfaces/aura/types.ts +11 -0
  518. package/src/interfaces/author/ExtrinsicStatus.spec.ts +33 -0
  519. package/src/interfaces/author/definitions.ts +35 -0
  520. package/src/interfaces/author/index.ts +4 -0
  521. package/src/interfaces/author/rpc.ts +101 -0
  522. package/src/interfaces/author/types.ts +37 -0
  523. package/src/interfaces/authorship/definitions.ts +19 -0
  524. package/src/interfaces/authorship/index.ts +4 -0
  525. package/src/interfaces/authorship/types.ts +17 -0
  526. package/src/interfaces/babe/definitions.ts +134 -0
  527. package/src/interfaces/babe/index.ts +4 -0
  528. package/src/interfaces/babe/rpc.ts +13 -0
  529. package/src/interfaces/babe/runtime.ts +77 -0
  530. package/src/interfaces/babe/types.ts +187 -0
  531. package/src/interfaces/balances/definitions.ts +55 -0
  532. package/src/interfaces/balances/index.ts +4 -0
  533. package/src/interfaces/balances/types.ts +70 -0
  534. package/src/interfaces/beefy/definitions.ts +66 -0
  535. package/src/interfaces/beefy/index.ts +4 -0
  536. package/src/interfaces/beefy/rpc.ts +22 -0
  537. package/src/interfaces/beefy/runtime.ts +107 -0
  538. package/src/interfaces/beefy/types.ts +87 -0
  539. package/src/interfaces/benchmark/definitions.ts +52 -0
  540. package/src/interfaces/benchmark/index.ts +4 -0
  541. package/src/interfaces/benchmark/runtime.ts +34 -0
  542. package/src/interfaces/benchmark/types.ts +81 -0
  543. package/src/interfaces/blockbuilder/definitions.ts +25 -0
  544. package/src/interfaces/blockbuilder/index.ts +4 -0
  545. package/src/interfaces/blockbuilder/runtime.ts +124 -0
  546. package/src/interfaces/blockbuilder/types.ts +21 -0
  547. package/src/interfaces/bridges/definitions.ts +94 -0
  548. package/src/interfaces/bridges/index.ts +4 -0
  549. package/src/interfaces/bridges/types.ts +147 -0
  550. package/src/interfaces/chain/definitions.ts +16 -0
  551. package/src/interfaces/chain/index.ts +4 -0
  552. package/src/interfaces/chain/rpc.ts +82 -0
  553. package/src/interfaces/chain/types.ts +9 -0
  554. package/src/interfaces/childstate/definitions.ts +17 -0
  555. package/src/interfaces/childstate/index.ts +4 -0
  556. package/src/interfaces/childstate/rpc.ts +137 -0
  557. package/src/interfaces/childstate/types.ts +9 -0
  558. package/src/interfaces/claims/definitions.ts +16 -0
  559. package/src/interfaces/claims/index.ts +4 -0
  560. package/src/interfaces/claims/types.ts +13 -0
  561. package/src/interfaces/collective/definitions.ts +34 -0
  562. package/src/interfaces/collective/index.ts +4 -0
  563. package/src/interfaces/collective/types.ts +40 -0
  564. package/src/interfaces/consensus/definitions.ts +15 -0
  565. package/src/interfaces/consensus/index.ts +4 -0
  566. package/src/interfaces/consensus/types.ts +13 -0
  567. package/src/interfaces/contracts/definitions.ts +434 -0
  568. package/src/interfaces/contracts/index.ts +4 -0
  569. package/src/interfaces/contracts/rpc.ts +99 -0
  570. package/src/interfaces/contracts/runtime.ts +184 -0
  571. package/src/interfaces/contracts/types.ts +536 -0
  572. package/src/interfaces/contractsAbi/definitions.ts +351 -0
  573. package/src/interfaces/contractsAbi/index.ts +4 -0
  574. package/src/interfaces/contractsAbi/types.ts +446 -0
  575. package/src/interfaces/crowdloan/definitions.ts +34 -0
  576. package/src/interfaces/crowdloan/index.ts +4 -0
  577. package/src/interfaces/crowdloan/types.ts +38 -0
  578. package/src/interfaces/cumulus/definitions.ts +44 -0
  579. package/src/interfaces/cumulus/index.ts +4 -0
  580. package/src/interfaces/cumulus/runtime.ts +55 -0
  581. package/src/interfaces/cumulus/types.ts +48 -0
  582. package/src/interfaces/definitions.spec.ts +159 -0
  583. package/src/interfaces/definitions.ts +92 -0
  584. package/src/interfaces/democracy/definitions.ts +121 -0
  585. package/src/interfaces/democracy/index.ts +4 -0
  586. package/src/interfaces/democracy/types.ts +154 -0
  587. package/src/interfaces/dev/definitions.ts +21 -0
  588. package/src/interfaces/dev/index.ts +4 -0
  589. package/src/interfaces/dev/rpc.ts +19 -0
  590. package/src/interfaces/dev/types.ts +14 -0
  591. package/src/interfaces/discovery/definitions.ts +15 -0
  592. package/src/interfaces/discovery/index.ts +4 -0
  593. package/src/interfaces/discovery/runtime.ts +19 -0
  594. package/src/interfaces/discovery/types.ts +4 -0
  595. package/src/interfaces/dryRunApi/definitions.ts +38 -0
  596. package/src/interfaces/dryRunApi/index.ts +4 -0
  597. package/src/interfaces/dryRunApi/runtime.ts +79 -0
  598. package/src/interfaces/dryRunApi/types.ts +46 -0
  599. package/src/interfaces/elections/definitions.ts +42 -0
  600. package/src/interfaces/elections/index.ts +4 -0
  601. package/src/interfaces/elections/types.ts +52 -0
  602. package/src/interfaces/engine/definitions.ts +30 -0
  603. package/src/interfaces/engine/index.ts +4 -0
  604. package/src/interfaces/engine/rpc.ts +41 -0
  605. package/src/interfaces/engine/types.ts +23 -0
  606. package/src/interfaces/essentials.ts +6 -0
  607. package/src/interfaces/eth/definitions.ts +411 -0
  608. package/src/interfaces/eth/index.ts +4 -0
  609. package/src/interfaces/eth/rpc.ts +508 -0
  610. package/src/interfaces/eth/runtime.ts +355 -0
  611. package/src/interfaces/eth/types.ts +505 -0
  612. package/src/interfaces/evm/definitions.ts +99 -0
  613. package/src/interfaces/evm/index.ts +4 -0
  614. package/src/interfaces/evm/types.ts +126 -0
  615. package/src/interfaces/extrinsics/EdcsaSignature.spec.ts +35 -0
  616. package/src/interfaces/extrinsics/definitions.ts +45 -0
  617. package/src/interfaces/extrinsics/index.ts +4 -0
  618. package/src/interfaces/extrinsics/types.ts +82 -0
  619. package/src/interfaces/finality/definitions.ts +15 -0
  620. package/src/interfaces/finality/index.ts +4 -0
  621. package/src/interfaces/finality/runtime.ts +23 -0
  622. package/src/interfaces/finality/types.ts +4 -0
  623. package/src/interfaces/fungibles/definitions.ts +19 -0
  624. package/src/interfaces/fungibles/index.ts +4 -0
  625. package/src/interfaces/fungibles/runtime.ts +39 -0
  626. package/src/interfaces/fungibles/types.ts +13 -0
  627. package/src/interfaces/genericAsset/definitions.ts +34 -0
  628. package/src/interfaces/genericAsset/index.ts +4 -0
  629. package/src/interfaces/genericAsset/types.ts +38 -0
  630. package/src/interfaces/genesisBuilder/definitions.ts +14 -0
  631. package/src/interfaces/genesisBuilder/index.ts +4 -0
  632. package/src/interfaces/genesisBuilder/runtime.ts +29 -0
  633. package/src/interfaces/genesisBuilder/types.ts +9 -0
  634. package/src/interfaces/gilt/definitions.ts +30 -0
  635. package/src/interfaces/gilt/index.ts +4 -0
  636. package/src/interfaces/gilt/types.ts +32 -0
  637. package/src/interfaces/grandpa/ReportedRoundStates.spec.ts +20 -0
  638. package/src/interfaces/grandpa/definitions.ts +140 -0
  639. package/src/interfaces/grandpa/index.ts +4 -0
  640. package/src/interfaces/grandpa/rpc.ts +32 -0
  641. package/src/interfaces/grandpa/runtime.ts +60 -0
  642. package/src/interfaces/grandpa/types.ts +201 -0
  643. package/src/interfaces/identity/IdentityFields.spec.ts +34 -0
  644. package/src/interfaces/identity/Registration.spec.ts +36 -0
  645. package/src/interfaces/identity/definitions.ts +79 -0
  646. package/src/interfaces/identity/index.ts +4 -0
  647. package/src/interfaces/identity/types.ts +89 -0
  648. package/src/interfaces/imOnline/definitions.ts +34 -0
  649. package/src/interfaces/imOnline/index.ts +4 -0
  650. package/src/interfaces/imOnline/types.ts +44 -0
  651. package/src/interfaces/index.ts +4 -0
  652. package/src/interfaces/jsonrpc.ts +30 -0
  653. package/src/interfaces/lottery/definitions.ts +21 -0
  654. package/src/interfaces/lottery/index.ts +4 -0
  655. package/src/interfaces/lottery/types.ts +20 -0
  656. package/src/interfaces/metadata/definitions.ts +87 -0
  657. package/src/interfaces/metadata/hashers.ts +16 -0
  658. package/src/interfaces/metadata/index.ts +4 -0
  659. package/src/interfaces/metadata/runtime.ts +44 -0
  660. package/src/interfaces/metadata/types.ts +849 -0
  661. package/src/interfaces/metadata/v10.ts +67 -0
  662. package/src/interfaces/metadata/v11.ts +67 -0
  663. package/src/interfaces/metadata/v12.ts +35 -0
  664. package/src/interfaces/metadata/v13.ts +66 -0
  665. package/src/interfaces/metadata/v14.ts +102 -0
  666. package/src/interfaces/metadata/v15.ts +67 -0
  667. package/src/interfaces/metadata/v16.ts +168 -0
  668. package/src/interfaces/metadata/v9.ts +87 -0
  669. package/src/interfaces/mixnet/definitions.ts +33 -0
  670. package/src/interfaces/mixnet/index.ts +4 -0
  671. package/src/interfaces/mixnet/runtime.ts +43 -0
  672. package/src/interfaces/mixnet/types.ts +38 -0
  673. package/src/interfaces/mmr/definitions.ts +44 -0
  674. package/src/interfaces/mmr/index.ts +4 -0
  675. package/src/interfaces/mmr/rpc.ts +67 -0
  676. package/src/interfaces/mmr/runtime.ts +168 -0
  677. package/src/interfaces/mmr/types.ts +63 -0
  678. package/src/interfaces/nfts/definitions.ts +18 -0
  679. package/src/interfaces/nfts/index.ts +4 -0
  680. package/src/interfaces/nfts/runtime.ts +110 -0
  681. package/src/interfaces/nfts/types.ts +12 -0
  682. package/src/interfaces/nimbus/definitions.ts +15 -0
  683. package/src/interfaces/nimbus/index.ts +4 -0
  684. package/src/interfaces/nimbus/runtime.ts +77 -0
  685. package/src/interfaces/nimbus/types.ts +4 -0
  686. package/src/interfaces/nompools/definitions.ts +20 -0
  687. package/src/interfaces/nompools/index.ts +4 -0
  688. package/src/interfaces/nompools/runtime.ts +52 -0
  689. package/src/interfaces/nompools/types.ts +16 -0
  690. package/src/interfaces/offchain/definitions.spec.ts +21 -0
  691. package/src/interfaces/offchain/definitions.ts +23 -0
  692. package/src/interfaces/offchain/index.ts +4 -0
  693. package/src/interfaces/offchain/rpc.ts +56 -0
  694. package/src/interfaces/offchain/runtime.ts +39 -0
  695. package/src/interfaces/offchain/types.ts +13 -0
  696. package/src/interfaces/offences/definitions.ts +23 -0
  697. package/src/interfaces/offences/index.ts +4 -0
  698. package/src/interfaces/offences/types.ts +33 -0
  699. package/src/interfaces/ormlOracle/definitions.ts +15 -0
  700. package/src/interfaces/ormlOracle/index.ts +4 -0
  701. package/src/interfaces/ormlOracle/runtime.ts +48 -0
  702. package/src/interfaces/ormlOracle/types.ts +4 -0
  703. package/src/interfaces/ormlTokens/definitions.ts +15 -0
  704. package/src/interfaces/ormlTokens/index.ts +4 -0
  705. package/src/interfaces/ormlTokens/runtime.ts +30 -0
  706. package/src/interfaces/ormlTokens/types.ts +4 -0
  707. package/src/interfaces/parachains/SystemInherentData.spec.ts +29 -0
  708. package/src/interfaces/parachains/definitions.ts +571 -0
  709. package/src/interfaces/parachains/hrmp.ts +30 -0
  710. package/src/interfaces/parachains/index.ts +4 -0
  711. package/src/interfaces/parachains/runtime.ts +426 -0
  712. package/src/interfaces/parachains/slots.ts +59 -0
  713. package/src/interfaces/parachains/types.ts +984 -0
  714. package/src/interfaces/payment/definitions.ts +42 -0
  715. package/src/interfaces/payment/index.ts +4 -0
  716. package/src/interfaces/payment/rpc.ts +44 -0
  717. package/src/interfaces/payment/runtime.ts +186 -0
  718. package/src/interfaces/payment/types.ts +41 -0
  719. package/src/interfaces/poll/definitions.ts +14 -0
  720. package/src/interfaces/poll/index.ts +4 -0
  721. package/src/interfaces/poll/types.ts +9 -0
  722. package/src/interfaces/pow/definitions.ts +15 -0
  723. package/src/interfaces/pow/index.ts +4 -0
  724. package/src/interfaces/pow/runtime.ts +32 -0
  725. package/src/interfaces/pow/types.ts +4 -0
  726. package/src/interfaces/proxy/definitions.ts +26 -0
  727. package/src/interfaces/proxy/index.ts +4 -0
  728. package/src/interfaces/proxy/types.ts +30 -0
  729. package/src/interfaces/purchase/definitions.ts +23 -0
  730. package/src/interfaces/purchase/index.ts +4 -0
  731. package/src/interfaces/purchase/types.ts +27 -0
  732. package/src/interfaces/recovery/definitions.ts +24 -0
  733. package/src/interfaces/recovery/index.ts +4 -0
  734. package/src/interfaces/recovery/types.ts +22 -0
  735. package/src/interfaces/rpc/definitions.ts +19 -0
  736. package/src/interfaces/rpc/index.ts +4 -0
  737. package/src/interfaces/rpc/rpc.ts +12 -0
  738. package/src/interfaces/rpc/types.ts +12 -0
  739. package/src/interfaces/runtime/Digest.spec.ts +34 -0
  740. package/src/interfaces/runtime/Header.spec.ts +64 -0
  741. package/src/interfaces/runtime/KeyValue.spec.ts +41 -0
  742. package/src/interfaces/runtime/definitions.ts +236 -0
  743. package/src/interfaces/runtime/index.ts +4 -0
  744. package/src/interfaces/runtime/runtime.ts +117 -0
  745. package/src/interfaces/runtime/types.ts +422 -0
  746. package/src/interfaces/scaleInfo/definitions.ts +34 -0
  747. package/src/interfaces/scaleInfo/index.ts +4 -0
  748. package/src/interfaces/scaleInfo/types.ts +265 -0
  749. package/src/interfaces/scaleInfo/v0.ts +72 -0
  750. package/src/interfaces/scaleInfo/v1.ts +73 -0
  751. package/src/interfaces/scheduler/definitions.ts +31 -0
  752. package/src/interfaces/scheduler/index.ts +4 -0
  753. package/src/interfaces/scheduler/types.ts +40 -0
  754. package/src/interfaces/session/definitions.ts +55 -0
  755. package/src/interfaces/session/index.ts +4 -0
  756. package/src/interfaces/session/runtime.ts +34 -0
  757. package/src/interfaces/session/types.ts +79 -0
  758. package/src/interfaces/society/definitions.ts +36 -0
  759. package/src/interfaces/society/index.ts +4 -0
  760. package/src/interfaces/society/types.ts +50 -0
  761. package/src/interfaces/staking/CompactAssignments.spec.ts +207 -0
  762. package/src/interfaces/staking/Exposure.spec.ts +23 -0
  763. package/src/interfaces/staking/definitions.ts +311 -0
  764. package/src/interfaces/staking/index.ts +4 -0
  765. package/src/interfaces/staking/runtime.ts +24 -0
  766. package/src/interfaces/staking/types.ts +430 -0
  767. package/src/interfaces/state/KeyValueOption.spec.ts +19 -0
  768. package/src/interfaces/state/RuntimeVersion.spec.ts +42 -0
  769. package/src/interfaces/state/StorageChangeSet.spec.ts +49 -0
  770. package/src/interfaces/state/definitions.ts +95 -0
  771. package/src/interfaces/state/index.ts +4 -0
  772. package/src/interfaces/state/rpc.ts +416 -0
  773. package/src/interfaces/state/types.ts +124 -0
  774. package/src/interfaces/statement/definitions.ts +26 -0
  775. package/src/interfaces/statement/index.ts +4 -0
  776. package/src/interfaces/statement/runtime.ts +28 -0
  777. package/src/interfaces/statement/types.ts +28 -0
  778. package/src/interfaces/support/definitions.ts +19 -0
  779. package/src/interfaces/support/index.ts +4 -0
  780. package/src/interfaces/support/types.ts +15 -0
  781. package/src/interfaces/syncstate/definitions.ts +14 -0
  782. package/src/interfaces/syncstate/index.ts +4 -0
  783. package/src/interfaces/syncstate/rpc.ts +18 -0
  784. package/src/interfaces/syncstate/types.ts +4 -0
  785. package/src/interfaces/system/EventRecord.spec.ts +42 -0
  786. package/src/interfaces/system/definitions.ts +327 -0
  787. package/src/interfaces/system/index.ts +4 -0
  788. package/src/interfaces/system/rpc.ts +144 -0
  789. package/src/interfaces/system/runtime.ts +24 -0
  790. package/src/interfaces/system/types.ts +476 -0
  791. package/src/interfaces/treasury/definitions.ts +68 -0
  792. package/src/interfaces/treasury/index.ts +4 -0
  793. package/src/interfaces/treasury/types.ts +87 -0
  794. package/src/interfaces/txpayment/definitions.ts +11 -0
  795. package/src/interfaces/txpayment/index.ts +4 -0
  796. package/src/interfaces/txpayment/types.ts +9 -0
  797. package/src/interfaces/txqueue/definitions.ts +27 -0
  798. package/src/interfaces/txqueue/index.ts +4 -0
  799. package/src/interfaces/txqueue/runtime.ts +66 -0
  800. package/src/interfaces/txqueue/types.ts +33 -0
  801. package/src/interfaces/types.ts +82 -0
  802. package/src/interfaces/uniques/definitions.ts +50 -0
  803. package/src/interfaces/uniques/index.ts +4 -0
  804. package/src/interfaces/uniques/types.ts +62 -0
  805. package/src/interfaces/utility/definitions.ts +23 -0
  806. package/src/interfaces/utility/index.ts +4 -0
  807. package/src/interfaces/utility/types.ts +21 -0
  808. package/src/interfaces/vesting/definitions.ts +18 -0
  809. package/src/interfaces/vesting/index.ts +4 -0
  810. package/src/interfaces/vesting/types.ts +14 -0
  811. package/src/interfaces/xcm/definitions.ts +189 -0
  812. package/src/interfaces/xcm/index.ts +4 -0
  813. package/src/interfaces/xcm/types.ts +2546 -0
  814. package/src/interfaces/xcm/v0.ts +225 -0
  815. package/src/interfaces/xcm/v1.ts +224 -0
  816. package/src/interfaces/xcm/v2.ts +293 -0
  817. package/src/interfaces/xcm/v3.ts +386 -0
  818. package/src/interfaces/xcm/v4.ts +281 -0
  819. package/src/interfaces/xcm/v5.ts +314 -0
  820. package/src/interfaces/xcmPaymentApi/definitions.ts +25 -0
  821. package/src/interfaces/xcmPaymentApi/index.ts +4 -0
  822. package/src/interfaces/xcmPaymentApi/runtime.ts +48 -0
  823. package/src/interfaces/xcmPaymentApi/types.ts +16 -0
  824. package/src/interfaces/xcmRuntimeApi/definitions.ts +19 -0
  825. package/src/interfaces/xcmRuntimeApi/index.ts +4 -0
  826. package/src/interfaces/xcmRuntimeApi/runtime.ts +24 -0
  827. package/src/interfaces/xcmRuntimeApi/types.ts +13 -0
  828. package/src/lookup.ts +5 -0
  829. package/src/metadata/MagicNumber.spec.ts +29 -0
  830. package/src/metadata/MagicNumber.ts +18 -0
  831. package/src/metadata/Metadata.spec.ts +57 -0
  832. package/src/metadata/Metadata.ts +53 -0
  833. package/src/metadata/MetadataVersioned.ts +183 -0
  834. package/src/metadata/PortableRegistry/PortableRegistry.Range.spec.ts +58 -0
  835. package/src/metadata/PortableRegistry/PortableRegistry.ts +1095 -0
  836. package/src/metadata/PortableRegistry/index.ts +5 -0
  837. package/src/metadata/PortableRegistry/toV1.ts +130 -0
  838. package/src/metadata/README.md +10 -0
  839. package/src/metadata/decorate/constants/index.spec.ts +44 -0
  840. package/src/metadata/decorate/constants/index.ts +39 -0
  841. package/src/metadata/decorate/errors/index.spec.ts +47 -0
  842. package/src/metadata/decorate/errors/index.ts +58 -0
  843. package/src/metadata/decorate/events/index.spec.ts +52 -0
  844. package/src/metadata/decorate/events/index.ts +42 -0
  845. package/src/metadata/decorate/extrinsics/createUnchecked.ts +38 -0
  846. package/src/metadata/decorate/extrinsics/index.spec.ts +90 -0
  847. package/src/metadata/decorate/extrinsics/index.ts +66 -0
  848. package/src/metadata/decorate/index.spec.ts +57 -0
  849. package/src/metadata/decorate/index.ts +35 -0
  850. package/src/metadata/decorate/storage/createFunction.spec.ts +179 -0
  851. package/src/metadata/decorate/storage/createFunction.ts +258 -0
  852. package/src/metadata/decorate/storage/getHasher.spec.ts +30 -0
  853. package/src/metadata/decorate/storage/getHasher.ts +36 -0
  854. package/src/metadata/decorate/storage/getStorage.spec.ts +31 -0
  855. package/src/metadata/decorate/storage/getStorage.ts +20 -0
  856. package/src/metadata/decorate/storage/index.spec.ts +67 -0
  857. package/src/metadata/decorate/storage/index.ts +50 -0
  858. package/src/metadata/decorate/storage/substrate.spec.ts +36 -0
  859. package/src/metadata/decorate/storage/substrate.ts +56 -0
  860. package/src/metadata/decorate/storage/util.ts +101 -0
  861. package/src/metadata/decorate/types.ts +52 -0
  862. package/src/metadata/decorate/util.ts +20 -0
  863. package/src/metadata/index.ts +6 -0
  864. package/src/metadata/types.ts +9 -0
  865. package/src/metadata/util/extractTypes.ts +64 -0
  866. package/src/metadata/util/flattenUniq.spec.ts +20 -0
  867. package/src/metadata/util/flattenUniq.ts +19 -0
  868. package/src/metadata/util/getSiName.ts +11 -0
  869. package/src/metadata/util/getUniqTypes.ts +67 -0
  870. package/src/metadata/util/index.ts +8 -0
  871. package/src/metadata/util/testUtil.ts +217 -0
  872. package/src/metadata/util/toCallsOnly.spec.ts +46 -0
  873. package/src/metadata/util/toCallsOnly.ts +43 -0
  874. package/src/metadata/util/types.ts +9 -0
  875. package/src/metadata/util/validateTypes.ts +33 -0
  876. package/src/metadata/v10/Metadata.spec.ts +12 -0
  877. package/src/metadata/v10/toV11.ts +18 -0
  878. package/src/metadata/v11/Metadata.spec.ts +12 -0
  879. package/src/metadata/v11/toV12.ts +19 -0
  880. package/src/metadata/v12/Metadata.spec.ts +12 -0
  881. package/src/metadata/v12/toV13.ts +12 -0
  882. package/src/metadata/v13/Metadata.spec.ts +24 -0
  883. package/src/metadata/v13/toV14.ts +352 -0
  884. package/src/metadata/v14/Metadata.spec.ts +20 -0
  885. package/src/metadata/v14/toV15.ts +45 -0
  886. package/src/metadata/v15/Metadata.spec.ts +28 -0
  887. package/src/metadata/v15/toV16.ts +147 -0
  888. package/src/metadata/v16/Metadata.spec.ts +30 -0
  889. package/src/metadata/v16/toLatest.ts +13 -0
  890. package/src/metadata/v9/Metadata.spec.ts +12 -0
  891. package/src/metadata/v9/toV10.ts +62 -0
  892. package/src/metadata/versions.ts +17 -0
  893. package/src/mod.ts +4 -0
  894. package/src/packageDetect.ts +13 -0
  895. package/src/packageInfo.ts +6 -0
  896. package/src/primitive/Data.spec.ts +45 -0
  897. package/src/primitive/Data.ts +142 -0
  898. package/src/primitive/StorageKey.spec.ts +43 -0
  899. package/src/primitive/StorageKey.ts +251 -0
  900. package/src/primitive/index.ts +13 -0
  901. package/src/primitive/types.ts +22 -0
  902. package/src/types/augmentLookup.ts +23 -0
  903. package/src/types/augmentRegistry.ts +53 -0
  904. package/src/types/calls.ts +15 -0
  905. package/src/types/codec.ts +15 -0
  906. package/src/types/definitions.ts +119 -0
  907. package/src/types/detect.ts +148 -0
  908. package/src/types/events.ts +37 -0
  909. package/src/types/extrinsic.ts +262 -0
  910. package/src/types/index.ts +22 -0
  911. package/src/types/interfaces.ts +51 -0
  912. package/src/types/registry.ts +106 -0
  913. package/src/util/index.ts +4 -0
  914. package/src/util/storage.ts +24 -0
  915. package/tsconfig.build.json +17 -0
  916. package/tsconfig.build.tsbuildinfo +1 -0
  917. package/tsconfig.spec.json +22 -0
@@ -0,0 +1,639 @@
1
+ // Copyright 2017-2025 @polkadot/types authors & contributors
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ import type { AnyString, Codec, CodecClass, IU8a, LookupString } from '@pezkuwi/types-codec/types';
5
+ import type { CreateOptions, TypeDef } from '@pezkuwi/types-create/types';
6
+ import type { ExtDef } from '../extrinsic/signedExtensions/types.js';
7
+ import type { ChainProperties, DispatchErrorModule, DispatchErrorModuleU8, DispatchErrorModuleU8a, EventMetadataLatest, Hash, MetadataLatest, SiField, SiLookupTypeId, SiVariant, WeightV1, WeightV2 } from '../interfaces/types.js';
8
+ import type { CallFunction, CodecHasher, Definitions, DetectCodec, RegisteredTypes, Registry, RegistryError, RegistryTypes } from '../types/index.js';
9
+
10
+ import { DoNotConstruct, Json, Raw } from '@pezkuwi/types-codec';
11
+ import { constructTypeClass, createClassUnsafe, createTypeUnsafe } from '@pezkuwi/types-create';
12
+ import { assertReturn, formatBalance, isBn, isFunction, isNumber, isString, isU8a, lazyMethod, logger, objectSpread, stringCamelCase, stringify } from '@pezkuwi/util';
13
+ import { blake2AsU8a } from '@pezkuwi/util-crypto';
14
+
15
+ import { expandExtensionTypes, fallbackExtensions, findUnknownExtensions } from '../extrinsic/signedExtensions/index.js';
16
+ import { GenericEventData } from '../generic/Event.js';
17
+ import * as baseTypes from '../index.types.js';
18
+ import * as definitions from '../interfaces/definitions.js';
19
+ import { createCallFunction } from '../metadata/decorate/extrinsics/index.js';
20
+ import { decorateConstants, filterCallsSome, filterEventsSome } from '../metadata/decorate/index.js';
21
+ import { Metadata } from '../metadata/Metadata.js';
22
+ import { PortableRegistry } from '../metadata/PortableRegistry/index.js';
23
+ import { lazyVariants } from './lazy.js';
24
+
25
+ const DEFAULT_FIRST_CALL_IDX = new Uint8Array(2);
26
+
27
+ const l = logger('registry');
28
+
29
+ function sortDecimalStrings (a: string, b: string): number {
30
+ return parseInt(a, 10) - parseInt(b, 10);
31
+ }
32
+
33
+ function valueToString (v: { toString: () => string }): string {
34
+ return v.toString();
35
+ }
36
+
37
+ function getFieldArgs (lookup: PortableRegistry, fields: SiField[]): string[] {
38
+ const count = fields.length;
39
+ const args = new Array<string>(count);
40
+
41
+ for (let i = 0; i < count; i++) {
42
+ args[i] = lookup.getTypeDef(fields[i].type).type;
43
+ }
44
+
45
+ return args;
46
+ }
47
+
48
+ function clearRecord (record: Record<string, unknown>): void {
49
+ const keys = Object.keys(record);
50
+
51
+ for (let i = 0, count = keys.length; i < count; i++) {
52
+ delete record[keys[i]];
53
+ }
54
+ }
55
+
56
+ function getVariantStringIdx ({ index }: SiVariant): string {
57
+ return index.toString();
58
+ }
59
+
60
+ // create error mapping from metadata
61
+ function injectErrors (_: TypeRegistry, { lookup, pallets }: MetadataLatest, version: number, result: Record<string, Record<string, RegistryError>>): void {
62
+ clearRecord(result);
63
+
64
+ for (let i = 0, count = pallets.length; i < count; i++) {
65
+ const { errors, index, name } = pallets[i];
66
+
67
+ if (errors.isSome) {
68
+ const sectionName = stringCamelCase(name);
69
+
70
+ lazyMethod(result, version >= 12 ? index.toNumber() : i, () =>
71
+ lazyVariants(lookup, errors.unwrap(), getVariantStringIdx, ({ docs, fields, index, name }: SiVariant): RegistryError => ({
72
+ args: getFieldArgs(lookup, fields),
73
+ docs: docs.map(valueToString),
74
+ fields,
75
+ index: index.toNumber(),
76
+ method: name.toString(),
77
+ name: name.toString(),
78
+ section: sectionName
79
+ }))
80
+ );
81
+ }
82
+ }
83
+ }
84
+
85
+ // create event classes from metadata
86
+ function injectEvents (registry: TypeRegistry, { lookup, pallets }: MetadataLatest, version: number, result: Record<string, Record<string, CodecClass<GenericEventData>>>): void {
87
+ const filtered = pallets.filter(filterEventsSome);
88
+
89
+ clearRecord(result);
90
+
91
+ for (let i = 0, count = filtered.length; i < count; i++) {
92
+ const { events, index, name } = filtered[i];
93
+
94
+ lazyMethod(result, version >= 12 ? index.toNumber() : i, () =>
95
+ lazyVariants(lookup, events.unwrap(), getVariantStringIdx, (variant: SiVariant): CodecClass<GenericEventData> => {
96
+ const meta = registry.createType<EventMetadataLatest>('EventMetadataLatest', objectSpread({}, variant, { args: getFieldArgs(lookup, variant.fields) }));
97
+
98
+ return class extends GenericEventData {
99
+ constructor (registry: Registry, value: Uint8Array) {
100
+ super(registry, value, meta, stringCamelCase(name), variant.name.toString());
101
+ }
102
+ };
103
+ })
104
+ );
105
+ }
106
+ }
107
+
108
+ // create extrinsic mapping from metadata
109
+ function injectExtrinsics (registry: TypeRegistry, { lookup, pallets }: MetadataLatest, version: number, result: Record<string, Record<string, CallFunction>>, mapping: Record<string, string[]>): void {
110
+ const filtered = pallets.filter(filterCallsSome);
111
+
112
+ clearRecord(result);
113
+ clearRecord(mapping);
114
+
115
+ for (let i = 0, count = filtered.length; i < count; i++) {
116
+ const { calls, index, name } = filtered[i];
117
+ const sectionIndex = version >= 12 ? index.toNumber() : i;
118
+ const sectionName = stringCamelCase(name);
119
+ const allCalls = calls.unwrap();
120
+
121
+ lazyMethod(result, sectionIndex, () =>
122
+ lazyVariants(lookup, allCalls, getVariantStringIdx, (variant: SiVariant) =>
123
+ createCallFunction(registry, lookup, variant, sectionName, sectionIndex)
124
+ )
125
+ );
126
+
127
+ const { path } = registry.lookup.getSiType(allCalls.type);
128
+
129
+ // frame_system::pallet::Call / pallet_balances::pallet::Call / polkadot_runtime_parachains::configuration::pallet::Call /
130
+ const palletIdx = path.findIndex((v) => v.eq('pallet'));
131
+
132
+ if (palletIdx !== -1) {
133
+ const name = stringCamelCase(
134
+ path
135
+ .slice(0, palletIdx)
136
+ .map((p, i) =>
137
+ i === 0
138
+ // frame_system || pallet_balances
139
+ ? p.replace(/^(frame|pallet)_/, '')
140
+ : p
141
+ )
142
+ .join(' ')
143
+ );
144
+
145
+ if (!mapping[name]) {
146
+ mapping[name] = [sectionName];
147
+ } else {
148
+ mapping[name].push(sectionName);
149
+ }
150
+ }
151
+ }
152
+ }
153
+
154
+ // extract additional properties from the metadata
155
+ function extractProperties (registry: TypeRegistry, metadata: Metadata): ChainProperties | undefined {
156
+ const original = registry.getChainProperties();
157
+ const constants = decorateConstants(registry, metadata.asLatest, metadata.version);
158
+ const ss58Format = constants['system'] && (constants['system']['sS58Prefix'] || constants['system']['ss58Prefix']);
159
+
160
+ if (!ss58Format) {
161
+ return original;
162
+ }
163
+
164
+ const { isEthereum, tokenDecimals, tokenSymbol } = original || {};
165
+
166
+ return registry.createTypeUnsafe<ChainProperties>('ChainProperties', [{ isEthereum, ss58Format, tokenDecimals, tokenSymbol }]);
167
+ }
168
+
169
+ export class TypeRegistry implements Registry {
170
+ #chainProperties?: ChainProperties;
171
+ #classes = new Map<string, CodecClass>();
172
+ #definitions = new Map<string, string>();
173
+ #firstCallIndex: Uint8Array | null = null;
174
+ #hasher: (data: Uint8Array) => Uint8Array = blake2AsU8a;
175
+ #knownTypes: RegisteredTypes = {};
176
+ #lookup?: PortableRegistry;
177
+ #metadata?: MetadataLatest;
178
+ #metadataVersion = 0;
179
+ #signedExtensions: string[] = fallbackExtensions;
180
+ #unknownTypes = new Map<string, boolean>();
181
+ #userExtensions?: ExtDef | undefined;
182
+
183
+ readonly #knownDefaults: Map<string, CodecClass>;
184
+ readonly #knownDefaultsEntries: [string, CodecClass][];
185
+ readonly #knownDefinitions: Record<string, Definitions>;
186
+ readonly #metadataCalls: Record<string, Record<string, CallFunction>> = {};
187
+ readonly #metadataErrors: Record<string, Record<string, RegistryError>> = {};
188
+ readonly #metadataEvents: Record<string, Record<string, CodecClass<GenericEventData>>> = {};
189
+ readonly #moduleMap: Record<string, string[]> = {};
190
+
191
+ public createdAtHash?: Hash;
192
+
193
+ constructor (createdAtHash?: Hash | Uint8Array | string) {
194
+ this.#knownDefaults = new Map(Object.entries({ Json, Metadata, PortableRegistry, Raw, ...baseTypes }));
195
+ this.#knownDefaultsEntries = Array.from(this.#knownDefaults.entries());
196
+ this.#knownDefinitions = definitions;
197
+
198
+ const allKnown = Object.values(this.#knownDefinitions);
199
+
200
+ for (let i = 0, count = allKnown.length; i < count; i++) {
201
+ this.register(allKnown[i].types as unknown as RegistryTypes);
202
+ }
203
+
204
+ if (createdAtHash) {
205
+ this.createdAtHash = this.createType('BlockHash', createdAtHash);
206
+ }
207
+ }
208
+
209
+ public get chainDecimals (): number[] {
210
+ if (this.#chainProperties?.tokenDecimals.isSome) {
211
+ const allDecimals = this.#chainProperties.tokenDecimals.unwrap();
212
+
213
+ if (allDecimals.length) {
214
+ return allDecimals.map((b) => b.toNumber());
215
+ }
216
+ }
217
+
218
+ return [12];
219
+ }
220
+
221
+ public get chainIsEthereum (): boolean {
222
+ return this.#chainProperties?.isEthereum.isTrue || false;
223
+ }
224
+
225
+ public get chainSS58 (): number | undefined {
226
+ return this.#chainProperties?.ss58Format.isSome
227
+ ? this.#chainProperties.ss58Format.unwrap().toNumber()
228
+ : undefined;
229
+ }
230
+
231
+ public get chainTokens (): string[] {
232
+ if (this.#chainProperties?.tokenSymbol.isSome) {
233
+ const allTokens = this.#chainProperties.tokenSymbol.unwrap();
234
+
235
+ if (allTokens.length) {
236
+ return allTokens.map(valueToString);
237
+ }
238
+ }
239
+
240
+ return [formatBalance.getDefaults().unit];
241
+ }
242
+
243
+ public get firstCallIndex (): Uint8Array {
244
+ return this.#firstCallIndex || DEFAULT_FIRST_CALL_IDX;
245
+ }
246
+
247
+ /**
248
+ * @description Returns true if the type is in a Compat format
249
+ */
250
+ public isLookupType (value: string): value is LookupString {
251
+ return /Lookup\d+$/.test(value);
252
+ }
253
+
254
+ /**
255
+ * @description Creates a lookup string from the supplied id
256
+ */
257
+ public createLookupType (lookupId: SiLookupTypeId | number): LookupString {
258
+ return `Lookup${typeof lookupId === 'number' ? lookupId : lookupId.toNumber()}`;
259
+ }
260
+
261
+ public get knownTypes (): RegisteredTypes {
262
+ return this.#knownTypes;
263
+ }
264
+
265
+ public get lookup (): PortableRegistry {
266
+ return assertReturn(this.#lookup, 'PortableRegistry has not been set on this registry');
267
+ }
268
+
269
+ public get metadata (): MetadataLatest {
270
+ return assertReturn(this.#metadata, 'Metadata has not been set on this registry');
271
+ }
272
+
273
+ public get unknownTypes (): string[] {
274
+ return [...this.#unknownTypes.keys()];
275
+ }
276
+
277
+ public get signedExtensions (): string[] {
278
+ return this.#signedExtensions;
279
+ }
280
+
281
+ public clearCache (): void {
282
+ this.#classes = new Map();
283
+ }
284
+
285
+ /**
286
+ * @describe Creates an instance of the class
287
+ */
288
+ public createClass <T extends Codec = Codec, K extends string = string> (type: K): CodecClass<DetectCodec<T, K>> {
289
+ return createClassUnsafe<DetectCodec<T, K>>(this, type);
290
+ }
291
+
292
+ /**
293
+ * @describe Creates an instance of the class
294
+ */
295
+ public createClassUnsafe <T extends Codec = Codec, K extends string = string> (type: K): CodecClass<T> {
296
+ return createClassUnsafe(this, type);
297
+ }
298
+
299
+ /**
300
+ * @description Creates an instance of a type as registered
301
+ */
302
+ public createType <T extends Codec = Codec, K extends string = string> (type: K, ...params: unknown[]): DetectCodec<T, K> {
303
+ return createTypeUnsafe(this, type, params);
304
+ }
305
+
306
+ /**
307
+ * @description Creates an instance of a type as registered
308
+ */
309
+ public createTypeUnsafe <T extends Codec = Codec, K extends string = string> (type: K, params: unknown[], options?: CreateOptions): T {
310
+ return createTypeUnsafe(this, type, params, options);
311
+ }
312
+
313
+ // find a specific call
314
+ public findMetaCall (callIndex: Uint8Array): CallFunction {
315
+ const [section, method] = [callIndex[0], callIndex[1]];
316
+
317
+ return assertReturn(
318
+ this.#metadataCalls[`${section}`] && this.#metadataCalls[`${section}`][`${method}`],
319
+ () => `findMetaCall: Unable to find Call with index [${section}, ${method}]/[${callIndex.toString()}]`
320
+ );
321
+ }
322
+
323
+ // finds an error
324
+ public findMetaError (errorIndex: Uint8Array | DispatchErrorModule | DispatchErrorModuleU8 | DispatchErrorModuleU8a): RegistryError {
325
+ const [section, method] = isU8a(errorIndex)
326
+ ? [errorIndex[0], errorIndex[1]]
327
+ : [
328
+ errorIndex.index.toNumber(),
329
+ isU8a(errorIndex.error)
330
+ ? errorIndex.error[0]
331
+ : errorIndex.error.toNumber()
332
+ ];
333
+
334
+ return assertReturn(
335
+ this.#metadataErrors[`${section}`] && this.#metadataErrors[`${section}`][`${method}`],
336
+ () => `findMetaError: Unable to find Error with index [${section}, ${method}]/[${errorIndex.toString()}]`
337
+ );
338
+ }
339
+
340
+ public findMetaEvent (eventIndex: Uint8Array): CodecClass<GenericEventData> {
341
+ const [section, method] = [eventIndex[0], eventIndex[1]];
342
+
343
+ return assertReturn(
344
+ this.#metadataEvents[`${section}`] && this.#metadataEvents[`${section}`][`${method}`],
345
+ () => `findMetaEvent: Unable to find Event with index [${section}, ${method}]/[${eventIndex.toString()}]`
346
+ );
347
+ }
348
+
349
+ public get <T extends Codec = Codec, K extends string = string> (name: K, withUnknown?: boolean, knownTypeDef?: TypeDef): CodecClass<T> | undefined {
350
+ return this.getUnsafe(name, withUnknown, knownTypeDef);
351
+ }
352
+
353
+ public getUnsafe <T extends Codec = Codec, K extends string = string> (name: K, withUnknown?: boolean, knownTypeDef?: TypeDef): CodecClass<T> | undefined {
354
+ let Type = this.#classes.get(name) || this.#knownDefaults.get(name);
355
+
356
+ // we have not already created the type, attempt it
357
+ if (!Type) {
358
+ const definition = this.#definitions.get(name);
359
+ let BaseType: CodecClass | undefined;
360
+
361
+ // we have a definition, so create the class now (lazily)
362
+ if (definition) {
363
+ BaseType = createClassUnsafe(this, definition);
364
+ } else if (knownTypeDef) {
365
+ BaseType = constructTypeClass(this, knownTypeDef);
366
+ } else if (withUnknown) {
367
+ l.warn(`Unable to resolve type ${name}, it will fail on construction`);
368
+
369
+ this.#unknownTypes.set(name, true);
370
+
371
+ BaseType = DoNotConstruct.with(name);
372
+ }
373
+
374
+ if (BaseType) {
375
+ // NOTE If we didn't extend here, we would have strange artifacts. An example is
376
+ // Balance, with this, new Balance() instanceof u128 is true, but Balance !== u128
377
+ // Additionally, we now pass through the registry, which is a link to ourselves
378
+ Type = class extends BaseType {};
379
+
380
+ this.#classes.set(name, Type);
381
+
382
+ // In the case of lookups, we also want to store the actual class against
383
+ // the lookup name, instad of having to traverse again
384
+ if (knownTypeDef && isNumber(knownTypeDef.lookupIndex)) {
385
+ this.#classes.set(this.createLookupType(knownTypeDef.lookupIndex), Type);
386
+ }
387
+ }
388
+ }
389
+
390
+ return Type as unknown as CodecClass<T>;
391
+ }
392
+
393
+ public getChainProperties (): ChainProperties | undefined {
394
+ return this.#chainProperties;
395
+ }
396
+
397
+ public getClassName (Type: CodecClass): string | undefined {
398
+ // we cannot rely on export order (anymore, since babel/core 7.15.8), so in the case of
399
+ // items such as u32 & U32, we get the lowercase versions here... not quite as optimal
400
+ // (previously this used to be a simple find & return)
401
+ const names: string[] = [];
402
+
403
+ for (const [name, Clazz] of this.#knownDefaultsEntries) {
404
+ if (Type === Clazz) {
405
+ names.push(name);
406
+ }
407
+ }
408
+
409
+ for (const [name, Clazz] of this.#classes.entries()) {
410
+ if (Type === Clazz) {
411
+ names.push(name);
412
+ }
413
+ }
414
+
415
+ return names.length
416
+ // both sort and reverse are done in-place
417
+ // ['U32', 'u32'] -> ['u32', 'U32']
418
+ ? names.sort().reverse()[0]
419
+ : undefined;
420
+ }
421
+
422
+ public getDefinition (typeName: string): string | undefined {
423
+ return this.#definitions.get(typeName);
424
+ }
425
+
426
+ public getModuleInstances (specName: AnyString, moduleName: string): string[] | undefined {
427
+ return this.#knownTypes?.typesBundle?.spec?.[specName.toString()]?.instances?.[moduleName] || this.#moduleMap[moduleName];
428
+ }
429
+
430
+ public getOrThrow <T extends Codec = Codec, K extends string = string, R = DetectCodec<T, K>> (name: K): CodecClass<R> {
431
+ const Clazz = this.get<T, K>(name);
432
+
433
+ if (!Clazz) {
434
+ throw new Error(`type ${name} not found`);
435
+ }
436
+
437
+ return Clazz as unknown as CodecClass<R>;
438
+ }
439
+
440
+ public getOrUnknown <T extends Codec = Codec, K extends string = string, R = DetectCodec<T, K>> (name: K): CodecClass<R> {
441
+ return this.get<T, K>(name, true) as unknown as CodecClass<R>;
442
+ }
443
+
444
+ // Only used in extrinsic version 5
445
+ public getTransactionExtensionVersion (): number {
446
+ return 0;
447
+ }
448
+
449
+ public getSignedExtensionExtra (): Record<string, string> {
450
+ return expandExtensionTypes(this.#signedExtensions, 'payload', this.#userExtensions);
451
+ }
452
+
453
+ public getSignedExtensionTypes (): Record<string, string> {
454
+ return expandExtensionTypes(this.#signedExtensions, 'extrinsic', this.#userExtensions);
455
+ }
456
+
457
+ public hasClass (name: string): boolean {
458
+ return this.#classes.has(name) || !!this.#knownDefaults.has(name);
459
+ }
460
+
461
+ public hasDef (name: string): boolean {
462
+ return this.#definitions.has(name);
463
+ }
464
+
465
+ public hasType (name: string): boolean {
466
+ return !this.#unknownTypes.get(name) && (this.hasClass(name) || this.hasDef(name));
467
+ }
468
+
469
+ public hash (data: Uint8Array): IU8a {
470
+ return this.createType('CodecHash', this.#hasher(data));
471
+ }
472
+
473
+ public register (type: CodecClass | RegistryTypes): void;
474
+
475
+ // eslint-disable-next-line no-dupe-class-members
476
+ public register (name: string, type: CodecClass): void;
477
+
478
+ // eslint-disable-next-line no-dupe-class-members
479
+ public register (arg1: string | CodecClass | RegistryTypes, arg2?: CodecClass): void {
480
+ // NOTE Constructors appear as functions here
481
+ if (isFunction(arg1)) {
482
+ this.#classes.set(arg1.name, arg1);
483
+ } else if (isString(arg1)) {
484
+ if (!isFunction(arg2)) {
485
+ throw new Error(`Expected class definition passed to '${arg1}' registration`);
486
+ } else if (arg1 === arg2.toString()) {
487
+ throw new Error(`Unable to register circular ${arg1} === ${arg1}`);
488
+ }
489
+
490
+ this.#classes.set(arg1, arg2);
491
+ } else {
492
+ this.#registerObject(arg1);
493
+ }
494
+ }
495
+
496
+ #registerObject = (obj: RegistryTypes): void => {
497
+ const entries = Object.entries(obj);
498
+
499
+ for (let e = 0, count = entries.length; e < count; e++) {
500
+ const [name, type] = entries[e];
501
+
502
+ if (isFunction(type)) {
503
+ // This _looks_ a bit funny, but `typeof Clazz === 'function'
504
+ this.#classes.set(name, type);
505
+ } else {
506
+ const def = isString(type)
507
+ ? type
508
+ : stringify(type);
509
+
510
+ if (name === def) {
511
+ throw new Error(`Unable to register circular ${name} === ${def}`);
512
+ }
513
+
514
+ // we already have this type, remove the classes registered for it
515
+ if (this.#classes.has(name)) {
516
+ this.#classes.delete(name);
517
+ }
518
+
519
+ this.#definitions.set(name, def);
520
+ }
521
+ }
522
+ };
523
+
524
+ // sets the chain properties
525
+ public setChainProperties (properties?: ChainProperties): void {
526
+ if (properties) {
527
+ this.#chainProperties = properties;
528
+ }
529
+ }
530
+
531
+ setHasher (hasher?: CodecHasher | null): void {
532
+ this.#hasher = hasher || blake2AsU8a;
533
+ }
534
+
535
+ setKnownTypes (knownTypes: RegisteredTypes): void {
536
+ this.#knownTypes = knownTypes;
537
+ }
538
+
539
+ setLookup (lookup: PortableRegistry): void {
540
+ this.#lookup = lookup;
541
+
542
+ // register all applicable types found
543
+ lookup.register();
544
+ }
545
+
546
+ // register alias types alongside the portable/lookup setup
547
+ // (we don't combine this into setLookup since that would/could
548
+ // affect stand-along lookups, such as ABIs which don't have
549
+ // actual on-chain metadata)
550
+ #registerLookup = (lookup: PortableRegistry): void => {
551
+ // attach the lookup before we register any types
552
+ this.setLookup(lookup);
553
+
554
+ // we detect based on runtime configuration
555
+ let Weight: string | null = null;
556
+
557
+ if (this.hasType('SpWeightsWeightV2Weight')) {
558
+ // detection for WeightV2 type based on latest naming
559
+ const weightv2 = this.createType<WeightV2>('SpWeightsWeightV2Weight');
560
+
561
+ Weight = weightv2.refTime && weightv2.proofSize
562
+ // with both refTime & proofSize we use as-is (WeightV2)
563
+ ? 'SpWeightsWeightV2Weight'
564
+ // fallback to WeightV1 (WeightV1.5 is a struct, single field)
565
+ : 'WeightV1';
566
+ } else if (!isBn(this.createType<WeightV1>('Weight'))) {
567
+ // where we have an already-supplied BN override, we don't clobber
568
+ // it with our detected value (This protects against pre-defines
569
+ // where Weight may be aliassed to WeightV0, e.g. in early Kusama chains)
570
+ Weight = 'WeightV1';
571
+ }
572
+
573
+ if (Weight) {
574
+ // we have detected a version, adjust the definition
575
+ this.register({ Weight });
576
+ }
577
+ };
578
+
579
+ // sets the metadata
580
+ public setMetadata (metadata: Metadata, signedExtensions?: string[], userExtensions?: ExtDef, noInitWarn?: boolean): void {
581
+ this.#metadata = metadata.asLatest;
582
+ this.#metadataVersion = metadata.version;
583
+ this.#firstCallIndex = null;
584
+
585
+ // attach the lookup at this point and register relevant types (before injecting)
586
+ this.#registerLookup(this.#metadata.lookup);
587
+
588
+ injectExtrinsics(this, this.#metadata, this.#metadataVersion, this.#metadataCalls, this.#moduleMap);
589
+ injectErrors(this, this.#metadata, this.#metadataVersion, this.#metadataErrors);
590
+ injectEvents(this, this.#metadata, this.#metadataVersion, this.#metadataEvents);
591
+
592
+ // set the default call index (the lowest section, the lowest method)
593
+ // in most chains this should be 0,0
594
+ const [defSection] = Object
595
+ .keys(this.#metadataCalls)
596
+ .sort(sortDecimalStrings);
597
+
598
+ if (defSection) {
599
+ const [defMethod] = Object
600
+ .keys(this.#metadataCalls[defSection])
601
+ .sort(sortDecimalStrings);
602
+
603
+ if (defMethod) {
604
+ this.#firstCallIndex = new Uint8Array([parseInt(defSection, 10), parseInt(defMethod, 10)]);
605
+ }
606
+ }
607
+
608
+ // setup the available extensions
609
+ this.setSignedExtensions(
610
+ signedExtensions || (
611
+ this.#metadata.extrinsic.versions.length > 0 && this.#metadata.extrinsic.versions.every((value) => value > 0)
612
+ // FIXME Use the extension and their injected types
613
+ ? this.#metadata.extrinsic.transactionExtensions.map(({ identifier }) => identifier.toString())
614
+ : fallbackExtensions
615
+ ),
616
+ userExtensions,
617
+ noInitWarn
618
+ );
619
+
620
+ // setup the chain properties with format overrides
621
+ this.setChainProperties(
622
+ extractProperties(this, metadata)
623
+ );
624
+ }
625
+
626
+ // sets the available signed extensions
627
+ setSignedExtensions (signedExtensions: string[] = fallbackExtensions, userExtensions?: ExtDef, noInitWarn?: boolean): void {
628
+ this.#signedExtensions = signedExtensions;
629
+ this.#userExtensions = userExtensions;
630
+
631
+ if (!noInitWarn) {
632
+ const unknown = findUnknownExtensions(this.#signedExtensions, this.#userExtensions);
633
+
634
+ if (unknown.length) {
635
+ l.warn(`Unknown signed extensions ${unknown.join(', ')} found, treating them as no-effect`);
636
+ }
637
+ }
638
+ }
639
+ }
@@ -0,0 +1,9 @@
1
+ // Copyright 2017-2025 @polkadot/types authors & contributors
2
+ // SPDX-License-Identifier: Apache-2.0
3
+
4
+ // all types
5
+ export type { CodecCreateOptions as CreateOptions } from '@pezkuwi/types-codec/types';
6
+ export type { TypeDef } from '@pezkuwi/types-create/types';
7
+
8
+ // all enums
9
+ export { TypeDefInfo } from '@pezkuwi/types-create';