@pezkuwi/types-codec 16.5.6 → 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 (758) hide show
  1. package/build/LICENSE +201 -0
  2. package/build/README.md +3 -0
  3. package/build/abstract/Array.d.ts +89 -0
  4. package/build/abstract/Array.js +166 -0
  5. package/build/abstract/Base.d.ts +75 -0
  6. package/build/abstract/Base.js +101 -0
  7. package/build/abstract/Int.d.ts +80 -0
  8. package/build/abstract/Int.js +226 -0
  9. package/build/abstract/Object.d.ts +67 -0
  10. package/build/abstract/Object.js +40 -0
  11. package/build/abstract/index.d.ts +3 -0
  12. package/build/abstract/index.js +3 -0
  13. package/build/base/Compact.d.ts +88 -0
  14. package/build/base/Compact.js +159 -0
  15. package/build/base/DoNotConstruct.d.ts +63 -0
  16. package/build/base/DoNotConstruct.js +95 -0
  17. package/build/base/Enum.d.ts +118 -0
  18. package/build/base/Enum.js +369 -0
  19. package/build/base/Int.d.ts +16 -0
  20. package/build/base/Int.js +26 -0
  21. package/build/base/Null.d.ts +56 -0
  22. package/build/base/Null.js +77 -0
  23. package/build/base/Option.d.ts +94 -0
  24. package/build/base/Option.js +232 -0
  25. package/build/base/Result.d.ts +38 -0
  26. package/build/base/Result.js +63 -0
  27. package/build/base/Tuple.d.ts +42 -0
  28. package/build/base/Tuple.js +110 -0
  29. package/build/base/UInt.d.ts +15 -0
  30. package/build/base/UInt.js +23 -0
  31. package/build/base/Vec.d.ts +28 -0
  32. package/build/base/Vec.js +102 -0
  33. package/build/base/VecAny.d.ts +15 -0
  34. package/build/base/VecAny.js +17 -0
  35. package/build/base/VecFixed.d.ts +30 -0
  36. package/build/base/VecFixed.js +67 -0
  37. package/build/base/index.d.ts +12 -0
  38. package/build/base/index.js +12 -0
  39. package/build/bundle.d.ts +7 -0
  40. package/build/bundle.js +7 -0
  41. package/build/cjs/abstract/Array.d.ts +89 -0
  42. package/build/cjs/abstract/Array.js +170 -0
  43. package/build/cjs/abstract/Base.d.ts +75 -0
  44. package/build/cjs/abstract/Base.js +105 -0
  45. package/build/cjs/abstract/Int.d.ts +80 -0
  46. package/build/cjs/abstract/Int.js +230 -0
  47. package/build/cjs/abstract/Object.d.ts +67 -0
  48. package/build/cjs/abstract/Object.js +44 -0
  49. package/build/cjs/abstract/index.d.ts +3 -0
  50. package/build/cjs/abstract/index.js +9 -0
  51. package/build/cjs/base/Compact.d.ts +88 -0
  52. package/build/cjs/base/Compact.js +163 -0
  53. package/build/cjs/base/DoNotConstruct.d.ts +63 -0
  54. package/build/cjs/base/DoNotConstruct.js +99 -0
  55. package/build/cjs/base/Enum.d.ts +118 -0
  56. package/build/cjs/base/Enum.js +373 -0
  57. package/build/cjs/base/Int.d.ts +16 -0
  58. package/build/cjs/base/Int.js +30 -0
  59. package/build/cjs/base/Null.d.ts +56 -0
  60. package/build/cjs/base/Null.js +81 -0
  61. package/build/cjs/base/Option.d.ts +94 -0
  62. package/build/cjs/base/Option.js +236 -0
  63. package/build/cjs/base/Result.d.ts +38 -0
  64. package/build/cjs/base/Result.js +67 -0
  65. package/build/cjs/base/Tuple.d.ts +42 -0
  66. package/build/cjs/base/Tuple.js +114 -0
  67. package/build/cjs/base/UInt.d.ts +15 -0
  68. package/build/cjs/base/UInt.js +27 -0
  69. package/build/cjs/base/Vec.d.ts +28 -0
  70. package/build/cjs/base/Vec.js +107 -0
  71. package/build/cjs/base/VecAny.d.ts +15 -0
  72. package/build/cjs/base/VecAny.js +21 -0
  73. package/build/cjs/base/VecFixed.d.ts +30 -0
  74. package/build/cjs/base/VecFixed.js +71 -0
  75. package/build/cjs/base/index.d.ts +12 -0
  76. package/build/cjs/base/index.js +27 -0
  77. package/build/cjs/bundle.d.ts +7 -0
  78. package/build/cjs/bundle.js +12 -0
  79. package/build/cjs/extended/BTreeMap.d.ts +5 -0
  80. package/build/cjs/extended/BTreeMap.js +14 -0
  81. package/build/cjs/extended/BTreeSet.d.ts +64 -0
  82. package/build/cjs/extended/BTreeSet.js +189 -0
  83. package/build/cjs/extended/BitVec.d.ts +37 -0
  84. package/build/cjs/extended/BitVec.js +112 -0
  85. package/build/cjs/extended/Bytes.d.ts +29 -0
  86. package/build/cjs/extended/Bytes.js +74 -0
  87. package/build/cjs/extended/HashMap.d.ts +5 -0
  88. package/build/cjs/extended/HashMap.js +14 -0
  89. package/build/cjs/extended/Linkage.d.ts +37 -0
  90. package/build/cjs/extended/Linkage.js +70 -0
  91. package/build/cjs/extended/Map.d.ts +59 -0
  92. package/build/cjs/extended/Map.js +204 -0
  93. package/build/cjs/extended/OptionBool.d.ts +36 -0
  94. package/build/cjs/extended/OptionBool.js +76 -0
  95. package/build/cjs/extended/Range.d.ts +29 -0
  96. package/build/cjs/extended/Range.js +42 -0
  97. package/build/cjs/extended/RangeInclusive.d.ts +6 -0
  98. package/build/cjs/extended/RangeInclusive.js +17 -0
  99. package/build/cjs/extended/Type.d.ts +16 -0
  100. package/build/cjs/extended/Type.js +25 -0
  101. package/build/cjs/extended/U8aFixed.d.ts +16 -0
  102. package/build/cjs/extended/U8aFixed.js +46 -0
  103. package/build/cjs/extended/WrapperKeepOpaque.d.ts +40 -0
  104. package/build/cjs/extended/WrapperKeepOpaque.js +103 -0
  105. package/build/cjs/extended/WrapperOpaque.d.ts +10 -0
  106. package/build/cjs/extended/WrapperOpaque.js +23 -0
  107. package/build/cjs/extended/index.d.ts +14 -0
  108. package/build/cjs/extended/index.js +32 -0
  109. package/build/cjs/index.d.ts +2 -0
  110. package/build/cjs/index.js +5 -0
  111. package/build/cjs/native/Bool.d.ts +71 -0
  112. package/build/cjs/native/Bool.js +113 -0
  113. package/build/cjs/native/Date.d.ts +84 -0
  114. package/build/cjs/native/Date.js +144 -0
  115. package/build/cjs/native/Float.d.ts +68 -0
  116. package/build/cjs/native/Float.js +111 -0
  117. package/build/cjs/native/Json.d.ts +69 -0
  118. package/build/cjs/native/Json.js +121 -0
  119. package/build/cjs/native/Raw.d.ts +87 -0
  120. package/build/cjs/native/Raw.js +144 -0
  121. package/build/cjs/native/Set.d.ts +84 -0
  122. package/build/cjs/native/Set.js +219 -0
  123. package/build/cjs/native/Struct.d.ts +106 -0
  124. package/build/cjs/native/Struct.data.js +4 -0
  125. package/build/cjs/native/Struct.js +264 -0
  126. package/build/cjs/native/Text.d.ts +77 -0
  127. package/build/cjs/native/Text.js +154 -0
  128. package/build/cjs/native/index.d.ts +8 -0
  129. package/build/cjs/native/index.js +22 -0
  130. package/build/cjs/package.json +3 -0
  131. package/build/cjs/packageDetect.d.ts +1 -0
  132. package/build/cjs/packageDetect.js +5 -0
  133. package/build/cjs/packageInfo.d.ts +6 -0
  134. package/build/cjs/packageInfo.js +4 -0
  135. package/build/cjs/primitive/F32.d.ts +11 -0
  136. package/build/cjs/primitive/F32.js +14 -0
  137. package/build/cjs/primitive/F64.d.ts +11 -0
  138. package/build/cjs/primitive/F64.js +14 -0
  139. package/build/cjs/primitive/I128.d.ts +11 -0
  140. package/build/cjs/primitive/I128.js +14 -0
  141. package/build/cjs/primitive/I16.d.ts +11 -0
  142. package/build/cjs/primitive/I16.js +14 -0
  143. package/build/cjs/primitive/I256.d.ts +11 -0
  144. package/build/cjs/primitive/I256.js +14 -0
  145. package/build/cjs/primitive/I32.d.ts +11 -0
  146. package/build/cjs/primitive/I32.js +14 -0
  147. package/build/cjs/primitive/I64.d.ts +11 -0
  148. package/build/cjs/primitive/I64.js +14 -0
  149. package/build/cjs/primitive/I8.d.ts +11 -0
  150. package/build/cjs/primitive/I8.js +14 -0
  151. package/build/cjs/primitive/ISize.d.ts +12 -0
  152. package/build/cjs/primitive/ISize.js +18 -0
  153. package/build/cjs/primitive/U128.d.ts +11 -0
  154. package/build/cjs/primitive/U128.js +14 -0
  155. package/build/cjs/primitive/U16.d.ts +11 -0
  156. package/build/cjs/primitive/U16.js +14 -0
  157. package/build/cjs/primitive/U256.d.ts +11 -0
  158. package/build/cjs/primitive/U256.js +14 -0
  159. package/build/cjs/primitive/U32.d.ts +11 -0
  160. package/build/cjs/primitive/U32.js +14 -0
  161. package/build/cjs/primitive/U64.d.ts +11 -0
  162. package/build/cjs/primitive/U64.js +14 -0
  163. package/build/cjs/primitive/U8.d.ts +11 -0
  164. package/build/cjs/primitive/U8.js +14 -0
  165. package/build/cjs/primitive/USize.d.ts +12 -0
  166. package/build/cjs/primitive/USize.js +18 -0
  167. package/build/cjs/primitive/index.d.ts +16 -0
  168. package/build/cjs/primitive/index.js +51 -0
  169. package/build/cjs/types/codec.d.ts +113 -0
  170. package/build/cjs/types/codec.js +2 -0
  171. package/build/cjs/types/helpers.d.ts +27 -0
  172. package/build/cjs/types/helpers.js +2 -0
  173. package/build/cjs/types/index.d.ts +4 -0
  174. package/build/cjs/types/index.js +7 -0
  175. package/build/cjs/types/interfaces.d.ts +74 -0
  176. package/build/cjs/types/interfaces.js +2 -0
  177. package/build/cjs/types/registry.d.ts +67 -0
  178. package/build/cjs/types/registry.js +2 -0
  179. package/build/cjs/utils/compareArray.d.ts +1 -0
  180. package/build/cjs/utils/compareArray.js +13 -0
  181. package/build/cjs/utils/compareMap.d.ts +1 -0
  182. package/build/cjs/utils/compareMap.js +30 -0
  183. package/build/cjs/utils/compareSet.d.ts +1 -0
  184. package/build/cjs/utils/compareSet.js +20 -0
  185. package/build/cjs/utils/decodeU8a.d.ts +26 -0
  186. package/build/cjs/utils/decodeU8a.js +105 -0
  187. package/build/cjs/utils/index.d.ts +8 -0
  188. package/build/cjs/utils/index.js +25 -0
  189. package/build/cjs/utils/sanitize.d.ts +15 -0
  190. package/build/cjs/utils/sanitize.js +233 -0
  191. package/build/cjs/utils/sortValues.d.ts +12 -0
  192. package/build/cjs/utils/sortValues.js +84 -0
  193. package/build/cjs/utils/toConstructors.d.ts +16 -0
  194. package/build/cjs/utils/toConstructors.js +40 -0
  195. package/build/cjs/utils/typesToMap.d.ts +2 -0
  196. package/build/cjs/utils/typesToMap.js +10 -0
  197. package/build/cjs/utils/util.d.ts +3 -0
  198. package/build/cjs/utils/util.js +7 -0
  199. package/build/extended/BTreeMap.d.ts +5 -0
  200. package/build/extended/BTreeMap.js +10 -0
  201. package/build/extended/BTreeSet.d.ts +64 -0
  202. package/build/extended/BTreeSet.js +185 -0
  203. package/build/extended/BitVec.d.ts +37 -0
  204. package/build/extended/BitVec.js +108 -0
  205. package/build/extended/Bytes.d.ts +29 -0
  206. package/build/extended/Bytes.js +70 -0
  207. package/build/extended/HashMap.d.ts +5 -0
  208. package/build/extended/HashMap.js +10 -0
  209. package/build/extended/Linkage.d.ts +37 -0
  210. package/build/extended/Linkage.js +65 -0
  211. package/build/extended/Map.d.ts +59 -0
  212. package/build/extended/Map.js +200 -0
  213. package/build/extended/OptionBool.d.ts +36 -0
  214. package/build/extended/OptionBool.js +72 -0
  215. package/build/extended/Range.d.ts +29 -0
  216. package/build/extended/Range.js +38 -0
  217. package/build/extended/RangeInclusive.d.ts +6 -0
  218. package/build/extended/RangeInclusive.js +13 -0
  219. package/build/extended/Type.d.ts +16 -0
  220. package/build/extended/Type.js +21 -0
  221. package/build/extended/U8aFixed.d.ts +16 -0
  222. package/build/extended/U8aFixed.js +42 -0
  223. package/build/extended/WrapperKeepOpaque.d.ts +40 -0
  224. package/build/extended/WrapperKeepOpaque.js +99 -0
  225. package/build/extended/WrapperOpaque.d.ts +10 -0
  226. package/build/extended/WrapperOpaque.js +19 -0
  227. package/build/extended/index.d.ts +14 -0
  228. package/build/extended/index.js +14 -0
  229. package/build/index.d.ts +2 -0
  230. package/build/index.js +2 -0
  231. package/build/native/Bool.d.ts +71 -0
  232. package/build/native/Bool.js +109 -0
  233. package/build/native/Date.d.ts +84 -0
  234. package/build/native/Date.js +140 -0
  235. package/build/native/Float.d.ts +68 -0
  236. package/build/native/Float.js +107 -0
  237. package/build/native/Json.d.ts +69 -0
  238. package/build/native/Json.js +117 -0
  239. package/build/native/Raw.d.ts +87 -0
  240. package/build/native/Raw.js +140 -0
  241. package/build/native/Set.d.ts +84 -0
  242. package/build/native/Set.js +215 -0
  243. package/build/native/Struct.d.ts +106 -0
  244. package/build/native/Struct.data.js +1 -0
  245. package/build/native/Struct.js +260 -0
  246. package/build/native/Text.d.ts +77 -0
  247. package/build/native/Text.js +150 -0
  248. package/build/native/index.d.ts +8 -0
  249. package/build/native/index.js +8 -0
  250. package/build/package.json +1149 -0
  251. package/build/packageDetect.d.ts +1 -0
  252. package/build/packageDetect.js +3 -0
  253. package/build/packageInfo.d.ts +6 -0
  254. package/build/packageInfo.js +1 -0
  255. package/build/primitive/F32.d.ts +11 -0
  256. package/build/primitive/F32.js +10 -0
  257. package/build/primitive/F64.d.ts +11 -0
  258. package/build/primitive/F64.js +10 -0
  259. package/build/primitive/I128.d.ts +11 -0
  260. package/build/primitive/I128.js +10 -0
  261. package/build/primitive/I16.d.ts +11 -0
  262. package/build/primitive/I16.js +10 -0
  263. package/build/primitive/I256.d.ts +11 -0
  264. package/build/primitive/I256.js +10 -0
  265. package/build/primitive/I32.d.ts +11 -0
  266. package/build/primitive/I32.js +10 -0
  267. package/build/primitive/I64.d.ts +11 -0
  268. package/build/primitive/I64.js +10 -0
  269. package/build/primitive/I8.d.ts +11 -0
  270. package/build/primitive/I8.js +10 -0
  271. package/build/primitive/ISize.d.ts +12 -0
  272. package/build/primitive/ISize.js +14 -0
  273. package/build/primitive/U128.d.ts +11 -0
  274. package/build/primitive/U128.js +10 -0
  275. package/build/primitive/U16.d.ts +11 -0
  276. package/build/primitive/U16.js +10 -0
  277. package/build/primitive/U256.d.ts +11 -0
  278. package/build/primitive/U256.js +10 -0
  279. package/build/primitive/U32.d.ts +11 -0
  280. package/build/primitive/U32.js +10 -0
  281. package/build/primitive/U64.d.ts +11 -0
  282. package/build/primitive/U64.js +10 -0
  283. package/build/primitive/U8.d.ts +11 -0
  284. package/build/primitive/U8.js +10 -0
  285. package/build/primitive/USize.d.ts +12 -0
  286. package/build/primitive/USize.js +14 -0
  287. package/build/primitive/index.d.ts +16 -0
  288. package/build/primitive/index.js +16 -0
  289. package/build/types/codec.d.ts +113 -0
  290. package/build/types/codec.js +1 -0
  291. package/build/types/helpers.d.ts +27 -0
  292. package/build/types/helpers.js +1 -0
  293. package/build/types/index.d.ts +4 -0
  294. package/build/types/index.js +4 -0
  295. package/build/types/interfaces.d.ts +74 -0
  296. package/build/types/interfaces.js +1 -0
  297. package/build/types/registry.d.ts +67 -0
  298. package/build/types/registry.js +1 -0
  299. package/build/utils/compareArray.d.ts +1 -0
  300. package/build/utils/compareArray.js +10 -0
  301. package/build/utils/compareMap.d.ts +1 -0
  302. package/build/utils/compareMap.js +27 -0
  303. package/build/utils/compareSet.d.ts +1 -0
  304. package/build/utils/compareSet.js +17 -0
  305. package/build/utils/decodeU8a.d.ts +26 -0
  306. package/build/utils/decodeU8a.js +100 -0
  307. package/build/utils/index.d.ts +8 -0
  308. package/build/utils/index.js +8 -0
  309. package/build/utils/sanitize.d.ts +15 -0
  310. package/build/utils/sanitize.js +219 -0
  311. package/build/utils/sortValues.d.ts +12 -0
  312. package/build/utils/sortValues.js +79 -0
  313. package/build/utils/toConstructors.d.ts +16 -0
  314. package/build/utils/toConstructors.js +35 -0
  315. package/build/utils/typesToMap.d.ts +2 -0
  316. package/build/utils/typesToMap.js +7 -0
  317. package/build/utils/util.d.ts +3 -0
  318. package/build/utils/util.js +4 -0
  319. package/build-deno/README.md +3 -0
  320. package/build-deno/abstract/Array.ts +211 -0
  321. package/build-deno/abstract/Base.ts +127 -0
  322. package/build-deno/abstract/Int.ts +267 -0
  323. package/build-deno/abstract/Object.ts +97 -0
  324. package/build-deno/abstract/index.ts +4 -0
  325. package/build-deno/base/Compact.ts +196 -0
  326. package/build-deno/base/DoNotConstruct.ts +116 -0
  327. package/build-deno/base/Enum.ts +457 -0
  328. package/build-deno/base/Int.ts +32 -0
  329. package/build-deno/base/Null.ts +94 -0
  330. package/build-deno/base/Option.ts +273 -0
  331. package/build-deno/base/Result.ts +77 -0
  332. package/build-deno/base/Tuple.ts +147 -0
  333. package/build-deno/base/UInt.ts +28 -0
  334. package/build-deno/base/Vec.ts +131 -0
  335. package/build-deno/base/VecAny.ts +21 -0
  336. package/build-deno/base/VecFixed.ts +90 -0
  337. package/build-deno/base/index.ts +13 -0
  338. package/build-deno/bundle.ts +9 -0
  339. package/build-deno/checkTypes.manual.ts +10 -0
  340. package/build-deno/extended/BTreeMap.ts +14 -0
  341. package/build-deno/extended/BTreeSet.ts +231 -0
  342. package/build-deno/extended/BitVec.ts +135 -0
  343. package/build-deno/extended/Bytes.ts +85 -0
  344. package/build-deno/extended/HashMap.ts +14 -0
  345. package/build-deno/extended/Linkage.ts +79 -0
  346. package/build-deno/extended/Map.ts +253 -0
  347. package/build-deno/extended/OptionBool.ts +91 -0
  348. package/build-deno/extended/Range.ts +54 -0
  349. package/build-deno/extended/RangeInclusive.ts +18 -0
  350. package/build-deno/extended/Type.ts +27 -0
  351. package/build-deno/extended/U8aFixed.ts +55 -0
  352. package/build-deno/extended/WrapperKeepOpaque.ts +126 -0
  353. package/build-deno/extended/WrapperOpaque.ts +25 -0
  354. package/build-deno/extended/index.ts +15 -0
  355. package/build-deno/index.ts +4 -0
  356. package/build-deno/mod.ts +2 -0
  357. package/build-deno/native/Bool.ts +135 -0
  358. package/build-deno/native/Date.ts +167 -0
  359. package/build-deno/native/Float.ts +134 -0
  360. package/build-deno/native/Json.ts +145 -0
  361. package/build-deno/native/Raw.ts +169 -0
  362. package/build-deno/native/Set.ts +267 -0
  363. package/build-deno/native/Struct.data.ts +2 -0
  364. package/build-deno/native/Struct.ts +336 -0
  365. package/build-deno/native/Text.ts +182 -0
  366. package/build-deno/native/index.ts +9 -0
  367. package/build-deno/packageDetect.ts +7 -0
  368. package/build-deno/packageInfo.ts +3 -0
  369. package/build-deno/primitive/F32.ts +12 -0
  370. package/build-deno/primitive/F64.ts +12 -0
  371. package/build-deno/primitive/I128.ts +12 -0
  372. package/build-deno/primitive/I16.ts +12 -0
  373. package/build-deno/primitive/I256.ts +12 -0
  374. package/build-deno/primitive/I32.ts +12 -0
  375. package/build-deno/primitive/I64.ts +12 -0
  376. package/build-deno/primitive/I8.ts +12 -0
  377. package/build-deno/primitive/ISize.ts +19 -0
  378. package/build-deno/primitive/U128.ts +12 -0
  379. package/build-deno/primitive/U16.ts +12 -0
  380. package/build-deno/primitive/U256.ts +12 -0
  381. package/build-deno/primitive/U32.ts +12 -0
  382. package/build-deno/primitive/U64.ts +12 -0
  383. package/build-deno/primitive/U8.ts +12 -0
  384. package/build-deno/primitive/USize.ts +19 -0
  385. package/build-deno/primitive/index.ts +17 -0
  386. package/build-deno/test/performance.ts +57 -0
  387. package/build-deno/types/codec.ts +138 -0
  388. package/build-deno/types/helpers.ts +41 -0
  389. package/build-deno/types/index.ts +5 -0
  390. package/build-deno/types/interfaces.ts +94 -0
  391. package/build-deno/types/registry.ts +84 -0
  392. package/build-deno/utils/compareArray.ts +18 -0
  393. package/build-deno/utils/compareMap.ts +36 -0
  394. package/build-deno/utils/compareSet.ts +19 -0
  395. package/build-deno/utils/decodeU8a.ts +121 -0
  396. package/build-deno/utils/index.ts +9 -0
  397. package/build-deno/utils/sanitize.ts +282 -0
  398. package/build-deno/utils/sortValues.ts +101 -0
  399. package/build-deno/utils/toConstructors.ts +44 -0
  400. package/build-deno/utils/typesToMap.ts +12 -0
  401. package/build-deno/utils/util.ts +6 -0
  402. package/build-tsc/abstract/Array.d.ts +89 -0
  403. package/build-tsc/abstract/Base.d.ts +75 -0
  404. package/build-tsc/abstract/Int.d.ts +80 -0
  405. package/build-tsc/abstract/Object.d.ts +67 -0
  406. package/build-tsc/abstract/index.d.ts +3 -0
  407. package/build-tsc/base/Compact.d.ts +88 -0
  408. package/build-tsc/base/DoNotConstruct.d.ts +63 -0
  409. package/build-tsc/base/Enum.d.ts +118 -0
  410. package/build-tsc/base/Int.d.ts +16 -0
  411. package/build-tsc/base/Null.d.ts +56 -0
  412. package/build-tsc/base/Option.d.ts +94 -0
  413. package/build-tsc/base/Result.d.ts +38 -0
  414. package/build-tsc/base/Tuple.d.ts +42 -0
  415. package/build-tsc/base/UInt.d.ts +15 -0
  416. package/build-tsc/base/Vec.d.ts +28 -0
  417. package/build-tsc/base/VecAny.d.ts +15 -0
  418. package/build-tsc/base/VecFixed.d.ts +30 -0
  419. package/build-tsc/base/index.d.ts +12 -0
  420. package/build-tsc/bundle.d.ts +7 -0
  421. package/build-tsc/extended/BTreeMap.d.ts +5 -0
  422. package/build-tsc/extended/BTreeSet.d.ts +64 -0
  423. package/build-tsc/extended/BitVec.d.ts +37 -0
  424. package/build-tsc/extended/Bytes.d.ts +29 -0
  425. package/build-tsc/extended/HashMap.d.ts +5 -0
  426. package/build-tsc/extended/Linkage.d.ts +37 -0
  427. package/build-tsc/extended/Map.d.ts +59 -0
  428. package/build-tsc/extended/OptionBool.d.ts +36 -0
  429. package/build-tsc/extended/Range.d.ts +29 -0
  430. package/build-tsc/extended/RangeInclusive.d.ts +6 -0
  431. package/build-tsc/extended/Type.d.ts +16 -0
  432. package/build-tsc/extended/U8aFixed.d.ts +16 -0
  433. package/build-tsc/extended/WrapperKeepOpaque.d.ts +40 -0
  434. package/build-tsc/extended/WrapperOpaque.d.ts +10 -0
  435. package/build-tsc/extended/index.d.ts +14 -0
  436. package/build-tsc/index.d.ts +2 -0
  437. package/build-tsc/native/Bool.d.ts +71 -0
  438. package/build-tsc/native/Date.d.ts +84 -0
  439. package/build-tsc/native/Float.d.ts +68 -0
  440. package/build-tsc/native/Json.d.ts +69 -0
  441. package/build-tsc/native/Raw.d.ts +87 -0
  442. package/build-tsc/native/Set.d.ts +84 -0
  443. package/build-tsc/native/Struct.d.ts +106 -0
  444. package/build-tsc/native/Text.d.ts +77 -0
  445. package/build-tsc/native/index.d.ts +8 -0
  446. package/build-tsc/packageDetect.d.ts +1 -0
  447. package/build-tsc/packageInfo.d.ts +6 -0
  448. package/build-tsc/primitive/F32.d.ts +11 -0
  449. package/build-tsc/primitive/F64.d.ts +11 -0
  450. package/build-tsc/primitive/I128.d.ts +11 -0
  451. package/build-tsc/primitive/I16.d.ts +11 -0
  452. package/build-tsc/primitive/I256.d.ts +11 -0
  453. package/build-tsc/primitive/I32.d.ts +11 -0
  454. package/build-tsc/primitive/I64.d.ts +11 -0
  455. package/build-tsc/primitive/I8.d.ts +11 -0
  456. package/build-tsc/primitive/ISize.d.ts +12 -0
  457. package/build-tsc/primitive/U128.d.ts +11 -0
  458. package/build-tsc/primitive/U16.d.ts +11 -0
  459. package/build-tsc/primitive/U256.d.ts +11 -0
  460. package/build-tsc/primitive/U32.d.ts +11 -0
  461. package/build-tsc/primitive/U64.d.ts +11 -0
  462. package/build-tsc/primitive/U8.d.ts +11 -0
  463. package/build-tsc/primitive/USize.d.ts +12 -0
  464. package/build-tsc/primitive/index.d.ts +16 -0
  465. package/build-tsc/types/codec.d.ts +113 -0
  466. package/build-tsc/types/helpers.d.ts +27 -0
  467. package/build-tsc/types/index.d.ts +4 -0
  468. package/build-tsc/types/interfaces.d.ts +74 -0
  469. package/build-tsc/types/registry.d.ts +67 -0
  470. package/build-tsc/utils/compareArray.d.ts +1 -0
  471. package/build-tsc/utils/compareMap.d.ts +1 -0
  472. package/build-tsc/utils/compareSet.d.ts +1 -0
  473. package/build-tsc/utils/decodeU8a.d.ts +26 -0
  474. package/build-tsc/utils/index.d.ts +8 -0
  475. package/build-tsc/utils/sanitize.d.ts +15 -0
  476. package/build-tsc/utils/sortValues.d.ts +12 -0
  477. package/build-tsc/utils/toConstructors.d.ts +16 -0
  478. package/build-tsc/utils/typesToMap.d.ts +2 -0
  479. package/build-tsc/utils/util.d.ts +3 -0
  480. package/build-tsc-cjs/abstract/Array.js +170 -0
  481. package/build-tsc-cjs/abstract/Base.js +105 -0
  482. package/build-tsc-cjs/abstract/Int.js +230 -0
  483. package/build-tsc-cjs/abstract/Object.js +44 -0
  484. package/build-tsc-cjs/abstract/index.js +9 -0
  485. package/build-tsc-cjs/base/Compact.js +163 -0
  486. package/build-tsc-cjs/base/DoNotConstruct.js +99 -0
  487. package/build-tsc-cjs/base/Enum.js +373 -0
  488. package/build-tsc-cjs/base/Int.js +30 -0
  489. package/build-tsc-cjs/base/Null.js +81 -0
  490. package/build-tsc-cjs/base/Option.js +236 -0
  491. package/build-tsc-cjs/base/Result.js +67 -0
  492. package/build-tsc-cjs/base/Tuple.js +114 -0
  493. package/build-tsc-cjs/base/UInt.js +27 -0
  494. package/build-tsc-cjs/base/Vec.js +107 -0
  495. package/build-tsc-cjs/base/VecAny.js +21 -0
  496. package/build-tsc-cjs/base/VecFixed.js +71 -0
  497. package/build-tsc-cjs/base/index.js +27 -0
  498. package/build-tsc-cjs/bundle.js +12 -0
  499. package/build-tsc-cjs/extended/BTreeMap.js +14 -0
  500. package/build-tsc-cjs/extended/BTreeSet.js +189 -0
  501. package/build-tsc-cjs/extended/BitVec.js +112 -0
  502. package/build-tsc-cjs/extended/Bytes.js +74 -0
  503. package/build-tsc-cjs/extended/HashMap.js +14 -0
  504. package/build-tsc-cjs/extended/Linkage.js +70 -0
  505. package/build-tsc-cjs/extended/Map.js +204 -0
  506. package/build-tsc-cjs/extended/OptionBool.js +76 -0
  507. package/build-tsc-cjs/extended/Range.js +42 -0
  508. package/build-tsc-cjs/extended/RangeInclusive.js +17 -0
  509. package/build-tsc-cjs/extended/Type.js +25 -0
  510. package/build-tsc-cjs/extended/U8aFixed.js +46 -0
  511. package/build-tsc-cjs/extended/WrapperKeepOpaque.js +103 -0
  512. package/build-tsc-cjs/extended/WrapperOpaque.js +23 -0
  513. package/build-tsc-cjs/extended/index.js +32 -0
  514. package/build-tsc-cjs/index.js +5 -0
  515. package/build-tsc-cjs/native/Bool.js +113 -0
  516. package/build-tsc-cjs/native/Date.js +144 -0
  517. package/build-tsc-cjs/native/Float.js +111 -0
  518. package/build-tsc-cjs/native/Json.js +121 -0
  519. package/build-tsc-cjs/native/Raw.js +144 -0
  520. package/build-tsc-cjs/native/Set.js +219 -0
  521. package/build-tsc-cjs/native/Struct.data.js +4 -0
  522. package/build-tsc-cjs/native/Struct.js +264 -0
  523. package/build-tsc-cjs/native/Text.js +154 -0
  524. package/build-tsc-cjs/native/index.js +22 -0
  525. package/build-tsc-cjs/packageDetect.js +5 -0
  526. package/build-tsc-cjs/packageInfo.js +4 -0
  527. package/build-tsc-cjs/primitive/F32.js +14 -0
  528. package/build-tsc-cjs/primitive/F64.js +14 -0
  529. package/build-tsc-cjs/primitive/I128.js +14 -0
  530. package/build-tsc-cjs/primitive/I16.js +14 -0
  531. package/build-tsc-cjs/primitive/I256.js +14 -0
  532. package/build-tsc-cjs/primitive/I32.js +14 -0
  533. package/build-tsc-cjs/primitive/I64.js +14 -0
  534. package/build-tsc-cjs/primitive/I8.js +14 -0
  535. package/build-tsc-cjs/primitive/ISize.js +18 -0
  536. package/build-tsc-cjs/primitive/U128.js +14 -0
  537. package/build-tsc-cjs/primitive/U16.js +14 -0
  538. package/build-tsc-cjs/primitive/U256.js +14 -0
  539. package/build-tsc-cjs/primitive/U32.js +14 -0
  540. package/build-tsc-cjs/primitive/U64.js +14 -0
  541. package/build-tsc-cjs/primitive/U8.js +14 -0
  542. package/build-tsc-cjs/primitive/USize.js +18 -0
  543. package/build-tsc-cjs/primitive/index.js +51 -0
  544. package/build-tsc-cjs/types/codec.js +2 -0
  545. package/build-tsc-cjs/types/helpers.js +2 -0
  546. package/build-tsc-cjs/types/index.js +7 -0
  547. package/build-tsc-cjs/types/interfaces.js +2 -0
  548. package/build-tsc-cjs/types/registry.js +2 -0
  549. package/build-tsc-cjs/utils/compareArray.js +13 -0
  550. package/build-tsc-cjs/utils/compareMap.js +30 -0
  551. package/build-tsc-cjs/utils/compareSet.js +20 -0
  552. package/build-tsc-cjs/utils/decodeU8a.js +105 -0
  553. package/build-tsc-cjs/utils/index.js +25 -0
  554. package/build-tsc-cjs/utils/sanitize.js +233 -0
  555. package/build-tsc-cjs/utils/sortValues.js +84 -0
  556. package/build-tsc-cjs/utils/toConstructors.js +40 -0
  557. package/build-tsc-cjs/utils/typesToMap.js +10 -0
  558. package/build-tsc-cjs/utils/util.js +7 -0
  559. package/build-tsc-esm/abstract/Array.js +166 -0
  560. package/build-tsc-esm/abstract/Base.js +101 -0
  561. package/build-tsc-esm/abstract/Int.js +226 -0
  562. package/build-tsc-esm/abstract/Object.js +40 -0
  563. package/build-tsc-esm/abstract/index.js +3 -0
  564. package/build-tsc-esm/base/Compact.js +159 -0
  565. package/build-tsc-esm/base/DoNotConstruct.js +95 -0
  566. package/build-tsc-esm/base/Enum.js +369 -0
  567. package/build-tsc-esm/base/Int.js +26 -0
  568. package/build-tsc-esm/base/Null.js +77 -0
  569. package/build-tsc-esm/base/Option.js +232 -0
  570. package/build-tsc-esm/base/Result.js +63 -0
  571. package/build-tsc-esm/base/Tuple.js +110 -0
  572. package/build-tsc-esm/base/UInt.js +23 -0
  573. package/build-tsc-esm/base/Vec.js +102 -0
  574. package/build-tsc-esm/base/VecAny.js +17 -0
  575. package/build-tsc-esm/base/VecFixed.js +67 -0
  576. package/build-tsc-esm/base/index.js +12 -0
  577. package/build-tsc-esm/bundle.js +7 -0
  578. package/build-tsc-esm/extended/BTreeMap.js +10 -0
  579. package/build-tsc-esm/extended/BTreeSet.js +185 -0
  580. package/build-tsc-esm/extended/BitVec.js +108 -0
  581. package/build-tsc-esm/extended/Bytes.js +70 -0
  582. package/build-tsc-esm/extended/HashMap.js +10 -0
  583. package/build-tsc-esm/extended/Linkage.js +65 -0
  584. package/build-tsc-esm/extended/Map.js +200 -0
  585. package/build-tsc-esm/extended/OptionBool.js +72 -0
  586. package/build-tsc-esm/extended/Range.js +38 -0
  587. package/build-tsc-esm/extended/RangeInclusive.js +13 -0
  588. package/build-tsc-esm/extended/Type.js +21 -0
  589. package/build-tsc-esm/extended/U8aFixed.js +42 -0
  590. package/build-tsc-esm/extended/WrapperKeepOpaque.js +99 -0
  591. package/build-tsc-esm/extended/WrapperOpaque.js +19 -0
  592. package/build-tsc-esm/extended/index.js +14 -0
  593. package/build-tsc-esm/index.js +2 -0
  594. package/build-tsc-esm/native/Bool.js +109 -0
  595. package/build-tsc-esm/native/Date.js +140 -0
  596. package/build-tsc-esm/native/Float.js +107 -0
  597. package/build-tsc-esm/native/Json.js +117 -0
  598. package/build-tsc-esm/native/Raw.js +140 -0
  599. package/build-tsc-esm/native/Set.js +215 -0
  600. package/build-tsc-esm/native/Struct.data.js +1 -0
  601. package/build-tsc-esm/native/Struct.js +260 -0
  602. package/build-tsc-esm/native/Text.js +150 -0
  603. package/build-tsc-esm/native/index.js +8 -0
  604. package/build-tsc-esm/packageDetect.js +3 -0
  605. package/build-tsc-esm/packageInfo.js +1 -0
  606. package/build-tsc-esm/primitive/F32.js +10 -0
  607. package/build-tsc-esm/primitive/F64.js +10 -0
  608. package/build-tsc-esm/primitive/I128.js +10 -0
  609. package/build-tsc-esm/primitive/I16.js +10 -0
  610. package/build-tsc-esm/primitive/I256.js +10 -0
  611. package/build-tsc-esm/primitive/I32.js +10 -0
  612. package/build-tsc-esm/primitive/I64.js +10 -0
  613. package/build-tsc-esm/primitive/I8.js +10 -0
  614. package/build-tsc-esm/primitive/ISize.js +14 -0
  615. package/build-tsc-esm/primitive/U128.js +10 -0
  616. package/build-tsc-esm/primitive/U16.js +10 -0
  617. package/build-tsc-esm/primitive/U256.js +10 -0
  618. package/build-tsc-esm/primitive/U32.js +10 -0
  619. package/build-tsc-esm/primitive/U64.js +10 -0
  620. package/build-tsc-esm/primitive/U8.js +10 -0
  621. package/build-tsc-esm/primitive/USize.js +14 -0
  622. package/build-tsc-esm/primitive/index.js +16 -0
  623. package/build-tsc-esm/types/codec.js +1 -0
  624. package/build-tsc-esm/types/helpers.js +1 -0
  625. package/build-tsc-esm/types/index.js +4 -0
  626. package/build-tsc-esm/types/interfaces.js +1 -0
  627. package/build-tsc-esm/types/registry.js +1 -0
  628. package/build-tsc-esm/utils/compareArray.js +10 -0
  629. package/build-tsc-esm/utils/compareMap.js +27 -0
  630. package/build-tsc-esm/utils/compareSet.js +17 -0
  631. package/build-tsc-esm/utils/decodeU8a.js +100 -0
  632. package/build-tsc-esm/utils/index.js +8 -0
  633. package/build-tsc-esm/utils/sanitize.js +219 -0
  634. package/build-tsc-esm/utils/sortValues.js +79 -0
  635. package/build-tsc-esm/utils/toConstructors.js +35 -0
  636. package/build-tsc-esm/utils/typesToMap.js +7 -0
  637. package/build-tsc-esm/utils/util.js +4 -0
  638. package/cjs/packageInfo.js +1 -1
  639. package/package.json +1 -1
  640. package/packageInfo.js +1 -1
  641. package/src/abstract/Array.ts +213 -0
  642. package/src/abstract/Base.ts +129 -0
  643. package/src/abstract/Int.ts +271 -0
  644. package/src/abstract/Object.ts +99 -0
  645. package/src/abstract/index.ts +6 -0
  646. package/src/base/Compact.spec.ts +99 -0
  647. package/src/base/Compact.ts +198 -0
  648. package/src/base/DoNotConstruct.spec.ts +23 -0
  649. package/src/base/DoNotConstruct.ts +118 -0
  650. package/src/base/Enum.spec.ts +487 -0
  651. package/src/base/Enum.ts +460 -0
  652. package/src/base/Int.spec.ts +225 -0
  653. package/src/base/Int.ts +34 -0
  654. package/src/base/Null.spec.ts +41 -0
  655. package/src/base/Null.ts +96 -0
  656. package/src/base/Option.spec.ts +216 -0
  657. package/src/base/Option.ts +275 -0
  658. package/src/base/Result.spec.ts +64 -0
  659. package/src/base/Result.ts +79 -0
  660. package/src/base/Tuple.spec.ts +161 -0
  661. package/src/base/Tuple.ts +149 -0
  662. package/src/base/UInt.spec.ts +192 -0
  663. package/src/base/UInt.ts +30 -0
  664. package/src/base/Vec.spec.ts +224 -0
  665. package/src/base/Vec.ts +133 -0
  666. package/src/base/VecAny.ts +23 -0
  667. package/src/base/VecFixed.spec.ts +78 -0
  668. package/src/base/VecFixed.ts +92 -0
  669. package/src/base/index.ts +15 -0
  670. package/src/bundle.ts +13 -0
  671. package/src/checkTypes.manual.ts +12 -0
  672. package/src/extended/BTreeMap.spec.ts +245 -0
  673. package/src/extended/BTreeMap.ts +16 -0
  674. package/src/extended/BTreeSet.spec.ts +260 -0
  675. package/src/extended/BTreeSet.ts +233 -0
  676. package/src/extended/BitVec.spec.ts +97 -0
  677. package/src/extended/BitVec.ts +137 -0
  678. package/src/extended/Bytes.spec.ts +75 -0
  679. package/src/extended/Bytes.ts +88 -0
  680. package/src/extended/HashMap.spec.ts +36 -0
  681. package/src/extended/HashMap.ts +16 -0
  682. package/src/extended/Linkage.spec.ts +43 -0
  683. package/src/extended/Linkage.ts +81 -0
  684. package/src/extended/Map.spec.ts +123 -0
  685. package/src/extended/Map.ts +255 -0
  686. package/src/extended/OptionBool.spec.ts +49 -0
  687. package/src/extended/OptionBool.ts +93 -0
  688. package/src/extended/Range.spec.ts +37 -0
  689. package/src/extended/Range.ts +56 -0
  690. package/src/extended/RangeInclusive.ts +20 -0
  691. package/src/extended/Type.spec.ts +118 -0
  692. package/src/extended/Type.ts +29 -0
  693. package/src/extended/U8aFixed.spec.ts +117 -0
  694. package/src/extended/U8aFixed.ts +57 -0
  695. package/src/extended/WrapperKeepOpaque.spec.ts +101 -0
  696. package/src/extended/WrapperKeepOpaque.ts +128 -0
  697. package/src/extended/WrapperOpaque.spec.ts +58 -0
  698. package/src/extended/WrapperOpaque.ts +27 -0
  699. package/src/extended/index.ts +17 -0
  700. package/src/index.ts +6 -0
  701. package/src/mod.ts +4 -0
  702. package/src/native/Bool.spec.ts +74 -0
  703. package/src/native/Bool.ts +137 -0
  704. package/src/native/Date.spec.ts +85 -0
  705. package/src/native/Date.ts +169 -0
  706. package/src/native/Float.spec.ts +51 -0
  707. package/src/native/Float.ts +136 -0
  708. package/src/native/Json.ts +147 -0
  709. package/src/native/Raw.spec.ts +113 -0
  710. package/src/native/Raw.ts +171 -0
  711. package/src/native/Set.spec.ts +116 -0
  712. package/src/native/Set.ts +269 -0
  713. package/src/native/Struct.data.ts +4 -0
  714. package/src/native/Struct.spec.ts +411 -0
  715. package/src/native/Struct.ts +338 -0
  716. package/src/native/Text.spec.ts +85 -0
  717. package/src/native/Text.ts +184 -0
  718. package/src/native/index.ts +11 -0
  719. package/src/packageDetect.ts +11 -0
  720. package/src/packageInfo.ts +6 -0
  721. package/src/primitive/F32.ts +14 -0
  722. package/src/primitive/F64.ts +14 -0
  723. package/src/primitive/I128.ts +14 -0
  724. package/src/primitive/I16.ts +14 -0
  725. package/src/primitive/I256.ts +14 -0
  726. package/src/primitive/I32.ts +14 -0
  727. package/src/primitive/I64.ts +14 -0
  728. package/src/primitive/I8.ts +14 -0
  729. package/src/primitive/ISize.ts +21 -0
  730. package/src/primitive/U128.ts +14 -0
  731. package/src/primitive/U16.ts +14 -0
  732. package/src/primitive/U256.ts +14 -0
  733. package/src/primitive/U32.ts +14 -0
  734. package/src/primitive/U64.ts +14 -0
  735. package/src/primitive/U8.ts +14 -0
  736. package/src/primitive/USize.ts +21 -0
  737. package/src/primitive/index.ts +19 -0
  738. package/src/test/performance.ts +61 -0
  739. package/src/types/codec.ts +140 -0
  740. package/src/types/helpers.ts +50 -0
  741. package/src/types/index.ts +7 -0
  742. package/src/types/interfaces.ts +98 -0
  743. package/src/types/registry.ts +86 -0
  744. package/src/utils/compareArray.ts +22 -0
  745. package/src/utils/compareMap.ts +40 -0
  746. package/src/utils/compareSet.ts +23 -0
  747. package/src/utils/decodeU8a.ts +123 -0
  748. package/src/utils/index.ts +11 -0
  749. package/src/utils/sanitize.spec.ts +89 -0
  750. package/src/utils/sanitize.ts +290 -0
  751. package/src/utils/sortValues.ts +103 -0
  752. package/src/utils/toConstructors.ts +46 -0
  753. package/src/utils/typesToMap.ts +14 -0
  754. package/src/utils/util.ts +8 -0
  755. package/tsconfig.build.json +16 -0
  756. package/tsconfig.build.tsbuildinfo +1 -0
  757. package/tsconfig.spec.json +21 -0
  758. package/tsconfig.spec.tsbuildinfo +1 -0
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Bytes = void 0;
4
+ const util_1 = require("@pezkuwi/util");
5
+ const Raw_js_1 = require("../native/Raw.js");
6
+ const MAX_LENGTH = 10 * 1024 * 1024;
7
+ /** @internal */
8
+ function decodeBytesU8a(value) {
9
+ if (!value.length) {
10
+ return [new Uint8Array(), 0];
11
+ }
12
+ // handle all other Uint8Array inputs, these do have a length prefix
13
+ const [offset, length] = (0, util_1.compactFromU8aLim)(value);
14
+ const total = offset + length;
15
+ if (length > MAX_LENGTH) {
16
+ throw new Error(`Bytes length ${length.toString()} exceeds ${MAX_LENGTH}`);
17
+ }
18
+ else if (total > value.length) {
19
+ throw new Error(`Bytes: required length less than remainder, expected at least ${total}, found ${value.length}`);
20
+ }
21
+ return [value.subarray(offset, total), total];
22
+ }
23
+ /**
24
+ * @name Bytes
25
+ * @description
26
+ * A Bytes wrapper for Vec<u8>. The significant difference between this and a normal Uint8Array
27
+ * is that this version allows for length-encoding. (i.e. it is a variable-item codec, the same
28
+ * as what is found in [[Text]] and [[Vec]])
29
+ */
30
+ class Bytes extends Raw_js_1.Raw {
31
+ constructor(registry, value) {
32
+ const [u8a, decodedLength] = (0, util_1.isU8a)(value) && !(value instanceof Raw_js_1.Raw)
33
+ ? decodeBytesU8a(value)
34
+ : Array.isArray(value) || (0, util_1.isString)(value)
35
+ ? [(0, util_1.u8aToU8a)(value), 0]
36
+ : [value, 0];
37
+ super(registry, u8a, decodedLength);
38
+ }
39
+ /**
40
+ * @description The length of the value when encoded as a Uint8Array
41
+ */
42
+ get encodedLength() {
43
+ return this.length + (0, util_1.compactToU8a)(this.length).length;
44
+ }
45
+ /**
46
+ * @description Returns a breakdown of the hex encoding for this Codec
47
+ */
48
+ inspect(isBare) {
49
+ const clength = (0, util_1.compactToU8a)(this.length);
50
+ return {
51
+ outer: isBare
52
+ ? [super.toU8a()]
53
+ : this.length
54
+ ? [clength, super.toU8a()]
55
+ : [clength]
56
+ };
57
+ }
58
+ /**
59
+ * @description Returns the base runtime type name for this instance
60
+ */
61
+ toRawType() {
62
+ return 'Bytes';
63
+ }
64
+ /**
65
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
66
+ * @param isBare true when the value has none of the type-specific prefixes (internal)
67
+ */
68
+ toU8a(isBare) {
69
+ return isBare
70
+ ? super.toU8a(isBare)
71
+ : (0, util_1.compactAddLength)(this);
72
+ }
73
+ }
74
+ exports.Bytes = Bytes;
@@ -0,0 +1,5 @@
1
+ import type { Codec, CodecClass } from '../types/index.js';
2
+ import { CodecMap } from './Map.js';
3
+ export declare class HashMap<K extends Codec = Codec, V extends Codec = Codec> extends CodecMap<K, V> {
4
+ static with<K extends Codec, V extends Codec>(keyType: CodecClass<K> | string, valType: CodecClass<V> | string): CodecClass<CodecMap<K, V>>;
5
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HashMap = void 0;
4
+ const Map_js_1 = require("./Map.js");
5
+ class HashMap extends Map_js_1.CodecMap {
6
+ static with(keyType, valType) {
7
+ return class extends HashMap {
8
+ constructor(registry, value) {
9
+ super(registry, keyType, valType, value);
10
+ }
11
+ };
12
+ }
13
+ }
14
+ exports.HashMap = HashMap;
@@ -0,0 +1,37 @@
1
+ import type { Codec, CodecClass, Registry } from '../types/index.js';
2
+ import { Option } from '../base/Option.js';
3
+ import { Tuple } from '../base/Tuple.js';
4
+ import { Struct } from '../native/Struct.js';
5
+ type TypeWithValues = [CodecClass, any[]];
6
+ /**
7
+ * @name Linkage
8
+ * @description The wrapper for the result from a LinkedMap
9
+ */
10
+ export declare class Linkage<T extends Codec> extends Struct {
11
+ constructor(registry: Registry, Type: CodecClass | string, value?: unknown);
12
+ static withKey<O extends Codec>(Type: CodecClass | string): CodecClass<Linkage<O>>;
13
+ /**
14
+ * @description Returns the next item the Linkage is pointing to
15
+ */
16
+ get previous(): Option<T>;
17
+ /**
18
+ * @description Returns the previous item the Linkage is pointing to
19
+ */
20
+ get next(): Option<T>;
21
+ /**
22
+ * @description Returns the base runtime type name for this instance
23
+ */
24
+ toRawType(): string;
25
+ /**
26
+ * @description Custom toU8a which with bare mode does not return the linkage if empty
27
+ */
28
+ toU8a(isBare?: boolean): Uint8Array;
29
+ }
30
+ /**
31
+ * @name LinkageResult
32
+ * @description A Linkage keys/Values tuple
33
+ */
34
+ export declare class LinkageResult extends Tuple {
35
+ constructor(registry: Registry, [TypeKey, keys]: TypeWithValues, [TypeValue, values]: TypeWithValues);
36
+ }
37
+ export {};
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LinkageResult = exports.Linkage = void 0;
4
+ const Option_js_1 = require("../base/Option.js");
5
+ const Tuple_js_1 = require("../base/Tuple.js");
6
+ const Vec_js_1 = require("../base/Vec.js");
7
+ const Struct_js_1 = require("../native/Struct.js");
8
+ const EMPTY = new Uint8Array();
9
+ /**
10
+ * @name Linkage
11
+ * @description The wrapper for the result from a LinkedMap
12
+ */
13
+ class Linkage extends Struct_js_1.Struct {
14
+ constructor(registry, Type, value) {
15
+ super(registry, {
16
+ previous: Option_js_1.Option.with(Type),
17
+ // eslint-disable-next-line sort-keys
18
+ next: Option_js_1.Option.with(Type)
19
+ }, value);
20
+ }
21
+ static withKey(Type) {
22
+ return class extends Linkage {
23
+ constructor(registry, value) {
24
+ super(registry, Type, value);
25
+ }
26
+ };
27
+ }
28
+ /**
29
+ * @description Returns the next item the Linkage is pointing to
30
+ */
31
+ get previous() {
32
+ return this.get('previous');
33
+ }
34
+ /**
35
+ * @description Returns the previous item the Linkage is pointing to
36
+ */
37
+ get next() {
38
+ return this.get('next');
39
+ }
40
+ /**
41
+ * @description Returns the base runtime type name for this instance
42
+ */
43
+ toRawType() {
44
+ return `Linkage<${this.next.toRawType(true)}>`;
45
+ }
46
+ /**
47
+ * @description Custom toU8a which with bare mode does not return the linkage if empty
48
+ */
49
+ toU8a(isBare) {
50
+ // As part of a storage query (where these appear), in the case of empty, the values
51
+ // are NOT populated by the node - follow the same logic, leaving it empty
52
+ return this.isEmpty
53
+ ? EMPTY
54
+ : super.toU8a(isBare);
55
+ }
56
+ }
57
+ exports.Linkage = Linkage;
58
+ /**
59
+ * @name LinkageResult
60
+ * @description A Linkage keys/Values tuple
61
+ */
62
+ class LinkageResult extends Tuple_js_1.Tuple {
63
+ constructor(registry, [TypeKey, keys], [TypeValue, values]) {
64
+ super(registry, {
65
+ Keys: Vec_js_1.Vec.with(TypeKey),
66
+ Values: Vec_js_1.Vec.with(TypeValue)
67
+ }, [keys, values]);
68
+ }
69
+ }
70
+ exports.LinkageResult = LinkageResult;
@@ -0,0 +1,59 @@
1
+ import type { HexString } from '@pezkuwi/util/types';
2
+ import type { AnyJson, Codec, CodecClass, IMap, Inspect, IU8a, Registry } from '../types/index.js';
3
+ export declare class CodecMap<K extends Codec = Codec, V extends Codec = Codec> extends Map<K, V> implements IMap<K, V> {
4
+ #private;
5
+ readonly registry: Registry;
6
+ createdAtHash?: IU8a;
7
+ initialU8aLength?: number;
8
+ isStorageFallback?: boolean;
9
+ constructor(registry: Registry, keyType: CodecClass<K> | string, valType: CodecClass<V> | string, rawValue: Uint8Array | string | Map<any, any> | undefined, type?: 'BTreeMap' | 'HashMap');
10
+ /**
11
+ * @description The length of the value when encoded as a Uint8Array
12
+ */
13
+ get encodedLength(): number;
14
+ /**
15
+ * @description Returns a hash of the value
16
+ */
17
+ get hash(): IU8a;
18
+ /**
19
+ * @description Checks if the value is an empty value
20
+ */
21
+ get isEmpty(): boolean;
22
+ /**
23
+ * @description Compares the value of the input to see if there is a match
24
+ */
25
+ eq(other?: unknown): boolean;
26
+ /**
27
+ * @description Returns a breakdown of the hex encoding for this Codec
28
+ */
29
+ inspect(): Inspect;
30
+ /**
31
+ * @description Returns a hex string representation of the value. isLe returns a LE (number-only) representation
32
+ */
33
+ toHex(): HexString;
34
+ /**
35
+ * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
36
+ */
37
+ toHuman(isExtended?: boolean, disableAscii?: boolean): Record<string, AnyJson>;
38
+ /**
39
+ * @description Converts the Object to JSON, typically used for RPC transfers
40
+ */
41
+ toJSON(): Record<string, AnyJson>;
42
+ /**
43
+ * @description Converts the value in a best-fit primitive form
44
+ */
45
+ toPrimitive(disableAscii?: boolean): AnyJson;
46
+ /**
47
+ * @description Returns the base runtime type name for this instance
48
+ */
49
+ toRawType(): string;
50
+ /**
51
+ * @description Returns the string representation of the value
52
+ */
53
+ toString(): string;
54
+ /**
55
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
56
+ * @param isBare true when the value has none of the type-specific prefixes (internal)
57
+ */
58
+ toU8a(isBare?: boolean): Uint8Array;
59
+ }
@@ -0,0 +1,204 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CodecMap = void 0;
4
+ const util_1 = require("@pezkuwi/util");
5
+ const Array_js_1 = require("../abstract/Array.js");
6
+ const Enum_js_1 = require("../base/Enum.js");
7
+ const Raw_js_1 = require("../native/Raw.js");
8
+ const Struct_js_1 = require("../native/Struct.js");
9
+ const index_js_1 = require("../utils/index.js");
10
+ const l = (0, util_1.logger)('Map');
11
+ /** @internal */
12
+ function decodeMapFromU8a(registry, KeyClass, ValClass, u8a) {
13
+ const output = new Map();
14
+ const [offset, count] = (0, util_1.compactFromU8aLim)(u8a);
15
+ const types = [];
16
+ for (let i = 0; i < count; i++) {
17
+ types.push(KeyClass, ValClass);
18
+ }
19
+ const [values, decodedLength] = (0, index_js_1.decodeU8a)(registry, new Array(types.length), u8a.subarray(offset), [types, []]);
20
+ for (let i = 0, count = values.length; i < count; i += 2) {
21
+ output.set(values[i], values[i + 1]);
22
+ }
23
+ return [KeyClass, ValClass, output, offset + decodedLength];
24
+ }
25
+ /** @internal */
26
+ function decodeMapFromMap(registry, KeyClass, ValClass, value) {
27
+ const output = new Map();
28
+ for (const [key, val] of value.entries()) {
29
+ const isComplex = KeyClass.prototype instanceof Array_js_1.AbstractArray ||
30
+ KeyClass.prototype instanceof Struct_js_1.Struct ||
31
+ KeyClass.prototype instanceof Enum_js_1.Enum;
32
+ try {
33
+ output.set(key instanceof KeyClass
34
+ ? key
35
+ : new KeyClass(registry, isComplex && typeof key === 'string' ? JSON.parse(key) : key), val instanceof ValClass
36
+ ? val
37
+ : new ValClass(registry, val));
38
+ }
39
+ catch (error) {
40
+ l.error('Failed to decode key or value:', error.message);
41
+ throw error;
42
+ }
43
+ }
44
+ return [KeyClass, ValClass, output, 0];
45
+ }
46
+ /**
47
+ * Decode input to pass into constructor.
48
+ *
49
+ * @param KeyClass - Type of the map key
50
+ * @param ValClass - Type of the map value
51
+ * @param value - Value to decode, one of:
52
+ * - null
53
+ * - undefined
54
+ * - hex
55
+ * - Uint8Array
56
+ * - Map<any, any>, where both key and value types are either
57
+ * constructors or decodeable values for their types.
58
+ * @param jsonMap
59
+ * @internal
60
+ */
61
+ function decodeMap(registry, keyType, valType, value) {
62
+ const KeyClass = (0, index_js_1.typeToConstructor)(registry, keyType);
63
+ const ValClass = (0, index_js_1.typeToConstructor)(registry, valType);
64
+ if (!value) {
65
+ return [KeyClass, ValClass, new Map(), 0];
66
+ }
67
+ else if ((0, util_1.isU8a)(value) || (0, util_1.isHex)(value)) {
68
+ return decodeMapFromU8a(registry, KeyClass, ValClass, (0, util_1.u8aToU8a)(value));
69
+ }
70
+ else if (value instanceof Map) {
71
+ return decodeMapFromMap(registry, KeyClass, ValClass, value);
72
+ }
73
+ else if ((0, util_1.isObject)(value)) {
74
+ return decodeMapFromMap(registry, KeyClass, ValClass, new Map(Object.entries(value)));
75
+ }
76
+ throw new Error('Map: cannot decode type');
77
+ }
78
+ class CodecMap extends Map {
79
+ registry;
80
+ createdAtHash;
81
+ initialU8aLength;
82
+ isStorageFallback;
83
+ #KeyClass;
84
+ #ValClass;
85
+ #type;
86
+ constructor(registry, keyType, valType, rawValue, type = 'HashMap') {
87
+ const [KeyClass, ValClass, decoded, decodedLength] = decodeMap(registry, keyType, valType, rawValue);
88
+ super(type === 'BTreeMap' ? (0, index_js_1.sortMap)(decoded) : decoded);
89
+ this.registry = registry;
90
+ this.initialU8aLength = decodedLength;
91
+ this.#KeyClass = KeyClass;
92
+ this.#ValClass = ValClass;
93
+ this.#type = type;
94
+ }
95
+ /**
96
+ * @description The length of the value when encoded as a Uint8Array
97
+ */
98
+ get encodedLength() {
99
+ let len = (0, util_1.compactToU8a)(this.size).length;
100
+ for (const [k, v] of this.entries()) {
101
+ len += k.encodedLength + v.encodedLength;
102
+ }
103
+ return len;
104
+ }
105
+ /**
106
+ * @description Returns a hash of the value
107
+ */
108
+ get hash() {
109
+ return this.registry.hash(this.toU8a());
110
+ }
111
+ /**
112
+ * @description Checks if the value is an empty value
113
+ */
114
+ get isEmpty() {
115
+ return this.size === 0;
116
+ }
117
+ /**
118
+ * @description Compares the value of the input to see if there is a match
119
+ */
120
+ eq(other) {
121
+ return (0, index_js_1.compareMap)(this, other);
122
+ }
123
+ /**
124
+ * @description Returns a breakdown of the hex encoding for this Codec
125
+ */
126
+ inspect() {
127
+ const inner = [];
128
+ for (const [k, v] of this.entries()) {
129
+ inner.push(k.inspect());
130
+ inner.push(v.inspect());
131
+ }
132
+ return {
133
+ inner,
134
+ outer: [(0, util_1.compactToU8a)(this.size)]
135
+ };
136
+ }
137
+ /**
138
+ * @description Returns a hex string representation of the value. isLe returns a LE (number-only) representation
139
+ */
140
+ toHex() {
141
+ return (0, util_1.u8aToHex)(this.toU8a());
142
+ }
143
+ /**
144
+ * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
145
+ */
146
+ toHuman(isExtended, disableAscii) {
147
+ const json = {};
148
+ for (const [k, v] of this.entries()) {
149
+ json[k instanceof Raw_js_1.Raw && !disableAscii && k.isAscii
150
+ ? k.toUtf8()
151
+ : k.toString()] = v.toHuman(isExtended, disableAscii);
152
+ }
153
+ return json;
154
+ }
155
+ /**
156
+ * @description Converts the Object to JSON, typically used for RPC transfers
157
+ */
158
+ toJSON() {
159
+ const json = {};
160
+ for (const [k, v] of this.entries()) {
161
+ json[k.toString()] = v.toJSON();
162
+ }
163
+ return json;
164
+ }
165
+ /**
166
+ * @description Converts the value in a best-fit primitive form
167
+ */
168
+ toPrimitive(disableAscii) {
169
+ const json = {};
170
+ for (const [k, v] of this.entries()) {
171
+ json[k instanceof Raw_js_1.Raw && !disableAscii && k.isAscii
172
+ ? k.toUtf8()
173
+ : k.toString()] = v.toPrimitive(disableAscii);
174
+ }
175
+ return json;
176
+ }
177
+ /**
178
+ * @description Returns the base runtime type name for this instance
179
+ */
180
+ toRawType() {
181
+ return `${this.#type}<${this.registry.getClassName(this.#KeyClass) || new this.#KeyClass(this.registry).toRawType()},${this.registry.getClassName(this.#ValClass) || new this.#ValClass(this.registry).toRawType()}>`;
182
+ }
183
+ /**
184
+ * @description Returns the string representation of the value
185
+ */
186
+ toString() {
187
+ return (0, util_1.stringify)(this.toJSON());
188
+ }
189
+ /**
190
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
191
+ * @param isBare true when the value has none of the type-specific prefixes (internal)
192
+ */
193
+ toU8a(isBare) {
194
+ const encoded = [];
195
+ if (!isBare) {
196
+ encoded.push((0, util_1.compactToU8a)(this.size));
197
+ }
198
+ for (const [k, v] of this.entries()) {
199
+ encoded.push(k.toU8a(isBare), v.toU8a(isBare));
200
+ }
201
+ return (0, util_1.u8aConcatStrict)(encoded);
202
+ }
203
+ }
204
+ exports.CodecMap = CodecMap;
@@ -0,0 +1,36 @@
1
+ import type { HexString } from '@pezkuwi/util/types';
2
+ import type { AnyBool, Inspect, Registry } from '../types/index.js';
3
+ import { Option } from '../base/Option.js';
4
+ import { bool as Bool } from '../native/Bool.js';
5
+ /**
6
+ * @name OptionBool
7
+ * @description A specific implementation of Option<bool> than allows for single-byte encoding
8
+ */
9
+ export declare class OptionBool extends Option<Bool> {
10
+ constructor(registry: Registry, value?: Option<Bool> | AnyBool | Uint8Array | HexString | null);
11
+ /**
12
+ * @description The length of the value when encoded as a Uint8Array
13
+ */
14
+ get encodedLength(): number;
15
+ /**
16
+ * @description Checks if the value is an empty value (always false)
17
+ */
18
+ get isFalse(): boolean;
19
+ /**
20
+ * @description Checks if the value is an empty value (always false)
21
+ */
22
+ get isTrue(): boolean;
23
+ /**
24
+ * @description Returns a breakdown of the hex encoding for this Codec
25
+ */
26
+ inspect(): Inspect;
27
+ /**
28
+ * @description Returns the base runtime type name for this instance
29
+ */
30
+ toRawType(isBare?: boolean): string;
31
+ /**
32
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
33
+ * @param isBare true when the value has none of the type-specific prefixes (internal)
34
+ */
35
+ toU8a(isBare?: boolean): Uint8Array;
36
+ }
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OptionBool = void 0;
4
+ const util_1 = require("@pezkuwi/util");
5
+ const Option_js_1 = require("../base/Option.js");
6
+ const Bool_js_1 = require("../native/Bool.js");
7
+ function decodeU8a(registry, value) {
8
+ // Encoded as -
9
+ // - 0 = None
10
+ // - 1 = True
11
+ // - 2 = False
12
+ return value[0] === 0
13
+ ? null
14
+ : new Bool_js_1.bool(registry, value[0] === 1);
15
+ }
16
+ /**
17
+ * @name OptionBool
18
+ * @description A specific implementation of Option<bool> than allows for single-byte encoding
19
+ */
20
+ class OptionBool extends Option_js_1.Option {
21
+ constructor(registry, value) {
22
+ super(registry, Bool_js_1.bool, (0, util_1.isU8a)(value) || (0, util_1.isHex)(value)
23
+ ? decodeU8a(registry, (0, util_1.u8aToU8a)(value))
24
+ : value);
25
+ this.initialU8aLength = 1;
26
+ }
27
+ /**
28
+ * @description The length of the value when encoded as a Uint8Array
29
+ */
30
+ get encodedLength() {
31
+ return 1 | 0;
32
+ }
33
+ /**
34
+ * @description Checks if the value is an empty value (always false)
35
+ */
36
+ get isFalse() {
37
+ return this.isSome
38
+ ? !this.value.valueOf()
39
+ : false;
40
+ }
41
+ /**
42
+ * @description Checks if the value is an empty value (always false)
43
+ */
44
+ get isTrue() {
45
+ return this.isSome
46
+ ? this.value.valueOf()
47
+ : false;
48
+ }
49
+ /**
50
+ * @description Returns a breakdown of the hex encoding for this Codec
51
+ */
52
+ inspect() {
53
+ return { outer: [this.toU8a()] };
54
+ }
55
+ /**
56
+ * @description Returns the base runtime type name for this instance
57
+ */
58
+ toRawType(isBare) {
59
+ return isBare
60
+ ? 'bool'
61
+ : 'Option<bool>';
62
+ }
63
+ /**
64
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
65
+ * @param isBare true when the value has none of the type-specific prefixes (internal)
66
+ */
67
+ toU8a(isBare) {
68
+ if (isBare) {
69
+ return super.toU8a(true);
70
+ }
71
+ return this.isSome
72
+ ? new Uint8Array([this.isTrue ? 1 : 2])
73
+ : new Uint8Array([0]);
74
+ }
75
+ }
76
+ exports.OptionBool = OptionBool;
@@ -0,0 +1,29 @@
1
+ import type { AnyTuple, CodecClass, INumber, Registry } from '../types/index.js';
2
+ import { Tuple } from '../base/Tuple.js';
3
+ type RangeType = 'Range' | 'RangeInclusive';
4
+ interface Options {
5
+ rangeName?: RangeType;
6
+ }
7
+ /**
8
+ * @name Range
9
+ * @description
10
+ * Rust `Range<T>` representation
11
+ */
12
+ export declare class Range<T extends INumber> extends Tuple {
13
+ #private;
14
+ constructor(registry: Registry, Type: CodecClass<T> | string, value?: AnyTuple, { rangeName }?: Options);
15
+ static with<T extends INumber>(Type: CodecClass<T> | string): CodecClass<Range<T>>;
16
+ /**
17
+ * @description Returns the starting range value
18
+ */
19
+ get start(): T;
20
+ /**
21
+ * @description Returns the ending range value
22
+ */
23
+ get end(): T;
24
+ /**
25
+ * @description Returns the base runtime type name for this instance
26
+ */
27
+ toRawType(): string;
28
+ }
29
+ export {};
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Range = void 0;
4
+ const Tuple_js_1 = require("../base/Tuple.js");
5
+ /**
6
+ * @name Range
7
+ * @description
8
+ * Rust `Range<T>` representation
9
+ */
10
+ class Range extends Tuple_js_1.Tuple {
11
+ #rangeName;
12
+ constructor(registry, Type, value, { rangeName = 'Range' } = {}) {
13
+ super(registry, [Type, Type], value);
14
+ this.#rangeName = rangeName;
15
+ }
16
+ static with(Type) {
17
+ return class extends Range {
18
+ constructor(registry, value) {
19
+ super(registry, Type, value);
20
+ }
21
+ };
22
+ }
23
+ /**
24
+ * @description Returns the starting range value
25
+ */
26
+ get start() {
27
+ return this[0];
28
+ }
29
+ /**
30
+ * @description Returns the ending range value
31
+ */
32
+ get end() {
33
+ return this[1];
34
+ }
35
+ /**
36
+ * @description Returns the base runtime type name for this instance
37
+ */
38
+ toRawType() {
39
+ return `${this.#rangeName}<${this.start.toRawType()}>`;
40
+ }
41
+ }
42
+ exports.Range = Range;
@@ -0,0 +1,6 @@
1
+ import type { AnyTuple, CodecClass, INumber, Registry } from '../types/index.js';
2
+ import { Range } from './Range.js';
3
+ export declare class RangeInclusive<T extends INumber = INumber> extends Range<T> {
4
+ constructor(registry: Registry, Type: CodecClass<T> | string, value?: AnyTuple);
5
+ static with<T extends INumber>(Type: CodecClass<T> | string): CodecClass<RangeInclusive<T>>;
6
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RangeInclusive = void 0;
4
+ const Range_js_1 = require("./Range.js");
5
+ class RangeInclusive extends Range_js_1.Range {
6
+ constructor(registry, Type, value) {
7
+ super(registry, Type, value, { rangeName: 'RangeInclusive' });
8
+ }
9
+ static with(Type) {
10
+ return class extends RangeInclusive {
11
+ constructor(registry, value) {
12
+ super(registry, Type, value);
13
+ }
14
+ };
15
+ }
16
+ }
17
+ exports.RangeInclusive = RangeInclusive;