@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,81 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Null = void 0;
4
+ const util_1 = require("@pezkuwi/util");
5
+ /**
6
+ * @name Null
7
+ * @description
8
+ * Implements a type that does not contain anything (apart from `null`)
9
+ */
10
+ class Null {
11
+ encodedLength = 0;
12
+ isEmpty = true;
13
+ registry;
14
+ createdAtHash;
15
+ initialU8aLength = 0;
16
+ isStorageFallback;
17
+ constructor(registry) {
18
+ this.registry = registry;
19
+ }
20
+ /**
21
+ * @description returns a hash of the contents
22
+ */
23
+ get hash() {
24
+ throw new Error('.hash is not implemented on Null');
25
+ }
26
+ /**
27
+ * @description Compares the value of the input to see if there is a match
28
+ */
29
+ eq(other) {
30
+ return other instanceof Null || (0, util_1.isNull)(other);
31
+ }
32
+ /**
33
+ * @description Returns a breakdown of the hex encoding for this Codec
34
+ */
35
+ inspect() {
36
+ return {};
37
+ }
38
+ /**
39
+ * @description Returns a hex string representation of the value
40
+ */
41
+ toHex() {
42
+ return '0x';
43
+ }
44
+ /**
45
+ * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
46
+ */
47
+ toHuman() {
48
+ return this.toJSON();
49
+ }
50
+ /**
51
+ * @description Converts the Object to JSON, typically used for RPC transfers
52
+ */
53
+ toJSON() {
54
+ return null;
55
+ }
56
+ /**
57
+ * @description Converts the value in a best-fit primitive form
58
+ */
59
+ toPrimitive() {
60
+ return null;
61
+ }
62
+ /**
63
+ * @description Returns the base runtime type name for this instance
64
+ */
65
+ toRawType() {
66
+ return 'Null';
67
+ }
68
+ /**
69
+ * @description Returns the string representation of the value
70
+ */
71
+ toString() {
72
+ return '';
73
+ }
74
+ /**
75
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
76
+ */
77
+ toU8a(_isBare) {
78
+ return new Uint8Array();
79
+ }
80
+ }
81
+ exports.Null = Null;
@@ -0,0 +1,236 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Option = void 0;
4
+ const util_1 = require("@pezkuwi/util");
5
+ const index_js_1 = require("../utils/index.js");
6
+ const Null_js_1 = require("./Null.js");
7
+ class None extends Null_js_1.Null {
8
+ /**
9
+ * @description Returns the base runtime type name for this instance
10
+ */
11
+ toRawType() {
12
+ return 'None';
13
+ }
14
+ }
15
+ /** @internal */
16
+ function decodeOption(registry, Type, value) {
17
+ if (value instanceof Type) {
18
+ // don't re-create, use as it (which also caters for derived types)
19
+ return value;
20
+ }
21
+ else if (value instanceof Option) {
22
+ if (value.value instanceof Type) {
23
+ // same instance, return it
24
+ return value.value;
25
+ }
26
+ else if (value.isNone) {
27
+ // internal is None, we are also none
28
+ return new None(registry);
29
+ }
30
+ // convert the actual value into known
31
+ return new Type(registry, value.value);
32
+ }
33
+ else if ((0, util_1.isNull)(value) || (0, util_1.isUndefined)(value) || value === '0x' || value instanceof None) {
34
+ // anything empty we pass as-is
35
+ return new None(registry);
36
+ }
37
+ else if ((0, util_1.isU8a)(value)) {
38
+ // the isU8a check happens last in the if-tree - since the wrapped value
39
+ // may be an instance of it, so Type and Option checks go in first
40
+ return !value.length || value[0] === 0
41
+ ? new None(registry)
42
+ : new Type(registry, value.subarray(1));
43
+ }
44
+ return new Type(registry, value);
45
+ }
46
+ /**
47
+ * @name Option
48
+ * @description
49
+ * An Option is an optional field. Basically the first byte indicates that there is
50
+ * is value to follow. If the byte is `1` there is an actual value. So the Option
51
+ * implements that - decodes, checks for optionality and wraps the required structure
52
+ * with a value if/as required/found.
53
+ */
54
+ class Option {
55
+ registry;
56
+ createdAtHash;
57
+ initialU8aLength;
58
+ isStorageFallback;
59
+ #Type;
60
+ #raw;
61
+ constructor(registry, typeName, value, { definition, setDefinition = util_1.identity } = {}) {
62
+ const Type = definition || setDefinition((0, index_js_1.typeToConstructor)(registry, typeName));
63
+ const decoded = (0, util_1.isU8a)(value) && value.length && !(0, util_1.isCodec)(value)
64
+ ? value[0] === 0
65
+ ? new None(registry)
66
+ : new Type(registry, value.subarray(1))
67
+ : decodeOption(registry, Type, value);
68
+ this.registry = registry;
69
+ this.#Type = Type;
70
+ this.#raw = decoded;
71
+ if (decoded?.initialU8aLength) {
72
+ this.initialU8aLength = 1 + decoded.initialU8aLength;
73
+ }
74
+ }
75
+ static with(Type) {
76
+ let definition;
77
+ const setDefinition = (d) => {
78
+ definition = d;
79
+ return d;
80
+ };
81
+ return class extends Option {
82
+ constructor(registry, value) {
83
+ super(registry, Type, value, { definition, setDefinition });
84
+ }
85
+ };
86
+ }
87
+ /**
88
+ * @description The length of the value when encoded as a Uint8Array
89
+ */
90
+ get encodedLength() {
91
+ // boolean byte (has value, doesn't have) along with wrapped length
92
+ return 1 + this.#raw.encodedLength;
93
+ }
94
+ /**
95
+ * @description returns a hash of the contents
96
+ */
97
+ get hash() {
98
+ return this.registry.hash(this.toU8a());
99
+ }
100
+ /**
101
+ * @description Checks if the Option has no value
102
+ */
103
+ get isEmpty() {
104
+ return this.isNone;
105
+ }
106
+ /**
107
+ * @description Checks if the Option has no value
108
+ */
109
+ get isNone() {
110
+ return this.#raw instanceof None;
111
+ }
112
+ /**
113
+ * @description Checks if the Option has a value
114
+ */
115
+ get isSome() {
116
+ return !this.isNone;
117
+ }
118
+ /**
119
+ * @description The actual value for the Option
120
+ */
121
+ get value() {
122
+ return this.#raw;
123
+ }
124
+ /**
125
+ * @description Compares the value of the input to see if there is a match
126
+ */
127
+ eq(other) {
128
+ if (other instanceof Option) {
129
+ return (this.isSome === other.isSome) && this.value.eq(other.value);
130
+ }
131
+ return this.value.eq(other);
132
+ }
133
+ /**
134
+ * @description Returns a breakdown of the hex encoding for this Codec
135
+ */
136
+ inspect() {
137
+ if (this.isNone) {
138
+ return { outer: [new Uint8Array([0])] };
139
+ }
140
+ const { inner, outer = [] } = this.#raw.inspect();
141
+ return {
142
+ inner,
143
+ outer: [new Uint8Array([1]), ...outer]
144
+ };
145
+ }
146
+ /**
147
+ * @description Returns a hex string representation of the value
148
+ */
149
+ toHex() {
150
+ // This attempts to align with the JSON encoding - actually in this case
151
+ // the isSome value is correct, however the `isNone` may be problematic
152
+ return this.isNone
153
+ ? '0x'
154
+ : (0, util_1.u8aToHex)(this.toU8a().subarray(1));
155
+ }
156
+ /**
157
+ * @description Converts the Object to to a human-friendly JSON, with additional fields, expansion and formatting of information
158
+ */
159
+ toHuman(isExtended, disableAscii) {
160
+ return this.#raw.toHuman(isExtended, disableAscii);
161
+ }
162
+ /**
163
+ * @description Converts the Object to JSON, typically used for RPC transfers
164
+ */
165
+ toJSON() {
166
+ return this.isNone
167
+ ? null
168
+ : this.#raw.toJSON();
169
+ }
170
+ /**
171
+ * @description Converts the value in a best-fit primitive form
172
+ */
173
+ toPrimitive(disableAscii) {
174
+ return this.isNone
175
+ ? null
176
+ : this.#raw.toPrimitive(disableAscii);
177
+ }
178
+ /**
179
+ * @description Returns the base runtime type name for this instance
180
+ */
181
+ toRawType(isBare) {
182
+ const wrapped = this.registry.getClassName(this.#Type) || new this.#Type(this.registry).toRawType();
183
+ return isBare
184
+ ? wrapped
185
+ : `Option<${wrapped}>`;
186
+ }
187
+ /**
188
+ * @description Returns the string representation of the value
189
+ */
190
+ toString() {
191
+ return this.#raw.toString();
192
+ }
193
+ /**
194
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
195
+ * @param isBare true when the value has none of the type-specific prefixes (internal)
196
+ */
197
+ toU8a(isBare) {
198
+ if (isBare) {
199
+ return this.#raw.toU8a(true);
200
+ }
201
+ const u8a = new Uint8Array(this.encodedLength);
202
+ if (this.isSome) {
203
+ u8a.set([1]);
204
+ u8a.set(this.#raw.toU8a(), 1);
205
+ }
206
+ return u8a;
207
+ }
208
+ /**
209
+ * @description Returns the value that the Option represents (if available), throws if null
210
+ */
211
+ unwrap() {
212
+ if (this.isNone) {
213
+ throw new Error('Option: unwrapping a None value');
214
+ }
215
+ return this.#raw;
216
+ }
217
+ /**
218
+ * @description Returns the value that the Option represents (if available) or defaultValue if none
219
+ * @param defaultValue The value to return if the option isNone
220
+ */
221
+ unwrapOr(defaultValue) {
222
+ return this.isSome
223
+ ? this.unwrap()
224
+ : defaultValue;
225
+ }
226
+ /**
227
+ * @description Returns the value that the Option represents (if available) or defaultValue if none
228
+ * @param defaultValue The value to return if the option isNone
229
+ */
230
+ unwrapOrDefault() {
231
+ return this.isSome
232
+ ? this.unwrap()
233
+ : new this.#Type(this.registry);
234
+ }
235
+ }
236
+ exports.Option = Option;
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Result = void 0;
4
+ const Enum_js_1 = require("./Enum.js");
5
+ /**
6
+ * @name Result
7
+ * @description
8
+ * A Result maps to the Rust Result type, that can either wrap a success or error value
9
+ */
10
+ class Result extends Enum_js_1.Enum {
11
+ constructor(registry, Ok, Err, value) {
12
+ // NOTE This is order-dependent, Ok (with index 0) needs to be first
13
+ // eslint-disable-next-line sort-keys
14
+ super(registry, { Ok, Err }, value);
15
+ }
16
+ static with(Types) {
17
+ return class extends Result {
18
+ constructor(registry, value) {
19
+ super(registry, Types.Ok, Types.Err, value);
20
+ }
21
+ };
22
+ }
23
+ /**
24
+ * @description Returns the wrapper Err value (if isErr)
25
+ */
26
+ get asErr() {
27
+ if (!this.isErr) {
28
+ throw new Error('Cannot extract Err value from Ok result, check isErr first');
29
+ }
30
+ return this.value;
31
+ }
32
+ /**
33
+ * @description Returns the wrapper Ok value (if isOk)
34
+ */
35
+ get asOk() {
36
+ if (!this.isOk) {
37
+ throw new Error('Cannot extract Ok value from Err result, check isOk first');
38
+ }
39
+ return this.value;
40
+ }
41
+ /**
42
+ * @description Checks if the Result has no value
43
+ */
44
+ get isEmpty() {
45
+ return this.isOk && this.value.isEmpty;
46
+ }
47
+ /**
48
+ * @description Checks if the Result wraps an Err value
49
+ */
50
+ get isErr() {
51
+ return !this.isOk;
52
+ }
53
+ /**
54
+ * @description Checks if the Result wraps an Ok value
55
+ */
56
+ get isOk() {
57
+ return this.index === 0;
58
+ }
59
+ /**
60
+ * @description Returns the base runtime type name for this instance
61
+ */
62
+ toRawType() {
63
+ const Types = this._toRawStruct();
64
+ return `Result<${Types.Ok},${Types.Err}>`;
65
+ }
66
+ }
67
+ exports.Result = Result;
@@ -0,0 +1,114 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Tuple = void 0;
4
+ const util_1 = require("@pezkuwi/util");
5
+ const Array_js_1 = require("../abstract/Array.js");
6
+ const index_js_1 = require("../utils/index.js");
7
+ /** @internal */
8
+ function decodeTuple(registry, result, value, Classes) {
9
+ if (Array.isArray(value)) {
10
+ const Types = Classes[0];
11
+ for (let i = 0, count = Types.length; i < count; i++) {
12
+ try {
13
+ const entry = value?.[i];
14
+ result[i] = entry instanceof Types[i]
15
+ ? entry
16
+ : new Types[i](registry, entry);
17
+ }
18
+ catch (error) {
19
+ throw new Error(`Tuple: failed on ${i}:: ${error.message}`);
20
+ }
21
+ }
22
+ return [result, 0];
23
+ }
24
+ else if ((0, util_1.isHex)(value)) {
25
+ return (0, index_js_1.decodeU8a)(registry, result, (0, util_1.u8aToU8a)(value), Classes);
26
+ }
27
+ else if (!value || !result.length) {
28
+ const Types = Classes[0];
29
+ for (let i = 0, count = Types.length; i < count; i++) {
30
+ result[i] = new Types[i](registry);
31
+ }
32
+ return [result, 0];
33
+ }
34
+ throw new Error(`Expected array input to Tuple decoding, found ${typeof value}: ${(0, util_1.stringify)(value)}`);
35
+ }
36
+ /**
37
+ * @name Tuple
38
+ * @description
39
+ * A Tuple defines an anonymous fixed-length array, where each element has its
40
+ * own type. It extends the base JS `Array` object.
41
+ */
42
+ class Tuple extends Array_js_1.AbstractArray {
43
+ #Types;
44
+ constructor(registry, Types, value, { definition, setDefinition = util_1.identity } = {}) {
45
+ const Classes = definition || setDefinition(Array.isArray(Types)
46
+ ? [(0, index_js_1.typesToConstructors)(registry, Types), []]
47
+ : (0, util_1.isFunction)(Types) || (0, util_1.isString)(Types)
48
+ ? [[(0, index_js_1.typeToConstructor)(registry, Types)], []]
49
+ : (0, index_js_1.mapToTypeMap)(registry, Types));
50
+ super(registry, Classes[0].length);
51
+ this.initialU8aLength = ((0, util_1.isU8a)(value)
52
+ ? (0, index_js_1.decodeU8a)(registry, this, value, Classes)
53
+ : decodeTuple(registry, this, value, Classes))[1];
54
+ this.#Types = Classes;
55
+ }
56
+ static with(Types) {
57
+ let definition;
58
+ // eslint-disable-next-line no-return-assign
59
+ const setDefinition = (d) => definition = d;
60
+ return class extends Tuple {
61
+ constructor(registry, value) {
62
+ super(registry, Types, value, { definition, setDefinition });
63
+ }
64
+ };
65
+ }
66
+ /**
67
+ * @description The length of the value when encoded as a Uint8Array
68
+ */
69
+ get encodedLength() {
70
+ let total = 0;
71
+ for (let i = 0, count = this.length; i < count; i++) {
72
+ total += this[i].encodedLength;
73
+ }
74
+ return total;
75
+ }
76
+ /**
77
+ * @description The types definition of the tuple
78
+ */
79
+ get Types() {
80
+ return this.#Types[1].length
81
+ ? this.#Types[1]
82
+ : this.#Types[0].map((T) => new T(this.registry).toRawType());
83
+ }
84
+ /**
85
+ * @description Returns a breakdown of the hex encoding for this Codec
86
+ */
87
+ inspect() {
88
+ return {
89
+ inner: this.inspectInner()
90
+ };
91
+ }
92
+ /**
93
+ * @description Returns the base runtime type name for this instance
94
+ */
95
+ toRawType() {
96
+ const types = this.#Types[0].map((T) => this.registry.getClassName(T) || new T(this.registry).toRawType());
97
+ return `(${types.join(',')})`;
98
+ }
99
+ /**
100
+ * @description Returns the string representation of the value
101
+ */
102
+ toString() {
103
+ // Overwrite the default toString representation of Array.
104
+ return (0, util_1.stringify)(this.toJSON());
105
+ }
106
+ /**
107
+ * @description Encodes the value as a Uint8Array as per the SCALE specifications
108
+ * @param isBare true when the value has none of the type-specific prefixes (internal)
109
+ */
110
+ toU8a(isBare) {
111
+ return (0, util_1.u8aConcatStrict)(this.toU8aInner(isBare));
112
+ }
113
+ }
114
+ exports.Tuple = Tuple;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UInt = void 0;
4
+ const Int_js_1 = require("../abstract/Int.js");
5
+ /**
6
+ * @name UInt
7
+ * @description
8
+ * A generic unsigned integer codec. For Bizinikiwi all numbers are Little Endian encoded,
9
+ * this handles the encoding and decoding of those numbers. Upon construction
10
+ * the bitLength is provided and any additional use keeps the number to this
11
+ * length. This extends `BN`, so all methods available on a normal `BN` object
12
+ * is available here.
13
+ * @noInheritDoc
14
+ */
15
+ class UInt extends Int_js_1.AbstractInt {
16
+ static with(bitLength, typeName) {
17
+ return class extends UInt {
18
+ constructor(registry, value) {
19
+ super(registry, value, bitLength);
20
+ }
21
+ toRawType() {
22
+ return typeName || super.toRawType();
23
+ }
24
+ };
25
+ }
26
+ }
27
+ exports.UInt = UInt;
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Vec = void 0;
4
+ exports.decodeVec = decodeVec;
5
+ const util_1 = require("@pezkuwi/util");
6
+ const Array_js_1 = require("../abstract/Array.js");
7
+ const index_js_1 = require("../utils/index.js");
8
+ const MAX_LENGTH = 512 * 1024;
9
+ const l = (0, util_1.logger)('Vec');
10
+ function decodeVecLength(value) {
11
+ if (Array.isArray(value)) {
12
+ return [value, value.length, 0];
13
+ }
14
+ else if ((0, util_1.isU8a)(value) || (0, util_1.isHex)(value)) {
15
+ const u8a = (0, util_1.u8aToU8a)(value);
16
+ const [startAt, length] = (0, util_1.compactFromU8aLim)(u8a);
17
+ if (length > MAX_LENGTH) {
18
+ throw new Error(`Vec length ${length.toString()} exceeds ${MAX_LENGTH}`);
19
+ }
20
+ return [u8a, length, startAt];
21
+ }
22
+ else if (!value) {
23
+ return [null, 0, 0];
24
+ }
25
+ throw new Error(`Expected array/hex input to Vec<*> decoding, found ${typeof value}: ${(0, util_1.stringify)(value)}`);
26
+ }
27
+ function decodeVec(registry, result, value, startAt, Type) {
28
+ if (Array.isArray(value)) {
29
+ const count = result.length;
30
+ for (let i = 0; i < count; i++) {
31
+ // 26/08/2022 this is actually a false positive - after recent eslint upgdates
32
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
33
+ const entry = value[i];
34
+ try {
35
+ result[i] = entry instanceof Type
36
+ ? entry
37
+ : new Type(registry, entry);
38
+ }
39
+ catch (error) {
40
+ l.error(`Unable to decode on index ${i}`, error.message);
41
+ throw error;
42
+ }
43
+ }
44
+ return [0, 0];
45
+ }
46
+ else if (!value) {
47
+ return [0, 0];
48
+ }
49
+ // we don't need more checks, we already limited it via the length decoding
50
+ return (0, index_js_1.decodeU8aVec)(registry, result, (0, util_1.u8aToU8a)(value), startAt, Type);
51
+ }
52
+ /**
53
+ * @name Vec
54
+ * @description
55
+ * This manages codec arrays. Internally it keeps track of the length (as decoded) and allows
56
+ * construction with the passed `Type` in the constructor. It is an extension to Array, providing
57
+ * specific encoding/decoding on top of the base type.
58
+ */
59
+ class Vec extends Array_js_1.AbstractArray {
60
+ #Type;
61
+ constructor(registry, Type, value = [], { definition, setDefinition = util_1.identity } = {}) {
62
+ const [decodeFrom, length, startAt] = decodeVecLength(value);
63
+ super(registry, length);
64
+ this.#Type = definition || setDefinition((0, index_js_1.typeToConstructor)(registry, Type));
65
+ this.initialU8aLength = ((0, util_1.isU8a)(decodeFrom)
66
+ ? (0, index_js_1.decodeU8aVec)(registry, this, decodeFrom, startAt, this.#Type)
67
+ : decodeVec(registry, this, decodeFrom, startAt, this.#Type))[0];
68
+ }
69
+ static with(Type) {
70
+ let definition;
71
+ // eslint-disable-next-line no-return-assign
72
+ const setDefinition = (d) => (definition = d);
73
+ return class extends Vec {
74
+ constructor(registry, value) {
75
+ super(registry, Type, value, { definition, setDefinition });
76
+ }
77
+ };
78
+ }
79
+ /**
80
+ * @description The type for the items
81
+ */
82
+ get Type() {
83
+ return this.#Type.name;
84
+ }
85
+ /**
86
+ * @description Finds the index of the value in the array
87
+ */
88
+ indexOf(other) {
89
+ // convert type first, this removes overhead from the eq
90
+ const check = other instanceof this.#Type
91
+ ? other
92
+ : new this.#Type(this.registry, other);
93
+ for (let i = 0, count = this.length; i < count; i++) {
94
+ if (check.eq(this[i])) {
95
+ return i;
96
+ }
97
+ }
98
+ return -1;
99
+ }
100
+ /**
101
+ * @description Returns the base runtime type name for this instance
102
+ */
103
+ toRawType() {
104
+ return `Vec<${this.registry.getClassName(this.#Type) || new this.#Type(this.registry).toRawType()}>`;
105
+ }
106
+ }
107
+ exports.Vec = Vec;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.VecAny = void 0;
4
+ const Array_js_1 = require("../abstract/Array.js");
5
+ /**
6
+ * @name VecAny
7
+ * @description
8
+ * This manages codec arrays, assuming that the inputs are already of type Codec. Unlike
9
+ * a vector, this can be used to manage array-like structures with variable arguments of
10
+ * any types
11
+ */
12
+ class VecAny extends Array_js_1.AbstractArray {
13
+ /**
14
+ * @description Returns the base runtime type name for this instance
15
+ */
16
+ toRawType() {
17
+ // FIXME This is basically an any type, cannot instantiate via createType
18
+ return 'Vec<Codec>';
19
+ }
20
+ }
21
+ exports.VecAny = VecAny;