@pezkuwi/types-codec 16.5.5 → 16.5.8

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 (995) hide show
  1. package/LICENSE +201 -0
  2. package/abstract/Array.d.ts +89 -0
  3. package/abstract/Array.js +166 -0
  4. package/abstract/Base.d.ts +75 -0
  5. package/abstract/Base.js +101 -0
  6. package/abstract/Int.d.ts +80 -0
  7. package/abstract/Int.js +226 -0
  8. package/abstract/Object.d.ts +67 -0
  9. package/abstract/Object.js +40 -0
  10. package/abstract/index.d.ts +3 -0
  11. package/abstract/index.js +3 -0
  12. package/base/Compact.d.ts +88 -0
  13. package/base/Compact.js +159 -0
  14. package/base/DoNotConstruct.d.ts +63 -0
  15. package/base/DoNotConstruct.js +95 -0
  16. package/base/Enum.d.ts +118 -0
  17. package/base/Enum.js +369 -0
  18. package/base/Int.d.ts +16 -0
  19. package/base/Int.js +26 -0
  20. package/base/Null.d.ts +56 -0
  21. package/base/Null.js +77 -0
  22. package/base/Option.d.ts +94 -0
  23. package/base/Option.js +232 -0
  24. package/base/Result.d.ts +38 -0
  25. package/base/Result.js +63 -0
  26. package/base/Tuple.d.ts +42 -0
  27. package/base/Tuple.js +110 -0
  28. package/base/UInt.d.ts +15 -0
  29. package/base/UInt.js +23 -0
  30. package/base/Vec.d.ts +28 -0
  31. package/base/Vec.js +102 -0
  32. package/base/VecAny.d.ts +15 -0
  33. package/base/VecAny.js +17 -0
  34. package/base/VecFixed.d.ts +30 -0
  35. package/base/VecFixed.js +67 -0
  36. package/base/index.d.ts +12 -0
  37. package/base/index.js +12 -0
  38. package/build/LICENSE +201 -0
  39. package/build/README.md +3 -0
  40. package/build/abstract/Array.js +166 -0
  41. package/build/abstract/Base.js +101 -0
  42. package/build/abstract/Int.js +226 -0
  43. package/build/abstract/Object.js +40 -0
  44. package/build/abstract/index.js +3 -0
  45. package/build/base/Compact.js +159 -0
  46. package/build/base/DoNotConstruct.js +95 -0
  47. package/build/base/Enum.js +369 -0
  48. package/build/base/Int.d.ts +1 -1
  49. package/build/base/Int.js +26 -0
  50. package/build/base/Null.js +77 -0
  51. package/build/base/Option.js +232 -0
  52. package/build/base/Result.js +63 -0
  53. package/build/base/Tuple.js +110 -0
  54. package/build/base/UInt.d.ts +1 -1
  55. package/build/base/UInt.js +23 -0
  56. package/build/base/Vec.js +102 -0
  57. package/build/base/VecAny.js +17 -0
  58. package/build/base/VecFixed.js +67 -0
  59. package/build/base/index.js +12 -0
  60. package/build/bundle.js +7 -0
  61. package/build/cjs/abstract/Array.d.ts +89 -0
  62. package/build/cjs/abstract/Array.js +170 -0
  63. package/build/cjs/abstract/Base.d.ts +75 -0
  64. package/build/cjs/abstract/Base.js +105 -0
  65. package/build/cjs/abstract/Int.d.ts +80 -0
  66. package/build/cjs/abstract/Int.js +230 -0
  67. package/build/cjs/abstract/Object.d.ts +67 -0
  68. package/build/cjs/abstract/Object.js +44 -0
  69. package/build/cjs/abstract/index.d.ts +3 -0
  70. package/build/cjs/abstract/index.js +9 -0
  71. package/build/cjs/base/Compact.d.ts +88 -0
  72. package/build/cjs/base/Compact.js +163 -0
  73. package/build/cjs/base/DoNotConstruct.d.ts +63 -0
  74. package/build/cjs/base/DoNotConstruct.js +99 -0
  75. package/build/cjs/base/Enum.d.ts +118 -0
  76. package/build/cjs/base/Enum.js +373 -0
  77. package/build/cjs/base/Int.d.ts +16 -0
  78. package/build/cjs/base/Int.js +30 -0
  79. package/build/cjs/base/Null.d.ts +56 -0
  80. package/build/cjs/base/Null.js +81 -0
  81. package/build/cjs/base/Option.d.ts +94 -0
  82. package/build/cjs/base/Option.js +236 -0
  83. package/build/cjs/base/Result.d.ts +38 -0
  84. package/build/cjs/base/Result.js +67 -0
  85. package/build/cjs/base/Tuple.d.ts +42 -0
  86. package/build/cjs/base/Tuple.js +114 -0
  87. package/build/cjs/base/UInt.d.ts +15 -0
  88. package/build/cjs/base/UInt.js +27 -0
  89. package/build/cjs/base/Vec.d.ts +28 -0
  90. package/build/cjs/base/Vec.js +107 -0
  91. package/build/cjs/base/VecAny.d.ts +15 -0
  92. package/build/cjs/base/VecAny.js +21 -0
  93. package/build/cjs/base/VecFixed.d.ts +30 -0
  94. package/build/cjs/base/VecFixed.js +71 -0
  95. package/build/cjs/base/index.d.ts +12 -0
  96. package/build/cjs/base/index.js +27 -0
  97. package/build/cjs/bundle.d.ts +7 -0
  98. package/build/cjs/bundle.js +12 -0
  99. package/build/cjs/extended/BTreeMap.d.ts +5 -0
  100. package/build/cjs/extended/BTreeMap.js +14 -0
  101. package/build/cjs/extended/BTreeSet.d.ts +64 -0
  102. package/build/cjs/extended/BTreeSet.js +189 -0
  103. package/build/cjs/extended/BitVec.d.ts +37 -0
  104. package/build/cjs/extended/BitVec.js +112 -0
  105. package/build/cjs/extended/Bytes.d.ts +29 -0
  106. package/build/cjs/extended/Bytes.js +74 -0
  107. package/build/cjs/extended/HashMap.d.ts +5 -0
  108. package/build/cjs/extended/HashMap.js +14 -0
  109. package/build/cjs/extended/Linkage.d.ts +37 -0
  110. package/build/cjs/extended/Linkage.js +70 -0
  111. package/build/cjs/extended/Map.d.ts +59 -0
  112. package/build/cjs/extended/Map.js +204 -0
  113. package/build/cjs/extended/OptionBool.d.ts +36 -0
  114. package/build/cjs/extended/OptionBool.js +76 -0
  115. package/build/cjs/extended/Range.d.ts +29 -0
  116. package/build/cjs/extended/Range.js +42 -0
  117. package/build/cjs/extended/RangeInclusive.d.ts +6 -0
  118. package/build/cjs/extended/RangeInclusive.js +17 -0
  119. package/build/cjs/extended/Type.d.ts +16 -0
  120. package/build/cjs/extended/Type.js +25 -0
  121. package/build/cjs/extended/U8aFixed.d.ts +16 -0
  122. package/build/cjs/extended/U8aFixed.js +46 -0
  123. package/build/cjs/extended/WrapperKeepOpaque.d.ts +40 -0
  124. package/build/cjs/extended/WrapperKeepOpaque.js +103 -0
  125. package/build/cjs/extended/WrapperOpaque.d.ts +10 -0
  126. package/build/cjs/extended/WrapperOpaque.js +23 -0
  127. package/build/cjs/extended/index.d.ts +14 -0
  128. package/build/cjs/extended/index.js +32 -0
  129. package/build/cjs/index.d.ts +2 -0
  130. package/build/cjs/index.js +5 -0
  131. package/build/cjs/native/Bool.d.ts +71 -0
  132. package/build/cjs/native/Bool.js +113 -0
  133. package/build/cjs/native/Date.d.ts +84 -0
  134. package/build/cjs/native/Date.js +144 -0
  135. package/build/cjs/native/Float.d.ts +68 -0
  136. package/build/cjs/native/Float.js +111 -0
  137. package/build/cjs/native/Json.d.ts +69 -0
  138. package/build/cjs/native/Json.js +121 -0
  139. package/build/cjs/native/Raw.d.ts +87 -0
  140. package/build/cjs/native/Raw.js +144 -0
  141. package/build/cjs/native/Set.d.ts +84 -0
  142. package/build/cjs/native/Set.js +219 -0
  143. package/build/cjs/native/Struct.d.ts +106 -0
  144. package/build/cjs/native/Struct.data.js +4 -0
  145. package/build/cjs/native/Struct.js +264 -0
  146. package/build/cjs/native/Text.d.ts +77 -0
  147. package/build/cjs/native/Text.js +154 -0
  148. package/build/cjs/native/index.d.ts +8 -0
  149. package/build/cjs/native/index.js +22 -0
  150. package/build/cjs/package.json +3 -0
  151. package/build/cjs/packageDetect.d.ts +1 -0
  152. package/build/cjs/packageDetect.js +5 -0
  153. package/build/cjs/packageInfo.d.ts +6 -0
  154. package/build/cjs/packageInfo.js +4 -0
  155. package/build/cjs/primitive/F32.d.ts +11 -0
  156. package/build/cjs/primitive/F32.js +14 -0
  157. package/build/cjs/primitive/F64.d.ts +11 -0
  158. package/build/cjs/primitive/F64.js +14 -0
  159. package/build/cjs/primitive/I128.d.ts +11 -0
  160. package/build/cjs/primitive/I128.js +14 -0
  161. package/build/cjs/primitive/I16.d.ts +11 -0
  162. package/build/cjs/primitive/I16.js +14 -0
  163. package/build/cjs/primitive/I256.d.ts +11 -0
  164. package/build/cjs/primitive/I256.js +14 -0
  165. package/build/cjs/primitive/I32.d.ts +11 -0
  166. package/build/cjs/primitive/I32.js +14 -0
  167. package/build/cjs/primitive/I64.d.ts +11 -0
  168. package/build/cjs/primitive/I64.js +14 -0
  169. package/build/cjs/primitive/I8.d.ts +11 -0
  170. package/build/cjs/primitive/I8.js +14 -0
  171. package/build/cjs/primitive/ISize.d.ts +12 -0
  172. package/build/cjs/primitive/ISize.js +18 -0
  173. package/build/cjs/primitive/U128.d.ts +11 -0
  174. package/build/cjs/primitive/U128.js +14 -0
  175. package/build/cjs/primitive/U16.d.ts +11 -0
  176. package/build/cjs/primitive/U16.js +14 -0
  177. package/build/cjs/primitive/U256.d.ts +11 -0
  178. package/build/cjs/primitive/U256.js +14 -0
  179. package/build/cjs/primitive/U32.d.ts +11 -0
  180. package/build/cjs/primitive/U32.js +14 -0
  181. package/build/cjs/primitive/U64.d.ts +11 -0
  182. package/build/cjs/primitive/U64.js +14 -0
  183. package/build/cjs/primitive/U8.d.ts +11 -0
  184. package/build/cjs/primitive/U8.js +14 -0
  185. package/build/cjs/primitive/USize.d.ts +12 -0
  186. package/build/cjs/primitive/USize.js +18 -0
  187. package/build/cjs/primitive/index.d.ts +16 -0
  188. package/build/cjs/primitive/index.js +51 -0
  189. package/build/cjs/types/codec.d.ts +113 -0
  190. package/build/cjs/types/codec.js +2 -0
  191. package/build/cjs/types/helpers.d.ts +27 -0
  192. package/build/cjs/types/helpers.js +2 -0
  193. package/build/cjs/types/index.d.ts +4 -0
  194. package/build/cjs/types/index.js +7 -0
  195. package/build/cjs/types/interfaces.d.ts +74 -0
  196. package/build/cjs/types/interfaces.js +2 -0
  197. package/build/cjs/types/registry.d.ts +67 -0
  198. package/build/cjs/types/registry.js +2 -0
  199. package/build/cjs/utils/compareArray.d.ts +1 -0
  200. package/build/cjs/utils/compareArray.js +13 -0
  201. package/build/cjs/utils/compareMap.d.ts +1 -0
  202. package/build/cjs/utils/compareMap.js +30 -0
  203. package/build/cjs/utils/compareSet.d.ts +1 -0
  204. package/build/cjs/utils/compareSet.js +20 -0
  205. package/build/cjs/utils/decodeU8a.d.ts +26 -0
  206. package/build/cjs/utils/decodeU8a.js +105 -0
  207. package/build/cjs/utils/index.d.ts +8 -0
  208. package/build/cjs/utils/index.js +25 -0
  209. package/build/cjs/utils/sanitize.d.ts +15 -0
  210. package/build/cjs/utils/sanitize.js +233 -0
  211. package/build/cjs/utils/sortValues.d.ts +12 -0
  212. package/build/cjs/utils/sortValues.js +84 -0
  213. package/build/cjs/utils/toConstructors.d.ts +16 -0
  214. package/build/cjs/utils/toConstructors.js +40 -0
  215. package/build/cjs/utils/typesToMap.d.ts +2 -0
  216. package/build/cjs/utils/typesToMap.js +10 -0
  217. package/build/cjs/utils/util.d.ts +3 -0
  218. package/build/cjs/utils/util.js +7 -0
  219. package/build/extended/BTreeMap.js +10 -0
  220. package/build/extended/BTreeSet.js +185 -0
  221. package/build/extended/BitVec.js +108 -0
  222. package/build/extended/Bytes.js +70 -0
  223. package/build/extended/HashMap.js +10 -0
  224. package/build/extended/Linkage.js +65 -0
  225. package/build/extended/Map.js +200 -0
  226. package/build/extended/OptionBool.js +72 -0
  227. package/build/extended/Range.js +38 -0
  228. package/build/extended/RangeInclusive.js +13 -0
  229. package/build/extended/Type.js +21 -0
  230. package/build/extended/U8aFixed.js +42 -0
  231. package/build/extended/WrapperKeepOpaque.js +99 -0
  232. package/build/extended/WrapperOpaque.js +19 -0
  233. package/build/extended/index.js +14 -0
  234. package/build/index.js +2 -0
  235. package/build/native/Bool.js +109 -0
  236. package/build/native/Date.js +140 -0
  237. package/build/native/Float.js +107 -0
  238. package/build/native/Json.js +117 -0
  239. package/build/native/Raw.js +140 -0
  240. package/build/native/Set.js +215 -0
  241. package/build/native/Struct.data.js +1 -0
  242. package/build/native/Struct.js +260 -0
  243. package/build/native/Text.js +150 -0
  244. package/build/native/index.js +8 -0
  245. package/build/package.json +1149 -0
  246. package/build/packageDetect.js +3 -0
  247. package/build/packageInfo.js +1 -0
  248. package/build/primitive/F32.js +10 -0
  249. package/build/primitive/F64.js +10 -0
  250. package/build/primitive/I128.js +10 -0
  251. package/build/primitive/I16.js +10 -0
  252. package/build/primitive/I256.js +10 -0
  253. package/build/primitive/I32.js +10 -0
  254. package/build/primitive/I64.js +10 -0
  255. package/build/primitive/I8.js +10 -0
  256. package/build/primitive/ISize.js +14 -0
  257. package/build/primitive/U128.js +10 -0
  258. package/build/primitive/U16.js +10 -0
  259. package/build/primitive/U256.js +10 -0
  260. package/build/primitive/U32.js +10 -0
  261. package/build/primitive/U64.js +10 -0
  262. package/build/primitive/U8.js +10 -0
  263. package/build/primitive/USize.js +14 -0
  264. package/build/primitive/index.js +16 -0
  265. package/build/types/codec.d.ts +1 -1
  266. package/build/types/codec.js +1 -0
  267. package/build/types/helpers.js +1 -0
  268. package/build/types/index.js +4 -0
  269. package/build/types/interfaces.js +1 -0
  270. package/build/types/registry.js +1 -0
  271. package/build/utils/compareArray.js +10 -0
  272. package/build/utils/compareMap.js +27 -0
  273. package/build/utils/compareSet.js +17 -0
  274. package/build/utils/decodeU8a.js +100 -0
  275. package/build/utils/index.js +8 -0
  276. package/build/utils/sanitize.js +219 -0
  277. package/build/utils/sortValues.js +79 -0
  278. package/build/utils/toConstructors.js +35 -0
  279. package/build/utils/typesToMap.js +7 -0
  280. package/build/utils/util.js +4 -0
  281. package/build-deno/README.md +3 -0
  282. package/build-deno/abstract/Array.ts +211 -0
  283. package/build-deno/abstract/Base.ts +127 -0
  284. package/build-deno/abstract/Int.ts +267 -0
  285. package/build-deno/abstract/Object.ts +97 -0
  286. package/build-deno/abstract/index.ts +4 -0
  287. package/build-deno/base/Compact.ts +196 -0
  288. package/build-deno/base/DoNotConstruct.ts +116 -0
  289. package/build-deno/base/Enum.ts +457 -0
  290. package/build-deno/base/Int.ts +32 -0
  291. package/build-deno/base/Null.ts +94 -0
  292. package/build-deno/base/Option.ts +273 -0
  293. package/build-deno/base/Result.ts +77 -0
  294. package/build-deno/base/Tuple.ts +147 -0
  295. package/build-deno/base/UInt.ts +28 -0
  296. package/build-deno/base/Vec.ts +131 -0
  297. package/build-deno/base/VecAny.ts +21 -0
  298. package/build-deno/base/VecFixed.ts +90 -0
  299. package/build-deno/base/index.ts +13 -0
  300. package/build-deno/bundle.ts +9 -0
  301. package/build-deno/checkTypes.manual.ts +10 -0
  302. package/build-deno/extended/BTreeMap.ts +14 -0
  303. package/build-deno/extended/BTreeSet.ts +231 -0
  304. package/build-deno/extended/BitVec.ts +135 -0
  305. package/build-deno/extended/Bytes.ts +85 -0
  306. package/build-deno/extended/HashMap.ts +14 -0
  307. package/build-deno/extended/Linkage.ts +79 -0
  308. package/build-deno/extended/Map.ts +253 -0
  309. package/build-deno/extended/OptionBool.ts +91 -0
  310. package/build-deno/extended/Range.ts +54 -0
  311. package/build-deno/extended/RangeInclusive.ts +18 -0
  312. package/build-deno/extended/Type.ts +27 -0
  313. package/build-deno/extended/U8aFixed.ts +55 -0
  314. package/build-deno/extended/WrapperKeepOpaque.ts +126 -0
  315. package/build-deno/extended/WrapperOpaque.ts +25 -0
  316. package/build-deno/extended/index.ts +15 -0
  317. package/build-deno/index.ts +4 -0
  318. package/build-deno/mod.ts +2 -0
  319. package/build-deno/native/Bool.ts +135 -0
  320. package/build-deno/native/Date.ts +167 -0
  321. package/build-deno/native/Float.ts +134 -0
  322. package/build-deno/native/Json.ts +145 -0
  323. package/build-deno/native/Raw.ts +169 -0
  324. package/build-deno/native/Set.ts +267 -0
  325. package/build-deno/native/Struct.data.ts +2 -0
  326. package/build-deno/native/Struct.ts +336 -0
  327. package/build-deno/native/Text.ts +182 -0
  328. package/build-deno/native/index.ts +9 -0
  329. package/build-deno/packageDetect.ts +7 -0
  330. package/build-deno/packageInfo.ts +3 -0
  331. package/build-deno/primitive/F32.ts +12 -0
  332. package/build-deno/primitive/F64.ts +12 -0
  333. package/build-deno/primitive/I128.ts +12 -0
  334. package/build-deno/primitive/I16.ts +12 -0
  335. package/build-deno/primitive/I256.ts +12 -0
  336. package/build-deno/primitive/I32.ts +12 -0
  337. package/build-deno/primitive/I64.ts +12 -0
  338. package/build-deno/primitive/I8.ts +12 -0
  339. package/build-deno/primitive/ISize.ts +19 -0
  340. package/build-deno/primitive/U128.ts +12 -0
  341. package/build-deno/primitive/U16.ts +12 -0
  342. package/build-deno/primitive/U256.ts +12 -0
  343. package/build-deno/primitive/U32.ts +12 -0
  344. package/build-deno/primitive/U64.ts +12 -0
  345. package/build-deno/primitive/U8.ts +12 -0
  346. package/build-deno/primitive/USize.ts +19 -0
  347. package/build-deno/primitive/index.ts +17 -0
  348. package/build-deno/test/performance.ts +57 -0
  349. package/build-deno/types/codec.ts +138 -0
  350. package/build-deno/types/helpers.ts +41 -0
  351. package/build-deno/types/index.ts +5 -0
  352. package/build-deno/types/interfaces.ts +94 -0
  353. package/build-deno/types/registry.ts +84 -0
  354. package/build-deno/utils/compareArray.ts +18 -0
  355. package/build-deno/utils/compareMap.ts +36 -0
  356. package/build-deno/utils/compareSet.ts +19 -0
  357. package/build-deno/utils/decodeU8a.ts +121 -0
  358. package/build-deno/utils/index.ts +9 -0
  359. package/build-deno/utils/sanitize.ts +282 -0
  360. package/build-deno/utils/sortValues.ts +101 -0
  361. package/build-deno/utils/toConstructors.ts +44 -0
  362. package/build-deno/utils/typesToMap.ts +12 -0
  363. package/build-deno/utils/util.ts +6 -0
  364. package/build-tsc/abstract/Array.d.ts +89 -0
  365. package/build-tsc/abstract/Base.d.ts +75 -0
  366. package/build-tsc/abstract/Int.d.ts +80 -0
  367. package/build-tsc/abstract/Object.d.ts +67 -0
  368. package/build-tsc/abstract/index.d.ts +3 -0
  369. package/build-tsc/base/Compact.d.ts +88 -0
  370. package/build-tsc/base/DoNotConstruct.d.ts +63 -0
  371. package/build-tsc/base/Enum.d.ts +118 -0
  372. package/build-tsc/base/Int.d.ts +16 -0
  373. package/build-tsc/base/Null.d.ts +56 -0
  374. package/build-tsc/base/Option.d.ts +94 -0
  375. package/build-tsc/base/Result.d.ts +38 -0
  376. package/build-tsc/base/Tuple.d.ts +42 -0
  377. package/build-tsc/base/UInt.d.ts +15 -0
  378. package/build-tsc/base/Vec.d.ts +28 -0
  379. package/build-tsc/base/VecAny.d.ts +15 -0
  380. package/build-tsc/base/VecFixed.d.ts +30 -0
  381. package/build-tsc/base/index.d.ts +12 -0
  382. package/build-tsc/bundle.d.ts +7 -0
  383. package/build-tsc/extended/BTreeMap.d.ts +5 -0
  384. package/build-tsc/extended/BTreeSet.d.ts +64 -0
  385. package/build-tsc/extended/BitVec.d.ts +37 -0
  386. package/build-tsc/extended/Bytes.d.ts +29 -0
  387. package/build-tsc/extended/HashMap.d.ts +5 -0
  388. package/build-tsc/extended/Linkage.d.ts +37 -0
  389. package/build-tsc/extended/Map.d.ts +59 -0
  390. package/build-tsc/extended/OptionBool.d.ts +36 -0
  391. package/build-tsc/extended/Range.d.ts +29 -0
  392. package/build-tsc/extended/RangeInclusive.d.ts +6 -0
  393. package/build-tsc/extended/Type.d.ts +16 -0
  394. package/build-tsc/extended/U8aFixed.d.ts +16 -0
  395. package/build-tsc/extended/WrapperKeepOpaque.d.ts +40 -0
  396. package/build-tsc/extended/WrapperOpaque.d.ts +10 -0
  397. package/build-tsc/extended/index.d.ts +14 -0
  398. package/build-tsc/index.d.ts +2 -0
  399. package/build-tsc/native/Bool.d.ts +71 -0
  400. package/build-tsc/native/Date.d.ts +84 -0
  401. package/build-tsc/native/Float.d.ts +68 -0
  402. package/build-tsc/native/Json.d.ts +69 -0
  403. package/build-tsc/native/Raw.d.ts +87 -0
  404. package/build-tsc/native/Set.d.ts +84 -0
  405. package/build-tsc/native/Struct.d.ts +106 -0
  406. package/build-tsc/native/Text.d.ts +77 -0
  407. package/build-tsc/native/index.d.ts +8 -0
  408. package/build-tsc/packageDetect.d.ts +1 -0
  409. package/build-tsc/packageInfo.d.ts +6 -0
  410. package/build-tsc/primitive/F32.d.ts +11 -0
  411. package/build-tsc/primitive/F64.d.ts +11 -0
  412. package/build-tsc/primitive/I128.d.ts +11 -0
  413. package/build-tsc/primitive/I16.d.ts +11 -0
  414. package/build-tsc/primitive/I256.d.ts +11 -0
  415. package/build-tsc/primitive/I32.d.ts +11 -0
  416. package/build-tsc/primitive/I64.d.ts +11 -0
  417. package/build-tsc/primitive/I8.d.ts +11 -0
  418. package/build-tsc/primitive/ISize.d.ts +12 -0
  419. package/build-tsc/primitive/U128.d.ts +11 -0
  420. package/build-tsc/primitive/U16.d.ts +11 -0
  421. package/build-tsc/primitive/U256.d.ts +11 -0
  422. package/build-tsc/primitive/U32.d.ts +11 -0
  423. package/build-tsc/primitive/U64.d.ts +11 -0
  424. package/build-tsc/primitive/U8.d.ts +11 -0
  425. package/build-tsc/primitive/USize.d.ts +12 -0
  426. package/build-tsc/primitive/index.d.ts +16 -0
  427. package/build-tsc/types/codec.d.ts +113 -0
  428. package/build-tsc/types/helpers.d.ts +27 -0
  429. package/build-tsc/types/index.d.ts +4 -0
  430. package/build-tsc/types/interfaces.d.ts +74 -0
  431. package/build-tsc/types/registry.d.ts +67 -0
  432. package/build-tsc/utils/compareArray.d.ts +1 -0
  433. package/build-tsc/utils/compareMap.d.ts +1 -0
  434. package/build-tsc/utils/compareSet.d.ts +1 -0
  435. package/build-tsc/utils/decodeU8a.d.ts +26 -0
  436. package/build-tsc/utils/index.d.ts +8 -0
  437. package/build-tsc/utils/sanitize.d.ts +15 -0
  438. package/build-tsc/utils/sortValues.d.ts +12 -0
  439. package/build-tsc/utils/toConstructors.d.ts +16 -0
  440. package/build-tsc/utils/typesToMap.d.ts +2 -0
  441. package/build-tsc/utils/util.d.ts +3 -0
  442. package/build-tsc-cjs/abstract/Array.js +170 -0
  443. package/build-tsc-cjs/abstract/Base.js +105 -0
  444. package/build-tsc-cjs/abstract/Int.js +230 -0
  445. package/build-tsc-cjs/abstract/Object.js +44 -0
  446. package/build-tsc-cjs/abstract/index.js +9 -0
  447. package/build-tsc-cjs/base/Compact.js +163 -0
  448. package/build-tsc-cjs/base/DoNotConstruct.js +99 -0
  449. package/build-tsc-cjs/base/Enum.js +373 -0
  450. package/build-tsc-cjs/base/Int.js +30 -0
  451. package/build-tsc-cjs/base/Null.js +81 -0
  452. package/build-tsc-cjs/base/Option.js +236 -0
  453. package/build-tsc-cjs/base/Result.js +67 -0
  454. package/build-tsc-cjs/base/Tuple.js +114 -0
  455. package/build-tsc-cjs/base/UInt.js +27 -0
  456. package/build-tsc-cjs/base/Vec.js +107 -0
  457. package/build-tsc-cjs/base/VecAny.js +21 -0
  458. package/build-tsc-cjs/base/VecFixed.js +71 -0
  459. package/build-tsc-cjs/base/index.js +27 -0
  460. package/build-tsc-cjs/bundle.js +12 -0
  461. package/build-tsc-cjs/extended/BTreeMap.js +14 -0
  462. package/build-tsc-cjs/extended/BTreeSet.js +189 -0
  463. package/build-tsc-cjs/extended/BitVec.js +112 -0
  464. package/build-tsc-cjs/extended/Bytes.js +74 -0
  465. package/build-tsc-cjs/extended/HashMap.js +14 -0
  466. package/build-tsc-cjs/extended/Linkage.js +70 -0
  467. package/build-tsc-cjs/extended/Map.js +204 -0
  468. package/build-tsc-cjs/extended/OptionBool.js +76 -0
  469. package/build-tsc-cjs/extended/Range.js +42 -0
  470. package/build-tsc-cjs/extended/RangeInclusive.js +17 -0
  471. package/build-tsc-cjs/extended/Type.js +25 -0
  472. package/build-tsc-cjs/extended/U8aFixed.js +46 -0
  473. package/build-tsc-cjs/extended/WrapperKeepOpaque.js +103 -0
  474. package/build-tsc-cjs/extended/WrapperOpaque.js +23 -0
  475. package/build-tsc-cjs/extended/index.js +32 -0
  476. package/build-tsc-cjs/index.js +5 -0
  477. package/build-tsc-cjs/native/Bool.js +113 -0
  478. package/build-tsc-cjs/native/Date.js +144 -0
  479. package/build-tsc-cjs/native/Float.js +111 -0
  480. package/build-tsc-cjs/native/Json.js +121 -0
  481. package/build-tsc-cjs/native/Raw.js +144 -0
  482. package/build-tsc-cjs/native/Set.js +219 -0
  483. package/build-tsc-cjs/native/Struct.data.js +4 -0
  484. package/build-tsc-cjs/native/Struct.js +264 -0
  485. package/build-tsc-cjs/native/Text.js +154 -0
  486. package/build-tsc-cjs/native/index.js +22 -0
  487. package/build-tsc-cjs/packageDetect.js +5 -0
  488. package/build-tsc-cjs/packageInfo.js +4 -0
  489. package/build-tsc-cjs/primitive/F32.js +14 -0
  490. package/build-tsc-cjs/primitive/F64.js +14 -0
  491. package/build-tsc-cjs/primitive/I128.js +14 -0
  492. package/build-tsc-cjs/primitive/I16.js +14 -0
  493. package/build-tsc-cjs/primitive/I256.js +14 -0
  494. package/build-tsc-cjs/primitive/I32.js +14 -0
  495. package/build-tsc-cjs/primitive/I64.js +14 -0
  496. package/build-tsc-cjs/primitive/I8.js +14 -0
  497. package/build-tsc-cjs/primitive/ISize.js +18 -0
  498. package/build-tsc-cjs/primitive/U128.js +14 -0
  499. package/build-tsc-cjs/primitive/U16.js +14 -0
  500. package/build-tsc-cjs/primitive/U256.js +14 -0
  501. package/build-tsc-cjs/primitive/U32.js +14 -0
  502. package/build-tsc-cjs/primitive/U64.js +14 -0
  503. package/build-tsc-cjs/primitive/U8.js +14 -0
  504. package/build-tsc-cjs/primitive/USize.js +18 -0
  505. package/build-tsc-cjs/primitive/index.js +51 -0
  506. package/build-tsc-cjs/types/codec.js +2 -0
  507. package/build-tsc-cjs/types/helpers.js +2 -0
  508. package/build-tsc-cjs/types/index.js +7 -0
  509. package/build-tsc-cjs/types/interfaces.js +2 -0
  510. package/build-tsc-cjs/types/registry.js +2 -0
  511. package/build-tsc-cjs/utils/compareArray.js +13 -0
  512. package/build-tsc-cjs/utils/compareMap.js +30 -0
  513. package/build-tsc-cjs/utils/compareSet.js +20 -0
  514. package/build-tsc-cjs/utils/decodeU8a.js +105 -0
  515. package/build-tsc-cjs/utils/index.js +25 -0
  516. package/build-tsc-cjs/utils/sanitize.js +233 -0
  517. package/build-tsc-cjs/utils/sortValues.js +84 -0
  518. package/build-tsc-cjs/utils/toConstructors.js +40 -0
  519. package/build-tsc-cjs/utils/typesToMap.js +10 -0
  520. package/build-tsc-cjs/utils/util.js +7 -0
  521. package/build-tsc-esm/abstract/Array.js +166 -0
  522. package/build-tsc-esm/abstract/Base.js +101 -0
  523. package/build-tsc-esm/abstract/Int.js +226 -0
  524. package/build-tsc-esm/abstract/Object.js +40 -0
  525. package/build-tsc-esm/abstract/index.js +3 -0
  526. package/build-tsc-esm/base/Compact.js +159 -0
  527. package/build-tsc-esm/base/DoNotConstruct.js +95 -0
  528. package/build-tsc-esm/base/Enum.js +369 -0
  529. package/build-tsc-esm/base/Int.js +26 -0
  530. package/build-tsc-esm/base/Null.js +77 -0
  531. package/build-tsc-esm/base/Option.js +232 -0
  532. package/build-tsc-esm/base/Result.js +63 -0
  533. package/build-tsc-esm/base/Tuple.js +110 -0
  534. package/build-tsc-esm/base/UInt.js +23 -0
  535. package/build-tsc-esm/base/Vec.js +102 -0
  536. package/build-tsc-esm/base/VecAny.js +17 -0
  537. package/build-tsc-esm/base/VecFixed.js +67 -0
  538. package/build-tsc-esm/base/index.js +12 -0
  539. package/build-tsc-esm/bundle.js +7 -0
  540. package/build-tsc-esm/extended/BTreeMap.js +10 -0
  541. package/build-tsc-esm/extended/BTreeSet.js +185 -0
  542. package/build-tsc-esm/extended/BitVec.js +108 -0
  543. package/build-tsc-esm/extended/Bytes.js +70 -0
  544. package/build-tsc-esm/extended/HashMap.js +10 -0
  545. package/build-tsc-esm/extended/Linkage.js +65 -0
  546. package/build-tsc-esm/extended/Map.js +200 -0
  547. package/build-tsc-esm/extended/OptionBool.js +72 -0
  548. package/build-tsc-esm/extended/Range.js +38 -0
  549. package/build-tsc-esm/extended/RangeInclusive.js +13 -0
  550. package/build-tsc-esm/extended/Type.js +21 -0
  551. package/build-tsc-esm/extended/U8aFixed.js +42 -0
  552. package/build-tsc-esm/extended/WrapperKeepOpaque.js +99 -0
  553. package/build-tsc-esm/extended/WrapperOpaque.js +19 -0
  554. package/build-tsc-esm/extended/index.js +14 -0
  555. package/build-tsc-esm/index.js +2 -0
  556. package/build-tsc-esm/native/Bool.js +109 -0
  557. package/build-tsc-esm/native/Date.js +140 -0
  558. package/build-tsc-esm/native/Float.js +107 -0
  559. package/build-tsc-esm/native/Json.js +117 -0
  560. package/build-tsc-esm/native/Raw.js +140 -0
  561. package/build-tsc-esm/native/Set.js +215 -0
  562. package/build-tsc-esm/native/Struct.data.js +1 -0
  563. package/build-tsc-esm/native/Struct.js +260 -0
  564. package/build-tsc-esm/native/Text.js +150 -0
  565. package/build-tsc-esm/native/index.js +8 -0
  566. package/build-tsc-esm/packageDetect.js +3 -0
  567. package/build-tsc-esm/packageInfo.js +1 -0
  568. package/build-tsc-esm/primitive/F32.js +10 -0
  569. package/build-tsc-esm/primitive/F64.js +10 -0
  570. package/build-tsc-esm/primitive/I128.js +10 -0
  571. package/build-tsc-esm/primitive/I16.js +10 -0
  572. package/build-tsc-esm/primitive/I256.js +10 -0
  573. package/build-tsc-esm/primitive/I32.js +10 -0
  574. package/build-tsc-esm/primitive/I64.js +10 -0
  575. package/build-tsc-esm/primitive/I8.js +10 -0
  576. package/build-tsc-esm/primitive/ISize.js +14 -0
  577. package/build-tsc-esm/primitive/U128.js +10 -0
  578. package/build-tsc-esm/primitive/U16.js +10 -0
  579. package/build-tsc-esm/primitive/U256.js +10 -0
  580. package/build-tsc-esm/primitive/U32.js +10 -0
  581. package/build-tsc-esm/primitive/U64.js +10 -0
  582. package/build-tsc-esm/primitive/U8.js +10 -0
  583. package/build-tsc-esm/primitive/USize.js +14 -0
  584. package/build-tsc-esm/primitive/index.js +16 -0
  585. package/build-tsc-esm/types/codec.js +1 -0
  586. package/build-tsc-esm/types/helpers.js +1 -0
  587. package/build-tsc-esm/types/index.js +4 -0
  588. package/build-tsc-esm/types/interfaces.js +1 -0
  589. package/build-tsc-esm/types/registry.js +1 -0
  590. package/build-tsc-esm/utils/compareArray.js +10 -0
  591. package/build-tsc-esm/utils/compareMap.js +27 -0
  592. package/build-tsc-esm/utils/compareSet.js +17 -0
  593. package/build-tsc-esm/utils/decodeU8a.js +100 -0
  594. package/build-tsc-esm/utils/index.js +8 -0
  595. package/build-tsc-esm/utils/sanitize.js +219 -0
  596. package/build-tsc-esm/utils/sortValues.js +79 -0
  597. package/build-tsc-esm/utils/toConstructors.js +35 -0
  598. package/build-tsc-esm/utils/typesToMap.js +7 -0
  599. package/build-tsc-esm/utils/util.js +4 -0
  600. package/bundle.d.ts +7 -0
  601. package/bundle.js +7 -0
  602. package/cjs/abstract/Array.d.ts +89 -0
  603. package/cjs/abstract/Array.js +170 -0
  604. package/cjs/abstract/Base.d.ts +75 -0
  605. package/cjs/abstract/Base.js +105 -0
  606. package/cjs/abstract/Int.d.ts +80 -0
  607. package/cjs/abstract/Int.js +230 -0
  608. package/cjs/abstract/Object.d.ts +67 -0
  609. package/cjs/abstract/Object.js +44 -0
  610. package/cjs/abstract/index.d.ts +3 -0
  611. package/cjs/abstract/index.js +9 -0
  612. package/cjs/base/Compact.d.ts +88 -0
  613. package/cjs/base/Compact.js +163 -0
  614. package/cjs/base/DoNotConstruct.d.ts +63 -0
  615. package/cjs/base/DoNotConstruct.js +99 -0
  616. package/cjs/base/Enum.d.ts +118 -0
  617. package/cjs/base/Enum.js +373 -0
  618. package/cjs/base/Int.d.ts +16 -0
  619. package/cjs/base/Int.js +30 -0
  620. package/cjs/base/Null.d.ts +56 -0
  621. package/cjs/base/Null.js +81 -0
  622. package/cjs/base/Option.d.ts +94 -0
  623. package/cjs/base/Option.js +236 -0
  624. package/cjs/base/Result.d.ts +38 -0
  625. package/cjs/base/Result.js +67 -0
  626. package/cjs/base/Tuple.d.ts +42 -0
  627. package/cjs/base/Tuple.js +114 -0
  628. package/cjs/base/UInt.d.ts +15 -0
  629. package/cjs/base/UInt.js +27 -0
  630. package/cjs/base/Vec.d.ts +28 -0
  631. package/cjs/base/Vec.js +107 -0
  632. package/cjs/base/VecAny.d.ts +15 -0
  633. package/cjs/base/VecAny.js +21 -0
  634. package/cjs/base/VecFixed.d.ts +30 -0
  635. package/cjs/base/VecFixed.js +71 -0
  636. package/cjs/base/index.d.ts +12 -0
  637. package/cjs/base/index.js +27 -0
  638. package/cjs/bundle.d.ts +7 -0
  639. package/cjs/bundle.js +12 -0
  640. package/cjs/extended/BTreeMap.d.ts +5 -0
  641. package/cjs/extended/BTreeMap.js +14 -0
  642. package/cjs/extended/BTreeSet.d.ts +64 -0
  643. package/cjs/extended/BTreeSet.js +189 -0
  644. package/cjs/extended/BitVec.d.ts +37 -0
  645. package/cjs/extended/BitVec.js +112 -0
  646. package/cjs/extended/Bytes.d.ts +29 -0
  647. package/cjs/extended/Bytes.js +74 -0
  648. package/cjs/extended/HashMap.d.ts +5 -0
  649. package/cjs/extended/HashMap.js +14 -0
  650. package/cjs/extended/Linkage.d.ts +37 -0
  651. package/cjs/extended/Linkage.js +70 -0
  652. package/cjs/extended/Map.d.ts +59 -0
  653. package/cjs/extended/Map.js +204 -0
  654. package/cjs/extended/OptionBool.d.ts +36 -0
  655. package/cjs/extended/OptionBool.js +76 -0
  656. package/cjs/extended/Range.d.ts +29 -0
  657. package/cjs/extended/Range.js +42 -0
  658. package/cjs/extended/RangeInclusive.d.ts +6 -0
  659. package/cjs/extended/RangeInclusive.js +17 -0
  660. package/cjs/extended/Type.d.ts +16 -0
  661. package/cjs/extended/Type.js +25 -0
  662. package/cjs/extended/U8aFixed.d.ts +16 -0
  663. package/cjs/extended/U8aFixed.js +46 -0
  664. package/cjs/extended/WrapperKeepOpaque.d.ts +40 -0
  665. package/cjs/extended/WrapperKeepOpaque.js +103 -0
  666. package/cjs/extended/WrapperOpaque.d.ts +10 -0
  667. package/cjs/extended/WrapperOpaque.js +23 -0
  668. package/cjs/extended/index.d.ts +14 -0
  669. package/cjs/extended/index.js +32 -0
  670. package/cjs/index.d.ts +2 -0
  671. package/cjs/index.js +5 -0
  672. package/cjs/native/Bool.d.ts +71 -0
  673. package/cjs/native/Bool.js +113 -0
  674. package/cjs/native/Date.d.ts +84 -0
  675. package/cjs/native/Date.js +144 -0
  676. package/cjs/native/Float.d.ts +68 -0
  677. package/cjs/native/Float.js +111 -0
  678. package/cjs/native/Json.d.ts +69 -0
  679. package/cjs/native/Json.js +121 -0
  680. package/cjs/native/Raw.d.ts +87 -0
  681. package/cjs/native/Raw.js +144 -0
  682. package/cjs/native/Set.d.ts +84 -0
  683. package/cjs/native/Set.js +219 -0
  684. package/cjs/native/Struct.d.ts +106 -0
  685. package/cjs/native/Struct.data.js +4 -0
  686. package/cjs/native/Struct.js +264 -0
  687. package/cjs/native/Text.d.ts +77 -0
  688. package/cjs/native/Text.js +154 -0
  689. package/cjs/native/index.d.ts +8 -0
  690. package/cjs/native/index.js +22 -0
  691. package/cjs/package.json +3 -0
  692. package/cjs/packageDetect.d.ts +1 -0
  693. package/cjs/packageDetect.js +5 -0
  694. package/cjs/packageInfo.d.ts +6 -0
  695. package/cjs/packageInfo.js +4 -0
  696. package/cjs/primitive/F32.d.ts +11 -0
  697. package/cjs/primitive/F32.js +14 -0
  698. package/cjs/primitive/F64.d.ts +11 -0
  699. package/cjs/primitive/F64.js +14 -0
  700. package/cjs/primitive/I128.d.ts +11 -0
  701. package/cjs/primitive/I128.js +14 -0
  702. package/cjs/primitive/I16.d.ts +11 -0
  703. package/cjs/primitive/I16.js +14 -0
  704. package/cjs/primitive/I256.d.ts +11 -0
  705. package/cjs/primitive/I256.js +14 -0
  706. package/cjs/primitive/I32.d.ts +11 -0
  707. package/cjs/primitive/I32.js +14 -0
  708. package/cjs/primitive/I64.d.ts +11 -0
  709. package/cjs/primitive/I64.js +14 -0
  710. package/cjs/primitive/I8.d.ts +11 -0
  711. package/cjs/primitive/I8.js +14 -0
  712. package/cjs/primitive/ISize.d.ts +12 -0
  713. package/cjs/primitive/ISize.js +18 -0
  714. package/cjs/primitive/U128.d.ts +11 -0
  715. package/cjs/primitive/U128.js +14 -0
  716. package/cjs/primitive/U16.d.ts +11 -0
  717. package/cjs/primitive/U16.js +14 -0
  718. package/cjs/primitive/U256.d.ts +11 -0
  719. package/cjs/primitive/U256.js +14 -0
  720. package/cjs/primitive/U32.d.ts +11 -0
  721. package/cjs/primitive/U32.js +14 -0
  722. package/cjs/primitive/U64.d.ts +11 -0
  723. package/cjs/primitive/U64.js +14 -0
  724. package/cjs/primitive/U8.d.ts +11 -0
  725. package/cjs/primitive/U8.js +14 -0
  726. package/cjs/primitive/USize.d.ts +12 -0
  727. package/cjs/primitive/USize.js +18 -0
  728. package/cjs/primitive/index.d.ts +16 -0
  729. package/cjs/primitive/index.js +51 -0
  730. package/cjs/types/codec.d.ts +113 -0
  731. package/cjs/types/codec.js +2 -0
  732. package/cjs/types/helpers.d.ts +27 -0
  733. package/cjs/types/helpers.js +2 -0
  734. package/cjs/types/index.d.ts +4 -0
  735. package/cjs/types/index.js +7 -0
  736. package/cjs/types/interfaces.d.ts +74 -0
  737. package/cjs/types/interfaces.js +2 -0
  738. package/cjs/types/registry.d.ts +67 -0
  739. package/cjs/types/registry.js +2 -0
  740. package/cjs/utils/compareArray.d.ts +1 -0
  741. package/cjs/utils/compareArray.js +13 -0
  742. package/cjs/utils/compareMap.d.ts +1 -0
  743. package/cjs/utils/compareMap.js +30 -0
  744. package/cjs/utils/compareSet.d.ts +1 -0
  745. package/cjs/utils/compareSet.js +20 -0
  746. package/cjs/utils/decodeU8a.d.ts +26 -0
  747. package/cjs/utils/decodeU8a.js +105 -0
  748. package/cjs/utils/index.d.ts +8 -0
  749. package/cjs/utils/index.js +25 -0
  750. package/cjs/utils/sanitize.d.ts +15 -0
  751. package/cjs/utils/sanitize.js +233 -0
  752. package/cjs/utils/sortValues.d.ts +12 -0
  753. package/cjs/utils/sortValues.js +84 -0
  754. package/cjs/utils/toConstructors.d.ts +16 -0
  755. package/cjs/utils/toConstructors.js +40 -0
  756. package/cjs/utils/typesToMap.d.ts +2 -0
  757. package/cjs/utils/typesToMap.js +10 -0
  758. package/cjs/utils/util.d.ts +3 -0
  759. package/cjs/utils/util.js +7 -0
  760. package/extended/BTreeMap.d.ts +5 -0
  761. package/extended/BTreeMap.js +10 -0
  762. package/extended/BTreeSet.d.ts +64 -0
  763. package/extended/BTreeSet.js +185 -0
  764. package/extended/BitVec.d.ts +37 -0
  765. package/extended/BitVec.js +108 -0
  766. package/extended/Bytes.d.ts +29 -0
  767. package/extended/Bytes.js +70 -0
  768. package/extended/HashMap.d.ts +5 -0
  769. package/extended/HashMap.js +10 -0
  770. package/extended/Linkage.d.ts +37 -0
  771. package/extended/Linkage.js +65 -0
  772. package/extended/Map.d.ts +59 -0
  773. package/extended/Map.js +200 -0
  774. package/extended/OptionBool.d.ts +36 -0
  775. package/extended/OptionBool.js +72 -0
  776. package/extended/Range.d.ts +29 -0
  777. package/extended/Range.js +38 -0
  778. package/extended/RangeInclusive.d.ts +6 -0
  779. package/extended/RangeInclusive.js +13 -0
  780. package/extended/Type.d.ts +16 -0
  781. package/extended/Type.js +21 -0
  782. package/extended/U8aFixed.d.ts +16 -0
  783. package/extended/U8aFixed.js +42 -0
  784. package/extended/WrapperKeepOpaque.d.ts +40 -0
  785. package/extended/WrapperKeepOpaque.js +99 -0
  786. package/extended/WrapperOpaque.d.ts +10 -0
  787. package/extended/WrapperOpaque.js +19 -0
  788. package/extended/index.d.ts +14 -0
  789. package/extended/index.js +14 -0
  790. package/index.d.ts +2 -0
  791. package/index.js +2 -0
  792. package/native/Bool.d.ts +71 -0
  793. package/native/Bool.js +109 -0
  794. package/native/Date.d.ts +84 -0
  795. package/native/Date.js +140 -0
  796. package/native/Float.d.ts +68 -0
  797. package/native/Float.js +107 -0
  798. package/native/Json.d.ts +69 -0
  799. package/native/Json.js +117 -0
  800. package/native/Raw.d.ts +87 -0
  801. package/native/Raw.js +140 -0
  802. package/native/Set.d.ts +84 -0
  803. package/native/Set.js +215 -0
  804. package/native/Struct.d.ts +106 -0
  805. package/native/Struct.data.js +1 -0
  806. package/native/Struct.js +260 -0
  807. package/native/Text.d.ts +77 -0
  808. package/native/Text.js +150 -0
  809. package/native/index.d.ts +8 -0
  810. package/native/index.js +8 -0
  811. package/package.json +1126 -11
  812. package/packageDetect.d.ts +1 -0
  813. package/packageDetect.js +3 -0
  814. package/packageInfo.d.ts +6 -0
  815. package/packageInfo.js +1 -0
  816. package/primitive/F32.d.ts +11 -0
  817. package/primitive/F32.js +10 -0
  818. package/primitive/F64.d.ts +11 -0
  819. package/primitive/F64.js +10 -0
  820. package/primitive/I128.d.ts +11 -0
  821. package/primitive/I128.js +10 -0
  822. package/primitive/I16.d.ts +11 -0
  823. package/primitive/I16.js +10 -0
  824. package/primitive/I256.d.ts +11 -0
  825. package/primitive/I256.js +10 -0
  826. package/primitive/I32.d.ts +11 -0
  827. package/primitive/I32.js +10 -0
  828. package/primitive/I64.d.ts +11 -0
  829. package/primitive/I64.js +10 -0
  830. package/primitive/I8.d.ts +11 -0
  831. package/primitive/I8.js +10 -0
  832. package/primitive/ISize.d.ts +12 -0
  833. package/primitive/ISize.js +14 -0
  834. package/primitive/U128.d.ts +11 -0
  835. package/primitive/U128.js +10 -0
  836. package/primitive/U16.d.ts +11 -0
  837. package/primitive/U16.js +10 -0
  838. package/primitive/U256.d.ts +11 -0
  839. package/primitive/U256.js +10 -0
  840. package/primitive/U32.d.ts +11 -0
  841. package/primitive/U32.js +10 -0
  842. package/primitive/U64.d.ts +11 -0
  843. package/primitive/U64.js +10 -0
  844. package/primitive/U8.d.ts +11 -0
  845. package/primitive/U8.js +10 -0
  846. package/primitive/USize.d.ts +12 -0
  847. package/primitive/USize.js +14 -0
  848. package/primitive/index.d.ts +16 -0
  849. package/primitive/index.js +16 -0
  850. package/src/abstract/Array.ts +1 -1
  851. package/src/abstract/Base.ts +1 -1
  852. package/src/abstract/Int.ts +1 -1
  853. package/src/abstract/Object.ts +1 -1
  854. package/src/abstract/index.ts +1 -1
  855. package/src/base/Compact.spec.ts +1 -1
  856. package/src/base/Compact.ts +1 -1
  857. package/src/base/DoNotConstruct.spec.ts +1 -1
  858. package/src/base/DoNotConstruct.ts +1 -1
  859. package/src/base/Enum.spec.ts +1 -1
  860. package/src/base/Enum.ts +1 -1
  861. package/src/base/Int.spec.ts +1 -1
  862. package/src/base/Int.ts +2 -2
  863. package/src/base/Null.spec.ts +1 -1
  864. package/src/base/Null.ts +1 -1
  865. package/src/base/Option.spec.ts +2 -2
  866. package/src/base/Option.ts +1 -1
  867. package/src/base/Result.spec.ts +1 -1
  868. package/src/base/Result.ts +1 -1
  869. package/src/base/Tuple.spec.ts +2 -2
  870. package/src/base/Tuple.ts +1 -1
  871. package/src/base/UInt.spec.ts +1 -1
  872. package/src/base/UInt.ts +2 -2
  873. package/src/base/Vec.spec.ts +2 -2
  874. package/src/base/Vec.ts +1 -1
  875. package/src/base/VecAny.ts +1 -1
  876. package/src/base/VecFixed.spec.ts +1 -1
  877. package/src/base/VecFixed.ts +1 -1
  878. package/src/base/index.ts +1 -1
  879. package/src/bundle.ts +1 -1
  880. package/src/checkTypes.manual.ts +1 -1
  881. package/src/extended/BTreeMap.spec.ts +1 -1
  882. package/src/extended/BTreeMap.ts +1 -1
  883. package/src/extended/BTreeSet.spec.ts +1 -1
  884. package/src/extended/BTreeSet.ts +1 -1
  885. package/src/extended/BitVec.spec.ts +1 -1
  886. package/src/extended/BitVec.ts +2 -2
  887. package/src/extended/Bytes.spec.ts +1 -1
  888. package/src/extended/Bytes.ts +1 -1
  889. package/src/extended/HashMap.spec.ts +1 -1
  890. package/src/extended/HashMap.ts +1 -1
  891. package/src/extended/Linkage.spec.ts +1 -1
  892. package/src/extended/Linkage.ts +1 -1
  893. package/src/extended/Map.spec.ts +1 -1
  894. package/src/extended/Map.ts +1 -1
  895. package/src/extended/OptionBool.spec.ts +1 -1
  896. package/src/extended/OptionBool.ts +1 -1
  897. package/src/extended/Range.spec.ts +1 -1
  898. package/src/extended/Range.ts +1 -1
  899. package/src/extended/RangeInclusive.ts +1 -1
  900. package/src/extended/Type.spec.ts +1 -1
  901. package/src/extended/Type.ts +1 -1
  902. package/src/extended/U8aFixed.spec.ts +1 -1
  903. package/src/extended/U8aFixed.ts +1 -1
  904. package/src/extended/WrapperKeepOpaque.spec.ts +1 -1
  905. package/src/extended/WrapperKeepOpaque.ts +1 -1
  906. package/src/extended/WrapperOpaque.spec.ts +1 -1
  907. package/src/extended/WrapperOpaque.ts +1 -1
  908. package/src/extended/index.ts +1 -1
  909. package/src/index.ts +1 -1
  910. package/src/mod.ts +1 -1
  911. package/src/native/Bool.spec.ts +1 -1
  912. package/src/native/Bool.ts +1 -1
  913. package/src/native/Date.spec.ts +1 -1
  914. package/src/native/Date.ts +1 -1
  915. package/src/native/Float.spec.ts +1 -1
  916. package/src/native/Float.ts +1 -1
  917. package/src/native/Json.ts +1 -1
  918. package/src/native/Raw.spec.ts +1 -1
  919. package/src/native/Raw.ts +1 -1
  920. package/src/native/Set.spec.ts +1 -1
  921. package/src/native/Set.ts +1 -1
  922. package/src/native/Struct.data.ts +1 -1
  923. package/src/native/Struct.spec.ts +2 -2
  924. package/src/native/Struct.ts +1 -1
  925. package/src/native/Text.spec.ts +1 -1
  926. package/src/native/Text.ts +1 -1
  927. package/src/native/index.ts +1 -1
  928. package/src/packageDetect.ts +2 -2
  929. package/src/packageInfo.ts +3 -3
  930. package/src/primitive/F32.ts +1 -1
  931. package/src/primitive/F64.ts +1 -1
  932. package/src/primitive/I128.ts +1 -1
  933. package/src/primitive/I16.ts +1 -1
  934. package/src/primitive/I256.ts +1 -1
  935. package/src/primitive/I32.ts +1 -1
  936. package/src/primitive/I64.ts +1 -1
  937. package/src/primitive/I8.ts +1 -1
  938. package/src/primitive/ISize.ts +1 -1
  939. package/src/primitive/U128.ts +1 -1
  940. package/src/primitive/U16.ts +1 -1
  941. package/src/primitive/U256.ts +1 -1
  942. package/src/primitive/U32.ts +1 -1
  943. package/src/primitive/U64.ts +1 -1
  944. package/src/primitive/U8.ts +1 -1
  945. package/src/primitive/USize.ts +1 -1
  946. package/src/primitive/index.ts +1 -1
  947. package/src/test/performance.ts +2 -2
  948. package/src/types/codec.ts +2 -2
  949. package/src/types/helpers.ts +2 -2
  950. package/src/types/index.ts +1 -1
  951. package/src/types/interfaces.ts +1 -1
  952. package/src/types/registry.ts +1 -1
  953. package/src/utils/compareArray.ts +1 -1
  954. package/src/utils/compareMap.ts +1 -1
  955. package/src/utils/compareSet.ts +1 -1
  956. package/src/utils/decodeU8a.ts +1 -1
  957. package/src/utils/index.ts +1 -1
  958. package/src/utils/sanitize.spec.ts +1 -1
  959. package/src/utils/sanitize.ts +1 -1
  960. package/src/utils/sortValues.ts +1 -1
  961. package/src/utils/toConstructors.ts +1 -1
  962. package/src/utils/typesToMap.ts +1 -1
  963. package/src/utils/util.ts +1 -1
  964. package/tsconfig.build.tsbuildinfo +1 -1
  965. package/tsconfig.spec.tsbuildinfo +1 -0
  966. package/types/codec.d.ts +113 -0
  967. package/types/codec.js +1 -0
  968. package/types/helpers.d.ts +27 -0
  969. package/types/helpers.js +1 -0
  970. package/types/index.d.ts +4 -0
  971. package/types/index.js +4 -0
  972. package/types/interfaces.d.ts +74 -0
  973. package/types/interfaces.js +1 -0
  974. package/types/registry.d.ts +67 -0
  975. package/types/registry.js +1 -0
  976. package/utils/compareArray.d.ts +1 -0
  977. package/utils/compareArray.js +10 -0
  978. package/utils/compareMap.d.ts +1 -0
  979. package/utils/compareMap.js +27 -0
  980. package/utils/compareSet.d.ts +1 -0
  981. package/utils/compareSet.js +17 -0
  982. package/utils/decodeU8a.d.ts +26 -0
  983. package/utils/decodeU8a.js +100 -0
  984. package/utils/index.d.ts +8 -0
  985. package/utils/index.js +8 -0
  986. package/utils/sanitize.d.ts +15 -0
  987. package/utils/sanitize.js +219 -0
  988. package/utils/sortValues.d.ts +12 -0
  989. package/utils/sortValues.js +79 -0
  990. package/utils/toConstructors.d.ts +16 -0
  991. package/utils/toConstructors.js +35 -0
  992. package/utils/typesToMap.d.ts +2 -0
  993. package/utils/typesToMap.js +7 -0
  994. package/utils/util.d.ts +3 -0
  995. package/utils/util.js +4 -0
package/native/Json.js ADDED
@@ -0,0 +1,117 @@
1
+ import { isFunction, objectProperties, stringify } from '@pezkuwi/util';
2
+ import { compareMap } from '../utils/index.js';
3
+ /** @internal */
4
+ function decodeJson(value) {
5
+ return Object.entries(value || {});
6
+ }
7
+ /**
8
+ * @name Json
9
+ * @description
10
+ * Wraps the a JSON structure retrieve via RPC. It extends the standard JS Map with. While it
11
+ * implements a Codec, it is limited in that it can only be used with input objects via RPC,
12
+ * i.e. no hex decoding. Unlike a struct, this waps a JSON object with unknown keys
13
+ * @noInheritDoc
14
+ */
15
+ export class Json extends Map {
16
+ registry;
17
+ createdAtHash;
18
+ initialU8aLength;
19
+ isStorageFallback;
20
+ constructor(registry, value) {
21
+ const decoded = decodeJson(value);
22
+ super(decoded);
23
+ this.registry = registry;
24
+ objectProperties(this, decoded.map(([k]) => k), (k) => this.get(k));
25
+ }
26
+ /**
27
+ * @description Always 0, never encodes as a Uint8Array
28
+ */
29
+ get encodedLength() {
30
+ return 0 | 0;
31
+ }
32
+ /**
33
+ * @description returns a hash of the contents
34
+ */
35
+ get hash() {
36
+ return this.registry.hash(this.toU8a());
37
+ }
38
+ /**
39
+ * @description Checks if the value is an empty value
40
+ */
41
+ get isEmpty() {
42
+ return [...this.keys()].length === 0;
43
+ }
44
+ /**
45
+ * @description Compares the value of the input to see if there is a match
46
+ */
47
+ eq(other) {
48
+ return compareMap(this, other);
49
+ }
50
+ /**
51
+ * @description Returns a typed value from the internal map
52
+ */
53
+ getT(key) {
54
+ return this.get(key);
55
+ }
56
+ /**
57
+ * @description Unimplemented, will throw
58
+ */
59
+ inspect() {
60
+ throw new Error('Unimplemented');
61
+ }
62
+ /**
63
+ * @description Unimplemented, will throw
64
+ */
65
+ toHex() {
66
+ throw new Error('Unimplemented');
67
+ }
68
+ /**
69
+ * @description Converts the Object to a human-friendly JSON, with additional fields, expansion and formatting of information
70
+ */
71
+ toHuman() {
72
+ return [...this.entries()].reduce((json, [key, value]) => {
73
+ json[key] = isFunction(value?.toHuman)
74
+ ? value.toHuman()
75
+ : value;
76
+ return json;
77
+ }, {});
78
+ }
79
+ /**
80
+ * @description Converts the Object to JSON, typically used for RPC transfers
81
+ */
82
+ toJSON() {
83
+ return [...this.entries()].reduce((json, [key, value]) => {
84
+ json[key] = value;
85
+ return json;
86
+ }, {});
87
+ }
88
+ /**
89
+ * @description Converts the value in a best-fit primitive form
90
+ */
91
+ toPrimitive(disableAscii) {
92
+ return [...this.entries()].reduce((json, [key, value]) => {
93
+ json[key] = isFunction(value.toPrimitive)
94
+ ? value.toPrimitive(disableAscii)
95
+ : value;
96
+ return json;
97
+ }, {});
98
+ }
99
+ /**
100
+ * @description Returns the base runtime type name for this instance
101
+ */
102
+ toRawType() {
103
+ return 'Json';
104
+ }
105
+ /**
106
+ * @description Returns the string representation of the value
107
+ */
108
+ toString() {
109
+ return stringify(this.toJSON());
110
+ }
111
+ /**
112
+ * @description Unimplemented, will throw
113
+ */
114
+ toU8a(_isBare) {
115
+ throw new Error('Unimplemented');
116
+ }
117
+ }
@@ -0,0 +1,87 @@
1
+ import type { HexString } from '@pezkuwi/util/types';
2
+ import type { AnyJson, AnyU8a, Inspect, IU8a, Registry } from '../types/index.js';
3
+ /**
4
+ * @name Raw
5
+ * @description
6
+ * A basic wrapper around Uint8Array, with no frills and no fuss. It does differ
7
+ * from other implementations where it will consume the full Uint8Array as passed to it.
8
+ * As such it is meant to be subclassed where the wrapper takes care of the
9
+ * actual lengths instead of used directly.
10
+ * @noInheritDoc
11
+ */
12
+ export declare class Raw extends Uint8Array implements IU8a {
13
+ readonly registry: Registry;
14
+ createdAtHash?: IU8a | undefined;
15
+ initialU8aLength?: number | undefined;
16
+ isStorageFallback?: boolean;
17
+ /**
18
+ * @description This ensures that operators such as clice, filter, map, etc. return
19
+ * new Array instances (without this we need to apply overrides)
20
+ */
21
+ static get [Symbol.species](): typeof Uint8Array;
22
+ constructor(registry: Registry, value?: AnyU8a, initialU8aLength?: number);
23
+ /**
24
+ * @description The length of the value when encoded as a Uint8Array
25
+ */
26
+ get encodedLength(): number;
27
+ /**
28
+ * @description returns a hash of the contents
29
+ */
30
+ get hash(): IU8a;
31
+ /**
32
+ * @description Returns true if the wrapped value contains only ASCII printable characters
33
+ */
34
+ get isAscii(): boolean;
35
+ /**
36
+ * @description Returns true if the type wraps an empty/default all-0 value
37
+ */
38
+ get isEmpty(): boolean;
39
+ /**
40
+ * @description Returns true if the wrapped value contains only utf8 characters
41
+ */
42
+ get isUtf8(): boolean;
43
+ /**
44
+ * @description Returns the number of bits in the value
45
+ */
46
+ bitLength(): number;
47
+ /**
48
+ * @description Compares the value of the input to see if there is a match
49
+ */
50
+ eq(other?: unknown): boolean;
51
+ /**
52
+ * @description Returns a breakdown of the hex encoding for this Codec
53
+ */
54
+ inspect(): Inspect;
55
+ /**
56
+ * @description Returns a hex string representation of the value
57
+ */
58
+ toHex(): HexString;
59
+ /**
60
+ * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
61
+ */
62
+ toHuman(_isExtended?: boolean, disableAscii?: boolean): AnyJson;
63
+ /**
64
+ * @description Converts the Object to JSON, typically used for RPC transfers
65
+ */
66
+ toJSON(): string;
67
+ /**
68
+ * @description Converts the value in a best-fit primitive form
69
+ */
70
+ toPrimitive(disableAscii?: boolean): AnyJson;
71
+ /**
72
+ * @description Returns the base runtime type name for this instance
73
+ */
74
+ toRawType(): string;
75
+ /**
76
+ * @description Returns the string representation of the value
77
+ */
78
+ toString(): string;
79
+ /**
80
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
81
+ */
82
+ toU8a(_isBare?: boolean): Uint8Array;
83
+ /**
84
+ * @description Returns the wrapped data as a UTF-8 string
85
+ */
86
+ toUtf8(): string;
87
+ }
package/native/Raw.js ADDED
@@ -0,0 +1,140 @@
1
+ import { isAscii, isUndefined, isUtf8, u8aToHex, u8aToString, u8aToU8a } from '@pezkuwi/util';
2
+ /**
3
+ * @name Raw
4
+ * @description
5
+ * A basic wrapper around Uint8Array, with no frills and no fuss. It does differ
6
+ * from other implementations where it will consume the full Uint8Array as passed to it.
7
+ * As such it is meant to be subclassed where the wrapper takes care of the
8
+ * actual lengths instead of used directly.
9
+ * @noInheritDoc
10
+ */
11
+ export class Raw extends Uint8Array {
12
+ registry;
13
+ createdAtHash;
14
+ initialU8aLength;
15
+ isStorageFallback;
16
+ /**
17
+ * @description This ensures that operators such as clice, filter, map, etc. return
18
+ * new Array instances (without this we need to apply overrides)
19
+ */
20
+ static get [Symbol.species]() {
21
+ return Uint8Array;
22
+ }
23
+ constructor(registry, value, initialU8aLength) {
24
+ super(u8aToU8a(value));
25
+ this.registry = registry;
26
+ this.initialU8aLength = initialU8aLength;
27
+ }
28
+ /**
29
+ * @description The length of the value when encoded as a Uint8Array
30
+ */
31
+ get encodedLength() {
32
+ return this.length;
33
+ }
34
+ /**
35
+ * @description returns a hash of the contents
36
+ */
37
+ get hash() {
38
+ return this.registry.hash(this.toU8a());
39
+ }
40
+ /**
41
+ * @description Returns true if the wrapped value contains only ASCII printable characters
42
+ */
43
+ get isAscii() {
44
+ return isAscii(this);
45
+ }
46
+ /**
47
+ * @description Returns true if the type wraps an empty/default all-0 value
48
+ */
49
+ get isEmpty() {
50
+ return !this.length || isUndefined(this.find((b) => !!b));
51
+ }
52
+ /**
53
+ * @description Returns true if the wrapped value contains only utf8 characters
54
+ */
55
+ get isUtf8() {
56
+ return isUtf8(this);
57
+ }
58
+ /**
59
+ * @description Returns the number of bits in the value
60
+ */
61
+ bitLength() {
62
+ return this.length * 8;
63
+ }
64
+ /**
65
+ * @description Compares the value of the input to see if there is a match
66
+ */
67
+ eq(other) {
68
+ if (other instanceof Uint8Array) {
69
+ return (this.length === other.length) &&
70
+ !this.some((b, index) => b !== other[index]);
71
+ }
72
+ return this.eq(u8aToU8a(other));
73
+ }
74
+ /**
75
+ * @description Returns a breakdown of the hex encoding for this Codec
76
+ */
77
+ inspect() {
78
+ return {
79
+ outer: [this.toU8a()]
80
+ };
81
+ }
82
+ /**
83
+ * @description Returns a hex string representation of the value
84
+ */
85
+ toHex() {
86
+ return u8aToHex(this);
87
+ }
88
+ /**
89
+ * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
90
+ */
91
+ toHuman(_isExtended, disableAscii) {
92
+ return this.toPrimitive(disableAscii);
93
+ }
94
+ /**
95
+ * @description Converts the Object to JSON, typically used for RPC transfers
96
+ */
97
+ toJSON() {
98
+ return this.toHex();
99
+ }
100
+ /**
101
+ * @description Converts the value in a best-fit primitive form
102
+ */
103
+ toPrimitive(disableAscii) {
104
+ if (!disableAscii && this.isAscii) {
105
+ const text = this.toUtf8();
106
+ // ensure we didn't end up with multibyte codepoints
107
+ if (isAscii(text)) {
108
+ return text;
109
+ }
110
+ }
111
+ return this.toJSON();
112
+ }
113
+ /**
114
+ * @description Returns the base runtime type name for this instance
115
+ */
116
+ toRawType() {
117
+ return 'Raw';
118
+ }
119
+ /**
120
+ * @description Returns the string representation of the value
121
+ */
122
+ toString() {
123
+ return this.toHex();
124
+ }
125
+ /**
126
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
127
+ */
128
+ toU8a(_isBare) {
129
+ return Uint8Array.from(this);
130
+ }
131
+ /**
132
+ * @description Returns the wrapped data as a UTF-8 string
133
+ */
134
+ toUtf8() {
135
+ if (!this.isUtf8) {
136
+ throw new Error('The character sequence is not a valid Utf8 string');
137
+ }
138
+ return u8aToString(this);
139
+ }
140
+ }
@@ -0,0 +1,84 @@
1
+ import type { HexString } from '@pezkuwi/util/types';
2
+ import type { CodecClass, Inspect, ISet, IU8a, Registry } from '../types/index.js';
3
+ import { BN } from '@pezkuwi/util';
4
+ type SetValues = Record<string, number | BN>;
5
+ /**
6
+ * @name Set
7
+ * @description
8
+ * An Set is an array of string values, represented an an encoded type by
9
+ * a bitwise representation of the values.
10
+ */
11
+ export declare class CodecSet extends Set<string> implements ISet<string> {
12
+ #private;
13
+ readonly registry: Registry;
14
+ createdAtHash?: IU8a;
15
+ initialU8aLength?: number;
16
+ isStorageFallback?: boolean;
17
+ constructor(registry: Registry, setValues: SetValues, value?: string[] | Set<string> | Uint8Array | BN | number | string, bitLength?: number);
18
+ static with(values: SetValues, bitLength?: number): CodecClass<CodecSet>;
19
+ /**
20
+ * @description The length of the value when encoded as a Uint8Array
21
+ */
22
+ get encodedLength(): number;
23
+ /**
24
+ * @description returns a hash of the contents
25
+ */
26
+ get hash(): IU8a;
27
+ /**
28
+ * @description true is the Set contains no values
29
+ */
30
+ get isEmpty(): boolean;
31
+ /**
32
+ * @description The actual set values as a string[]
33
+ */
34
+ get strings(): string[];
35
+ /**
36
+ * @description The encoded value for the set members
37
+ */
38
+ get valueEncoded(): BN;
39
+ /**
40
+ * @description adds a value to the Set (extended to allow for validity checking)
41
+ */
42
+ add: (key: string) => this;
43
+ /**
44
+ * @description Compares the value of the input to see if there is a match
45
+ */
46
+ eq(other?: unknown): boolean;
47
+ /**
48
+ * @description Returns a breakdown of the hex encoding for this Codec
49
+ */
50
+ inspect(): Inspect;
51
+ /**
52
+ * @description Returns a hex string representation of the value
53
+ */
54
+ toHex(): HexString;
55
+ /**
56
+ * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
57
+ */
58
+ toHuman(): string[];
59
+ /**
60
+ * @description Converts the Object to JSON, typically used for RPC transfers
61
+ */
62
+ toJSON(): string[];
63
+ /**
64
+ * @description The encoded value for the set members
65
+ */
66
+ toNumber(): number;
67
+ /**
68
+ * @description Converts the value in a best-fit primitive form
69
+ */
70
+ toPrimitive(): string[];
71
+ /**
72
+ * @description Returns the base runtime type name for this instance
73
+ */
74
+ toRawType(): string;
75
+ /**
76
+ * @description Returns the string representation of the value
77
+ */
78
+ toString(): string;
79
+ /**
80
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
81
+ */
82
+ toU8a(_isBare?: boolean): Uint8Array;
83
+ }
84
+ export {};
package/native/Set.js ADDED
@@ -0,0 +1,215 @@
1
+ import { BN, bnToBn, bnToU8a, isBn, isNumber, isString, isU8a, isUndefined, objectProperties, stringify, stringPascalCase, u8aToBn, u8aToHex, u8aToU8a } from '@pezkuwi/util';
2
+ import { compareArray } from '../utils/index.js';
3
+ function encodeSet(setValues, values) {
4
+ const encoded = new BN(0);
5
+ for (let i = 0, count = values.length; i < count; i++) {
6
+ encoded.ior(bnToBn(setValues[values[i]] || 0));
7
+ }
8
+ return encoded;
9
+ }
10
+ /** @internal */
11
+ function decodeSetArray(setValues, values) {
12
+ const count = values.length;
13
+ const result = new Array(count);
14
+ for (let i = 0; i < count; i++) {
15
+ const key = values[i];
16
+ if (isUndefined(setValues[key])) {
17
+ throw new Error(`Set: Invalid key '${key}' passed to Set, allowed ${Object.keys(setValues).join(', ')}`);
18
+ }
19
+ result[i] = key;
20
+ }
21
+ return result;
22
+ }
23
+ /** @internal */
24
+ function decodeSetNumber(setValues, _value) {
25
+ const bn = bnToBn(_value);
26
+ const keys = Object.keys(setValues);
27
+ const result = [];
28
+ for (let i = 0, count = keys.length; i < count; i++) {
29
+ const key = keys[i];
30
+ if (bn.and(bnToBn(setValues[key])).eq(bnToBn(setValues[key]))) {
31
+ result.push(key);
32
+ }
33
+ }
34
+ const computed = encodeSet(setValues, result);
35
+ if (!bn.eq(computed)) {
36
+ throw new Error(`Set: Mismatch decoding '${bn.toString()}', computed as '${computed.toString()}' with ${result.join(', ')}`);
37
+ }
38
+ return result;
39
+ }
40
+ /** @internal */
41
+ function decodeSet(setValues, value = 0, bitLength) {
42
+ if (bitLength % 8 !== 0) {
43
+ throw new Error(`Expected valid bitLength, power of 8, found ${bitLength}`);
44
+ }
45
+ const byteLength = bitLength / 8;
46
+ if (isU8a(value)) {
47
+ return value.length === 0
48
+ ? []
49
+ : decodeSetNumber(setValues, u8aToBn(value.subarray(0, byteLength), { isLe: true }));
50
+ }
51
+ else if (isString(value)) {
52
+ return decodeSet(setValues, u8aToU8a(value), byteLength);
53
+ }
54
+ else if (value instanceof Set || Array.isArray(value)) {
55
+ const input = Array.isArray(value)
56
+ ? value
57
+ : [...value.values()];
58
+ return decodeSetArray(setValues, input);
59
+ }
60
+ return decodeSetNumber(setValues, value);
61
+ }
62
+ /**
63
+ * @name Set
64
+ * @description
65
+ * An Set is an array of string values, represented an an encoded type by
66
+ * a bitwise representation of the values.
67
+ */
68
+ export class CodecSet extends Set {
69
+ registry;
70
+ createdAtHash;
71
+ initialU8aLength;
72
+ isStorageFallback;
73
+ #allowed;
74
+ #byteLength;
75
+ constructor(registry, setValues, value, bitLength = 8) {
76
+ super(decodeSet(setValues, value, bitLength));
77
+ this.registry = registry;
78
+ this.#allowed = setValues;
79
+ this.#byteLength = bitLength / 8;
80
+ }
81
+ static with(values, bitLength) {
82
+ return class extends CodecSet {
83
+ static {
84
+ const keys = Object.keys(values);
85
+ const count = keys.length;
86
+ const isKeys = new Array(count);
87
+ for (let i = 0; i < count; i++) {
88
+ isKeys[i] = `is${stringPascalCase(keys[i])}`;
89
+ }
90
+ objectProperties(this.prototype, isKeys, (_, i, self) => self.strings.includes(keys[i]));
91
+ }
92
+ constructor(registry, value) {
93
+ super(registry, values, value, bitLength);
94
+ }
95
+ };
96
+ }
97
+ /**
98
+ * @description The length of the value when encoded as a Uint8Array
99
+ */
100
+ get encodedLength() {
101
+ return this.#byteLength;
102
+ }
103
+ /**
104
+ * @description returns a hash of the contents
105
+ */
106
+ get hash() {
107
+ return this.registry.hash(this.toU8a());
108
+ }
109
+ /**
110
+ * @description true is the Set contains no values
111
+ */
112
+ get isEmpty() {
113
+ return this.size === 0;
114
+ }
115
+ /**
116
+ * @description The actual set values as a string[]
117
+ */
118
+ get strings() {
119
+ return [...super.values()];
120
+ }
121
+ /**
122
+ * @description The encoded value for the set members
123
+ */
124
+ get valueEncoded() {
125
+ return encodeSet(this.#allowed, this.strings);
126
+ }
127
+ /**
128
+ * @description adds a value to the Set (extended to allow for validity checking)
129
+ */
130
+ add = (key) => {
131
+ // ^^^ add = () property done to assign this instance's this, otherwise Set.add creates "some" chaos
132
+ // we have the isUndefined(this._setValues) in here as well, add is used internally
133
+ // in the Set constructor (so it is undefined at this point, and should allow)
134
+ if (this.#allowed && isUndefined(this.#allowed[key])) {
135
+ throw new Error(`Set: Invalid key '${key}' on add`);
136
+ }
137
+ super.add(key);
138
+ return this;
139
+ };
140
+ /**
141
+ * @description Compares the value of the input to see if there is a match
142
+ */
143
+ eq(other) {
144
+ if (Array.isArray(other)) {
145
+ // we don't actually care about the order, sort the values
146
+ return compareArray(this.strings.sort(), other.sort());
147
+ }
148
+ else if (other instanceof Set) {
149
+ return this.eq([...other.values()]);
150
+ }
151
+ else if (isNumber(other) || isBn(other)) {
152
+ return this.valueEncoded.eq(bnToBn(other));
153
+ }
154
+ return false;
155
+ }
156
+ /**
157
+ * @description Returns a breakdown of the hex encoding for this Codec
158
+ */
159
+ inspect() {
160
+ return {
161
+ outer: [this.toU8a()]
162
+ };
163
+ }
164
+ /**
165
+ * @description Returns a hex string representation of the value
166
+ */
167
+ toHex() {
168
+ return u8aToHex(this.toU8a());
169
+ }
170
+ /**
171
+ * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
172
+ */
173
+ toHuman() {
174
+ return this.toJSON();
175
+ }
176
+ /**
177
+ * @description Converts the Object to JSON, typically used for RPC transfers
178
+ */
179
+ toJSON() {
180
+ return this.strings;
181
+ }
182
+ /**
183
+ * @description The encoded value for the set members
184
+ */
185
+ toNumber() {
186
+ return this.valueEncoded.toNumber();
187
+ }
188
+ /**
189
+ * @description Converts the value in a best-fit primitive form
190
+ */
191
+ toPrimitive() {
192
+ return this.toJSON();
193
+ }
194
+ /**
195
+ * @description Returns the base runtime type name for this instance
196
+ */
197
+ toRawType() {
198
+ return stringify({ _set: this.#allowed });
199
+ }
200
+ /**
201
+ * @description Returns the string representation of the value
202
+ */
203
+ toString() {
204
+ return `[${this.strings.join(', ')}]`;
205
+ }
206
+ /**
207
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
208
+ */
209
+ toU8a(_isBare) {
210
+ return bnToU8a(this.valueEncoded, {
211
+ bitLength: this.#byteLength * 8,
212
+ isLe: true
213
+ });
214
+ }
215
+ }