functionalscript 0.43.0 → 0.44.0

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 (1096) hide show
  1. package/README.md +53 -21
  2. package/fjs/asn.1/module.f.d.mts +123 -0
  3. package/fjs/asn.1/module.f.mjs +459 -0
  4. package/fjs/asn.1/proof.f.mjs +309 -0
  5. package/fjs/asn.1/types.d.ts +37 -0
  6. package/fjs/asn.1/types.js +6 -0
  7. package/fjs/asserts/module.f.d.mts +37 -0
  8. package/fjs/asserts/module.f.mjs +49 -0
  9. package/fjs/asserts/proof.f.mjs +19 -0
  10. package/fjs/asserts/types.d.ts +11 -0
  11. package/fjs/asserts/types.js +6 -0
  12. package/fjs/basen/base128/module.f.d.mts +22 -0
  13. package/fjs/basen/base128/module.f.mjs +51 -0
  14. package/fjs/basen/base128/proof.f.d.mts +2 -0
  15. package/fjs/basen/base128/proof.f.mjs +30 -0
  16. package/fjs/basen/base64/module.f.d.mts +14 -0
  17. package/fjs/basen/base64/module.f.mjs +71 -0
  18. package/fjs/basen/base64/proof.f.d.mts +17 -0
  19. package/fjs/basen/base64/proof.f.mjs +147 -0
  20. package/fjs/basen/cbase32/module.f.d.mts +18 -0
  21. package/fjs/basen/cbase32/module.f.mjs +61 -0
  22. package/fjs/basen/cbase32/proof.f.d.mts +8 -0
  23. package/fjs/basen/cbase32/proof.f.mjs +77 -0
  24. package/fjs/basen/module.f.d.mts +30 -0
  25. package/fjs/basen/module.f.mjs +88 -0
  26. package/fjs/basen/proof.f.mjs +69 -0
  27. package/fjs/basen/types.d.ts +14 -0
  28. package/fjs/basen/types.js +6 -0
  29. package/fjs/bnf/data/module.f.d.mts +47 -0
  30. package/fjs/bnf/data/module.f.mjs +188 -0
  31. package/fjs/bnf/data/proof.f.d.mts +13 -0
  32. package/fjs/bnf/data/proof.f.mjs +160 -0
  33. package/fjs/bnf/data/types.d.ts +35 -0
  34. package/fjs/bnf/data/types.js +6 -0
  35. package/fjs/bnf/descent/module.f.d.mts +33 -0
  36. package/fjs/bnf/descent/module.f.mjs +212 -0
  37. package/fjs/bnf/descent/proof.f.d.mts +13 -0
  38. package/fjs/bnf/descent/proof.f.mjs +351 -0
  39. package/fjs/bnf/descent/types.d.ts +71 -0
  40. package/fjs/bnf/descent/types.js +6 -0
  41. package/fjs/bnf/ll1/module.f.d.mts +41 -0
  42. package/fjs/bnf/ll1/module.f.mjs +199 -0
  43. package/fjs/bnf/ll1/proof.f.d.mts +16 -0
  44. package/fjs/bnf/ll1/proof.f.mjs +352 -0
  45. package/fjs/bnf/ll1/types.d.ts +59 -0
  46. package/fjs/bnf/ll1/types.js +6 -0
  47. package/fjs/bnf/module.f.d.mts +164 -0
  48. package/fjs/bnf/module.f.mjs +298 -0
  49. package/fjs/bnf/proof.f.d.mts +17 -0
  50. package/fjs/bnf/proof.f.mjs +89 -0
  51. package/fjs/bnf/testlib.f.d.mts +10 -0
  52. package/fjs/bnf/testlib.f.mjs +196 -0
  53. package/fjs/bnf/token_symbol/module.f.d.mts +35 -0
  54. package/fjs/bnf/token_symbol/module.f.mjs +62 -0
  55. package/fjs/bnf/token_symbol/proof.f.mjs +43 -0
  56. package/fjs/bnf/token_symbol/types.d.ts +27 -0
  57. package/fjs/bnf/token_symbol/types.js +6 -0
  58. package/fjs/bnf/types.d.ts +67 -0
  59. package/fjs/bnf/types.js +6 -0
  60. package/fjs/cas/cli/module.f.d.mts +17 -0
  61. package/fjs/cas/cli/module.f.mjs +73 -0
  62. package/fjs/cas/cli/proof.f.d.mts +18 -0
  63. package/fjs/cas/cli/proof.f.mjs +118 -0
  64. package/fjs/cas/evo/module.f.d.mts +163 -0
  65. package/fjs/cas/evo/module.f.mjs +556 -0
  66. package/fjs/cas/evo/proof.f.d.mts +55 -0
  67. package/fjs/cas/evo/proof.f.mjs +749 -0
  68. package/fjs/cas/evo/types.d.ts +111 -0
  69. package/fjs/cas/evo/types.js +7 -0
  70. package/fjs/cas/module.f.d.mts +68 -0
  71. package/fjs/cas/module.f.mjs +363 -0
  72. package/fjs/cas/proof.f.d.mts +29 -0
  73. package/fjs/cas/proof.f.mjs +371 -0
  74. package/fjs/cas/types.d.ts +35 -0
  75. package/fjs/cas/types.js +6 -0
  76. package/fjs/ci/bun/module.f.d.mts +11 -0
  77. package/fjs/ci/bun/module.f.mjs +20 -0
  78. package/fjs/ci/common/module.f.d.mts +80 -0
  79. package/fjs/ci/common/module.f.mjs +87 -0
  80. package/fjs/ci/common/types.d.ts +27 -0
  81. package/fjs/ci/config/module.f.d.mts +45 -0
  82. package/fjs/ci/config/module.f.mjs +89 -0
  83. package/fjs/ci/deno/module.f.d.mts +16 -0
  84. package/fjs/ci/deno/module.f.mjs +29 -0
  85. package/fjs/ci/deno/proof.f.d.mts +4 -0
  86. package/fjs/ci/deno/proof.f.mjs +26 -0
  87. package/fjs/ci/module.f.d.mts +19 -0
  88. package/fjs/ci/module.f.mjs +89 -0
  89. package/fjs/ci/nix/module.f.d.mts +69 -0
  90. package/fjs/ci/nix/module.f.mjs +136 -0
  91. package/fjs/ci/nix/proof.f.d.mts +28 -0
  92. package/fjs/ci/nix/proof.f.mjs +146 -0
  93. package/fjs/ci/nix/types.d.ts +16 -0
  94. package/fjs/ci/nix/types.js +6 -0
  95. package/fjs/ci/node/module.f.d.mts +48 -0
  96. package/fjs/ci/node/module.f.mjs +139 -0
  97. package/fjs/ci/node/proof.f.mjs +18 -0
  98. package/fjs/ci/proof.f.d.mts +20 -0
  99. package/fjs/ci/proof.f.mjs +219 -0
  100. package/fjs/ci/rust/module.f.d.mts +15 -0
  101. package/fjs/ci/rust/module.f.mjs +108 -0
  102. package/fjs/ci/types.d.ts +9 -0
  103. package/fjs/ci/types.js +6 -0
  104. package/fjs/cli/module.f.d.mts +16 -0
  105. package/fjs/cli/module.f.mjs +51 -0
  106. package/fjs/cli/proof.f.d.mts +16 -0
  107. package/fjs/cli/proof.f.mjs +130 -0
  108. package/fjs/cli/types.d.ts +15 -0
  109. package/fjs/cli/types.js +6 -0
  110. package/fjs/common/monoid/module.f.d.mts +87 -0
  111. package/fjs/common/monoid/module.f.mjs +104 -0
  112. package/fjs/common/monoid/proof.f.d.mts +10 -0
  113. package/fjs/common/monoid/proof.f.mjs +58 -0
  114. package/fjs/common/monoid/types.d.ts +50 -0
  115. package/fjs/common/monoid/types.js +6 -0
  116. package/fjs/crypto/hmac/module.f.d.mts +32 -0
  117. package/fjs/crypto/hmac/module.f.mjs +65 -0
  118. package/fjs/crypto/hmac/proof.f.mjs +34 -0
  119. package/fjs/crypto/pow/module.f.d.mts +43 -0
  120. package/fjs/crypto/pow/module.f.mjs +93 -0
  121. package/fjs/crypto/pow/proof.f.mjs +121 -0
  122. package/fjs/crypto/pow/types.d.ts +19 -0
  123. package/fjs/crypto/pow/types.js +6 -0
  124. package/fjs/crypto/secp/module.f.d.mts +61 -0
  125. package/fjs/crypto/secp/module.f.mjs +204 -0
  126. package/fjs/crypto/secp/proof.f.d.mts +9 -0
  127. package/fjs/crypto/secp/proof.f.mjs +137 -0
  128. package/fjs/crypto/secp/types.d.ts +36 -0
  129. package/fjs/crypto/secp/types.js +6 -0
  130. package/fjs/crypto/sha2/module.f.d.mts +80 -0
  131. package/fjs/crypto/sha2/module.f.mjs +431 -0
  132. package/fjs/crypto/sha2/proof.f.d.mts +32 -0
  133. package/fjs/crypto/sha2/proof.f.mjs +144 -0
  134. package/fjs/crypto/sha2/types.d.ts +57 -0
  135. package/fjs/crypto/sha2/types.js +6 -0
  136. package/fjs/crypto/sign/module.f.d.mts +46 -0
  137. package/fjs/crypto/sign/module.f.mjs +189 -0
  138. package/fjs/crypto/sign/proof.f.d.mts +17 -0
  139. package/fjs/crypto/sign/proof.f.mjs +604 -0
  140. package/fjs/crypto/sign/types.d.ts +13 -0
  141. package/fjs/crypto/sign/types.js +6 -0
  142. package/fjs/crypto/vdf/module.f.d.mts +15 -0
  143. package/fjs/crypto/vdf/module.f.mjs +84 -0
  144. package/fjs/crypto/vdf/proof.f.mjs +106 -0
  145. package/fjs/crypto/vdf/types.d.ts +18 -0
  146. package/fjs/crypto/vdf/types.js +6 -0
  147. package/fjs/dev/module.f.d.mts +56 -0
  148. package/fjs/dev/module.f.mjs +170 -0
  149. package/fjs/dev/package_json/module.f.d.mts +32 -0
  150. package/fjs/dev/package_json/module.f.mjs +37 -0
  151. package/fjs/dev/package_json/proof.f.mjs +32 -0
  152. package/fjs/dev/proof.f.d.mts +13 -0
  153. package/fjs/dev/proof.f.mjs +78 -0
  154. package/fjs/dev/types.d.ts +14 -0
  155. package/fjs/dev/types.js +6 -0
  156. package/fjs/dev/update/module.f.d.mts +19 -0
  157. package/fjs/dev/update/module.f.mjs +36 -0
  158. package/fjs/dev/update/proof.f.d.mts +7 -0
  159. package/fjs/dev/update/proof.f.mjs +36 -0
  160. package/fjs/djs/ast/module.f.d.mts +35 -0
  161. package/fjs/djs/ast/module.f.mjs +82 -0
  162. package/fjs/djs/ast/proof.f.mjs +48 -0
  163. package/fjs/djs/ast/types.d.ts +54 -0
  164. package/fjs/djs/ast/types.js +8 -0
  165. package/fjs/djs/examples/input.f.mjs +4 -0
  166. package/fjs/djs/examples/m.f.mjs +1 -0
  167. package/fjs/djs/module.f.d.mts +17 -0
  168. package/fjs/djs/module.f.mjs +47 -0
  169. package/fjs/djs/parser/module.f.d.mts +75 -0
  170. package/fjs/djs/parser/module.f.mjs +547 -0
  171. package/fjs/djs/parser/proof.f.mjs +543 -0
  172. package/fjs/djs/parser/types.d.ts +11 -0
  173. package/fjs/djs/parser/types.js +7 -0
  174. package/fjs/djs/proof.f.mjs +52 -0
  175. package/fjs/djs/serializer/module.f.d.mts +30 -0
  176. package/fjs/djs/serializer/module.f.mjs +206 -0
  177. package/fjs/djs/serializer/proof.f.mjs +116 -0
  178. package/fjs/djs/tokenizer/module.f.d.mts +65 -0
  179. package/fjs/djs/tokenizer/module.f.mjs +624 -0
  180. package/fjs/djs/tokenizer/proof.f.mjs +980 -0
  181. package/fjs/djs/tokenizer/types.d.ts +20 -0
  182. package/fjs/djs/tokenizer/types.js +7 -0
  183. package/fjs/djs/transpiler/module.f.d.mts +44 -0
  184. package/fjs/djs/transpiler/module.f.mjs +141 -0
  185. package/fjs/djs/transpiler/proof.f.mjs +76 -0
  186. package/fjs/djs/types.d.ts +13 -0
  187. package/fjs/djs/types.js +7 -0
  188. package/fjs/effects/eff/module.f.d.mts +10 -0
  189. package/fjs/effects/eff/module.f.mjs +68 -0
  190. package/fjs/effects/eff/proof.f.d.mts +12 -0
  191. package/fjs/effects/eff/proof.f.mjs +66 -0
  192. package/fjs/effects/eff/types.d.ts +71 -0
  193. package/fjs/effects/eff/types.js +6 -0
  194. package/fjs/effects/list/module.f.d.mts +24 -0
  195. package/fjs/effects/list/module.f.mjs +34 -0
  196. package/fjs/effects/list/types.d.ts +26 -0
  197. package/fjs/effects/list/types.js +6 -0
  198. package/fjs/effects/memory/module.f.d.mts +32 -0
  199. package/fjs/effects/memory/module.f.mjs +44 -0
  200. package/fjs/effects/memory/proof.f.d.mts +12 -0
  201. package/fjs/effects/memory/proof.f.mjs +83 -0
  202. package/fjs/effects/memory/types.d.ts +18 -0
  203. package/fjs/effects/memory/types.js +6 -0
  204. package/fjs/effects/mock/module.f.d.mts +6 -0
  205. package/fjs/effects/mock/module.f.mjs +26 -0
  206. package/fjs/effects/mock/types.d.ts +15 -0
  207. package/fjs/effects/mock/types.js +6 -0
  208. package/fjs/effects/module.d.mts +7 -0
  209. package/fjs/effects/module.f.d.mts +350 -0
  210. package/fjs/effects/module.f.mjs +382 -0
  211. package/fjs/effects/module.mjs +18 -0
  212. package/fjs/effects/node/memory/module.d.mts +24 -0
  213. package/fjs/effects/node/memory/module.mjs +59 -0
  214. package/fjs/effects/node/memory/proof.mjs +43 -0
  215. package/fjs/effects/node/module.d.mts +54 -0
  216. package/fjs/effects/node/module.f.d.mts +172 -0
  217. package/fjs/effects/node/module.f.mjs +354 -0
  218. package/fjs/effects/node/module.mjs +393 -0
  219. package/fjs/effects/node/proof.f.d.mts +76 -0
  220. package/fjs/effects/node/proof.f.mjs +444 -0
  221. package/fjs/effects/node/types.d.ts +203 -0
  222. package/fjs/effects/node/types.js +6 -0
  223. package/fjs/effects/node/virtual/module.f.d.mts +31 -0
  224. package/fjs/effects/node/virtual/module.f.mjs +434 -0
  225. package/fjs/effects/node/virtual/proof.f.d.mts +35 -0
  226. package/fjs/effects/node/virtual/proof.f.mjs +226 -0
  227. package/fjs/effects/node/virtual/types.d.ts +39 -0
  228. package/fjs/effects/node/virtual/types.js +7 -0
  229. package/fjs/effects/proof.f.d.mts +62 -0
  230. package/fjs/effects/proof.f.mjs +231 -0
  231. package/fjs/effects/types.d.ts +115 -0
  232. package/fjs/effects/types.js +6 -0
  233. package/fjs/emergent_testing/all.test.js +2 -2
  234. package/fjs/emergent_testing/example.f.d.mts +16 -0
  235. package/fjs/emergent_testing/example.f.mjs +34 -0
  236. package/fjs/emergent_testing/module.f.d.mts +150 -0
  237. package/fjs/emergent_testing/module.f.mjs +414 -0
  238. package/fjs/emergent_testing/proof.f.d.mts +97 -0
  239. package/fjs/emergent_testing/proof.f.mjs +518 -0
  240. package/fjs/emergent_testing/types.d.ts +53 -0
  241. package/fjs/emergent_testing/types.js +6 -0
  242. package/fjs/fsc/bnf.f.d.mts +3 -0
  243. package/fjs/fsc/bnf.f.mjs +77 -0
  244. package/fjs/fsc/json.f.d.mts +13 -0
  245. package/fjs/fsc/json.f.mjs +124 -0
  246. package/fjs/fsc/module.f.d.mts +14 -0
  247. package/fjs/fsc/module.f.mjs +138 -0
  248. package/fjs/fsc/proof.f.mjs +119 -0
  249. package/fjs/fsm/module.f.d.mts +27 -0
  250. package/fjs/fsm/module.f.mjs +99 -0
  251. package/fjs/fsm/proof.f.mjs +146 -0
  252. package/fjs/js/tokenizer/module.f.d.mts +19 -0
  253. package/fjs/js/tokenizer/module.f.mjs +795 -0
  254. package/fjs/js/tokenizer/proof.f.d.mts +12 -0
  255. package/fjs/js/tokenizer/proof.f.mjs +681 -0
  256. package/fjs/js/tokenizer/types.d.ts +193 -0
  257. package/fjs/js/tokenizer/types.js +6 -0
  258. package/fjs/mcp/cas/module.f.d.mts +156 -0
  259. package/fjs/mcp/cas/module.f.mjs +302 -0
  260. package/fjs/mcp/evo/module.f.d.mts +88 -0
  261. package/fjs/mcp/evo/module.f.mjs +153 -0
  262. package/fjs/mcp/evo/proof.f.d.mts +17 -0
  263. package/fjs/mcp/evo/proof.f.mjs +166 -0
  264. package/fjs/mcp/module.f.d.mts +32 -0
  265. package/fjs/mcp/module.f.mjs +96 -0
  266. package/fjs/mcp/proof.f.d.mts +46 -0
  267. package/fjs/mcp/proof.f.mjs +725 -0
  268. package/fjs/media/html/module.f.d.mts +43 -0
  269. package/fjs/media/html/module.f.mjs +167 -0
  270. package/fjs/media/html/proof.f.mjs +77 -0
  271. package/fjs/media/html/types.d.ts +19 -0
  272. package/fjs/media/html/types.js +6 -0
  273. package/fjs/media/json/module.f.d.mts +48 -0
  274. package/fjs/media/json/module.f.mjs +104 -0
  275. package/fjs/media/json/parser/module.f.d.mts +30 -0
  276. package/fjs/media/json/parser/module.f.mjs +219 -0
  277. package/fjs/media/json/parser/proof.f.d.mts +8 -0
  278. package/fjs/media/json/parser/proof.f.mjs +314 -0
  279. package/fjs/media/json/parser/types.d.ts +34 -0
  280. package/fjs/media/json/parser/types.js +6 -0
  281. package/fjs/media/json/proof.f.mjs +79 -0
  282. package/fjs/media/json/rtti/module.f.d.mts +38 -0
  283. package/fjs/media/json/rtti/module.f.mjs +51 -0
  284. package/fjs/media/json/rtti/proof.f.d.mts +26 -0
  285. package/fjs/media/json/rtti/proof.f.mjs +86 -0
  286. package/fjs/media/json/schema/module.f.d.mts +79 -0
  287. package/fjs/media/json/schema/module.f.mjs +144 -0
  288. package/fjs/media/json/schema/proof.f.d.mts +40 -0
  289. package/fjs/media/json/schema/proof.f.mjs +93 -0
  290. package/fjs/media/json/serializer/module.f.d.mts +27 -0
  291. package/fjs/media/json/serializer/module.f.mjs +131 -0
  292. package/fjs/media/json/serializer/proof.f.mjs +92 -0
  293. package/fjs/media/json/tokenizer/module.f.d.mts +17 -0
  294. package/fjs/media/json/tokenizer/module.f.mjs +77 -0
  295. package/fjs/media/json/tokenizer/proof.f.d.mts +8 -0
  296. package/fjs/media/json/tokenizer/proof.f.mjs +291 -0
  297. package/fjs/media/json/tokenizer/types.d.ts +17 -0
  298. package/fjs/media/json/tokenizer/types.js +6 -0
  299. package/fjs/media/json/types.d.ts +25 -0
  300. package/fjs/media/json/types.js +13 -0
  301. package/fjs/media/module.f.d.mts +116 -0
  302. package/fjs/media/module.f.mjs +152 -0
  303. package/fjs/media/nix/module.f.d.mts +14 -0
  304. package/fjs/media/nix/module.f.mjs +261 -0
  305. package/fjs/media/nix/proof.f.mjs +181 -0
  306. package/fjs/media/nix/types.d.ts +22 -0
  307. package/fjs/media/nix/types.js +6 -0
  308. package/fjs/media/proof.f.d.mts +19 -0
  309. package/fjs/media/proof.f.mjs +159 -0
  310. package/fjs/media/revision/module.f.d.mts +119 -0
  311. package/fjs/media/revision/module.f.mjs +166 -0
  312. package/fjs/media/revision/proof.f.d.mts +42 -0
  313. package/fjs/media/revision/proof.f.mjs +228 -0
  314. package/fjs/media/revision/types.d.ts +16 -0
  315. package/fjs/media/revision/types.js +8 -0
  316. package/fjs/media/rust/module.f.d.mts +61 -0
  317. package/fjs/media/rust/module.f.mjs +93 -0
  318. package/fjs/media/rust/proof.f.d.mts +17 -0
  319. package/fjs/media/rust/proof.f.mjs +50 -0
  320. package/fjs/media/type/module.f.d.mts +97 -0
  321. package/fjs/media/type/module.f.mjs +281 -0
  322. package/fjs/media/type/proof.f.mjs +285 -0
  323. package/fjs/media/type/types.d.ts +67 -0
  324. package/fjs/media/type/types.js +6 -0
  325. package/fjs/media/types.d.ts +26 -0
  326. package/fjs/media/types.js +7 -0
  327. package/fjs/module.f.d.mts +3 -0
  328. package/fjs/module.f.mjs +60 -0
  329. package/fjs/module.mjs +6 -0
  330. package/fjs/nanvm/module.f.d.mts +54 -0
  331. package/fjs/nanvm/module.f.mjs +240 -0
  332. package/fjs/nanvm/proof.f.d.mts +41 -0
  333. package/fjs/nanvm/proof.f.mjs +173 -0
  334. package/fjs/nanvm/rust/module.f.d.mts +54 -0
  335. package/fjs/nanvm/rust/module.f.mjs +166 -0
  336. package/fjs/nanvm/rust/proof.f.d.mts +21 -0
  337. package/fjs/nanvm/rust/proof.f.mjs +119 -0
  338. package/fjs/nanvm/types.d.ts +105 -0
  339. package/fjs/nanvm/types.js +11 -0
  340. package/fjs/nanvm/update/module.f.d.mts +23 -0
  341. package/fjs/nanvm/update/module.f.mjs +33 -0
  342. package/fjs/nanvm/update/proof.f.d.mts +9 -0
  343. package/fjs/nanvm/update/proof.f.mjs +32 -0
  344. package/fjs/path/module.f.d.mts +55 -0
  345. package/fjs/path/module.f.mjs +96 -0
  346. package/fjs/path/proof.f.mjs +125 -0
  347. package/fjs/proof.f.mjs +48 -0
  348. package/fjs/protocol/json_rpc/module.f.d.mts +127 -0
  349. package/fjs/protocol/json_rpc/module.f.mjs +112 -0
  350. package/fjs/protocol/json_rpc/proof.f.mjs +84 -0
  351. package/fjs/protocol/json_rpc/types.d.ts +30 -0
  352. package/fjs/protocol/json_rpc/types.js +8 -0
  353. package/fjs/protocol/mcp/module.f.d.mts +227 -0
  354. package/fjs/protocol/mcp/module.f.mjs +369 -0
  355. package/fjs/protocol/mcp/proof.f.d.mts +53 -0
  356. package/fjs/protocol/mcp/proof.f.mjs +312 -0
  357. package/fjs/protocol/mcp/stdio/module.f.d.mts +52 -0
  358. package/fjs/protocol/mcp/stdio/module.f.mjs +132 -0
  359. package/fjs/protocol/mcp/stdio/proof.f.d.mts +20 -0
  360. package/fjs/protocol/mcp/stdio/proof.f.mjs +190 -0
  361. package/fjs/protocol/mcp/types.d.ts +59 -0
  362. package/fjs/protocol/mcp/types.js +8 -0
  363. package/fjs/sul/id/module.f.d.mts +37 -0
  364. package/fjs/sul/id/module.f.mjs +143 -0
  365. package/fjs/sul/id/proof.f.mjs +72 -0
  366. package/fjs/sul/id/types.d.ts +8 -0
  367. package/fjs/sul/id/types.js +6 -0
  368. package/fjs/sul/level/hash/module.f.d.mts +37 -0
  369. package/fjs/sul/level/hash/module.f.mjs +61 -0
  370. package/fjs/sul/level/hash/proof.f.d.mts +15 -0
  371. package/fjs/sul/level/hash/proof.f.mjs +131 -0
  372. package/fjs/sul/level/hash/types.d.ts +20 -0
  373. package/fjs/sul/level/hash/types.js +6 -0
  374. package/fjs/sul/level/literal/module.f.d.mts +54 -0
  375. package/fjs/sul/level/literal/module.f.mjs +120 -0
  376. package/fjs/sul/level/literal/proof.f.mjs +788 -0
  377. package/fjs/sul/level/literal/types.d.ts +31 -0
  378. package/fjs/sul/level/literal/types.js +6 -0
  379. package/fjs/sul/module.f.d.mts +25 -0
  380. package/fjs/sul/module.f.mjs +69 -0
  381. package/fjs/sul/proof.f.d.mts +11 -0
  382. package/fjs/sul/proof.f.mjs +62 -0
  383. package/fjs/sul/types.d.ts +19 -0
  384. package/fjs/sul/types.js +6 -0
  385. package/fjs/text/ascii/module.f.d.mts +136 -0
  386. package/fjs/text/ascii/module.f.mjs +224 -0
  387. package/fjs/text/ascii/proof.f.mjs +16 -0
  388. package/fjs/text/code_point/module.f.d.mts +74 -0
  389. package/fjs/text/code_point/module.f.mjs +139 -0
  390. package/fjs/text/code_point/proof.f.mjs +80 -0
  391. package/fjs/text/module.f.d.mts +39 -0
  392. package/fjs/text/module.f.mjs +61 -0
  393. package/fjs/text/proof.f.mjs +48 -0
  394. package/fjs/text/sgr/module.f.d.mts +58 -0
  395. package/fjs/text/sgr/module.f.mjs +99 -0
  396. package/fjs/text/sgr/proof.f.mjs +39 -0
  397. package/fjs/text/sgr/types.d.ts +12 -0
  398. package/fjs/text/sgr/types.js +6 -0
  399. package/fjs/text/types.d.ts +13 -0
  400. package/fjs/text/types.js +6 -0
  401. package/fjs/text/utf16/module.f.d.mts +147 -0
  402. package/fjs/text/utf16/module.f.mjs +350 -0
  403. package/fjs/text/utf16/proof.f.d.mts +11 -0
  404. package/fjs/text/utf16/proof.f.mjs +158 -0
  405. package/fjs/text/utf16/types.d.ts +19 -0
  406. package/fjs/text/utf16/types.js +6 -0
  407. package/fjs/text/utf8/module.f.d.mts +69 -0
  408. package/fjs/text/utf8/module.f.mjs +280 -0
  409. package/fjs/text/utf8/proof.f.mjs +217 -0
  410. package/fjs/text/utf8/types.d.ts +26 -0
  411. package/fjs/text/utf8/types.js +6 -0
  412. package/fjs/types/array/module.f.d.mts +68 -0
  413. package/fjs/types/array/module.f.mjs +101 -0
  414. package/fjs/types/array/proof.f.mjs +98 -0
  415. package/fjs/types/array/types.d.ts +13 -0
  416. package/fjs/types/array/types.js +6 -0
  417. package/fjs/types/bigfloat/module.f.d.mts +14 -0
  418. package/fjs/types/bigfloat/module.f.mjs +99 -0
  419. package/fjs/types/bigfloat/proof.f.mjs +218 -0
  420. package/fjs/types/bigfloat/types.d.ts +6 -0
  421. package/fjs/types/bigfloat/types.js +6 -0
  422. package/fjs/types/bigint/benchmark.d.mts +1 -0
  423. package/fjs/types/bigint/benchmark.mjs +205 -0
  424. package/fjs/types/bigint/module.f.d.mts +176 -0
  425. package/fjs/types/bigint/module.f.mjs +289 -0
  426. package/fjs/types/bigint/proof.f.d.mts +39 -0
  427. package/fjs/types/bigint/proof.f.mjs +443 -0
  428. package/fjs/types/bigint/types.d.ts +14 -0
  429. package/fjs/types/bigint/types.js +6 -0
  430. package/fjs/types/bit_vec/module.f.d.mts +199 -0
  431. package/fjs/types/bit_vec/module.f.mjs +485 -0
  432. package/fjs/types/bit_vec/proof.f.mjs +495 -0
  433. package/fjs/types/bit_vec/types.d.ts +51 -0
  434. package/fjs/types/bit_vec/types.js +6 -0
  435. package/fjs/types/btree/find/module.f.d.mts +15 -0
  436. package/fjs/types/btree/find/module.f.mjs +80 -0
  437. package/fjs/types/btree/find/proof.f.d.mts +4 -0
  438. package/fjs/types/btree/find/proof.f.mjs +121 -0
  439. package/fjs/types/btree/find/types.d.ts +22 -0
  440. package/fjs/types/btree/find/types.js +6 -0
  441. package/fjs/types/btree/module.f.d.mts +10 -0
  442. package/fjs/types/btree/module.f.mjs +39 -0
  443. package/fjs/types/btree/proof.f.d.mts +14 -0
  444. package/fjs/types/btree/proof.f.mjs +85 -0
  445. package/fjs/types/btree/remove/module.f.d.mts +21 -0
  446. package/fjs/types/btree/remove/module.f.mjs +187 -0
  447. package/fjs/types/btree/remove/proof.f.mjs +472 -0
  448. package/fjs/types/btree/set/module.f.d.mts +5 -0
  449. package/fjs/types/btree/set/module.f.mjs +117 -0
  450. package/fjs/types/btree/set/proof.f.mjs +427 -0
  451. package/fjs/types/btree/types/module.f.d.mts +19 -0
  452. package/fjs/types/btree/types/module.f.mjs +19 -0
  453. package/fjs/types/btree/types/types.d.ts +14 -0
  454. package/fjs/types/btree/types/types.js +6 -0
  455. package/fjs/types/byte_set/module.f.d.mts +26 -0
  456. package/fjs/types/byte_set/module.f.mjs +66 -0
  457. package/fjs/types/byte_set/proof.f.d.mts +12 -0
  458. package/fjs/types/byte_set/proof.f.mjs +84 -0
  459. package/fjs/types/byte_set/types.d.ts +6 -0
  460. package/fjs/types/byte_set/types.js +6 -0
  461. package/fjs/types/function/compare/module.f.d.mts +44 -0
  462. package/fjs/types/function/compare/module.f.mjs +71 -0
  463. package/fjs/types/function/compare/proof.f.mjs +50 -0
  464. package/fjs/types/function/compare/types.d.ts +22 -0
  465. package/fjs/types/function/compare/types.js +6 -0
  466. package/fjs/types/function/module.f.d.mts +26 -0
  467. package/fjs/types/function/module.f.mjs +32 -0
  468. package/fjs/types/function/operator/module.f.d.mts +37 -0
  469. package/fjs/types/function/operator/module.f.mjs +55 -0
  470. package/fjs/types/function/operator/proof.f.mjs +76 -0
  471. package/fjs/types/function/operator/types.d.ts +39 -0
  472. package/fjs/types/function/operator/types.js +6 -0
  473. package/fjs/types/function/proof.f.mjs +16 -0
  474. package/fjs/types/function/types.d.ts +16 -0
  475. package/fjs/types/function/types.js +6 -0
  476. package/fjs/types/list/module.f.d.mts +88 -0
  477. package/fjs/types/list/module.f.mjs +309 -0
  478. package/fjs/types/list/proof.f.d.mts +32 -0
  479. package/fjs/types/list/proof.f.mjs +363 -0
  480. package/fjs/types/list/types.d.ts +36 -0
  481. package/fjs/types/list/types.js +6 -0
  482. package/fjs/types/map/module.f.d.mts +13 -0
  483. package/fjs/types/map/module.f.mjs +42 -0
  484. package/fjs/types/map/proof.f.mjs +25 -0
  485. package/fjs/types/nibble_set/module.f.d.mts +30 -0
  486. package/fjs/types/nibble_set/module.f.mjs +43 -0
  487. package/fjs/types/nibble_set/proof.f.mjs +59 -0
  488. package/fjs/types/nibble_set/types.d.ts +9 -0
  489. package/fjs/types/nibble_set/types.js +6 -0
  490. package/fjs/types/nominal/module.f.d.mts +9 -0
  491. package/fjs/types/nominal/module.f.mjs +16 -0
  492. package/fjs/types/nominal/proof.f.d.mts +7 -0
  493. package/fjs/types/nominal/proof.f.mjs +79 -0
  494. package/fjs/types/nominal/types.d.ts +25 -0
  495. package/fjs/types/nominal/types.js +6 -0
  496. package/fjs/types/nullable/module.f.d.mts +38 -0
  497. package/fjs/types/nullable/module.f.mjs +53 -0
  498. package/fjs/types/nullable/proof.f.mjs +34 -0
  499. package/fjs/types/nullable/types.d.ts +6 -0
  500. package/fjs/types/nullable/types.js +6 -0
  501. package/fjs/types/number/module.f.d.mts +23 -0
  502. package/fjs/types/number/module.f.mjs +55 -0
  503. package/fjs/types/number/proof.f.mjs +204 -0
  504. package/fjs/types/object/module.f.d.mts +33 -0
  505. package/fjs/types/object/module.f.mjs +58 -0
  506. package/fjs/types/object/proof.f.d.mts +25 -0
  507. package/fjs/types/object/proof.f.mjs +26 -0
  508. package/fjs/types/object/types.d.ts +50 -0
  509. package/fjs/types/object/types.js +8 -0
  510. package/fjs/types/ordered_map/module.f.d.mts +21 -0
  511. package/fjs/types/ordered_map/module.f.mjs +54 -0
  512. package/fjs/types/ordered_map/proof.f.mjs +88 -0
  513. package/fjs/types/ordered_map/types.d.ts +8 -0
  514. package/fjs/types/ordered_map/types.js +6 -0
  515. package/fjs/types/patricia_trie/module.f.d.mts +19 -0
  516. package/fjs/types/patricia_trie/module.f.mjs +43 -0
  517. package/fjs/types/patricia_trie/proof.f.d.mts +14 -0
  518. package/fjs/types/patricia_trie/proof.f.mjs +148 -0
  519. package/fjs/types/patricia_trie/types.d.ts +34 -0
  520. package/fjs/types/patricia_trie/types.js +6 -0
  521. package/fjs/types/prime_field/module.f.d.mts +42 -0
  522. package/fjs/types/prime_field/module.f.mjs +136 -0
  523. package/fjs/types/prime_field/proof.f.mjs +131 -0
  524. package/fjs/types/prime_field/types.d.ts +38 -0
  525. package/fjs/types/prime_field/types.js +6 -0
  526. package/fjs/types/range/module.f.d.mts +11 -0
  527. package/fjs/types/range/module.f.mjs +13 -0
  528. package/fjs/types/range/proof.f.mjs +10 -0
  529. package/fjs/types/range/types.d.ts +6 -0
  530. package/fjs/types/range/types.js +6 -0
  531. package/fjs/types/range_map/module.f.d.mts +72 -0
  532. package/fjs/types/range_map/module.f.mjs +130 -0
  533. package/fjs/types/range_map/proof.f.d.mts +7 -0
  534. package/fjs/types/range_map/proof.f.mjs +186 -0
  535. package/fjs/types/range_map/types.d.ts +56 -0
  536. package/fjs/types/range_map/types.js +6 -0
  537. package/fjs/types/range_set/module.f.d.mts +5 -0
  538. package/fjs/types/range_set/module.f.mjs +19 -0
  539. package/fjs/types/range_set/proof.f.mjs +26 -0
  540. package/fjs/types/result/module.d.mts +5 -0
  541. package/fjs/types/result/module.f.d.mts +59 -0
  542. package/fjs/types/result/module.f.mjs +67 -0
  543. package/fjs/types/result/module.mjs +22 -0
  544. package/fjs/types/result/proof.f.mjs +41 -0
  545. package/fjs/types/result/types.d.ts +17 -0
  546. package/fjs/types/result/types.js +6 -0
  547. package/fjs/types/rtti/common/module.f.d.mts +86 -0
  548. package/fjs/types/rtti/common/module.f.mjs +183 -0
  549. package/fjs/types/rtti/common/proof.f.d.mts +9 -0
  550. package/fjs/types/rtti/common/proof.f.mjs +64 -0
  551. package/fjs/types/rtti/common/types.d.ts +43 -0
  552. package/fjs/types/rtti/common/types.js +1 -0
  553. package/fjs/types/rtti/module.f.d.mts +76 -0
  554. package/fjs/types/rtti/module.f.mjs +110 -0
  555. package/fjs/types/rtti/parse/module.f.d.mts +9 -0
  556. package/fjs/types/rtti/parse/module.f.mjs +196 -0
  557. package/fjs/types/rtti/parse/proof.f.d.mts +122 -0
  558. package/fjs/types/rtti/parse/proof.f.mjs +363 -0
  559. package/fjs/types/rtti/parse/types.d.ts +12 -0
  560. package/fjs/types/rtti/parse/types.js +1 -0
  561. package/fjs/types/rtti/proof.f.d.mts +8 -0
  562. package/fjs/types/rtti/proof.f.mjs +20 -0
  563. package/fjs/types/rtti/ts/module.f.d.mts +34 -0
  564. package/fjs/types/rtti/ts/module.f.mjs +64 -0
  565. package/fjs/types/rtti/ts/proof.f.mjs +88 -0
  566. package/fjs/types/rtti/ts/types.d.ts +88 -0
  567. package/fjs/types/rtti/ts/types.js +1 -0
  568. package/fjs/types/rtti/types.d.ts +43 -0
  569. package/fjs/types/rtti/types.js +1 -0
  570. package/fjs/types/rtti/validate/module.f.d.mts +6 -0
  571. package/fjs/types/rtti/validate/module.f.mjs +169 -0
  572. package/fjs/types/rtti/validate/proof.f.d.mts +125 -0
  573. package/fjs/types/rtti/validate/proof.f.mjs +437 -0
  574. package/fjs/types/rtti/validate/types.d.ts +6 -0
  575. package/fjs/types/rtti/validate/types.js +1 -0
  576. package/fjs/types/sorted_list/module.f.d.mts +43 -0
  577. package/fjs/types/sorted_list/module.f.mjs +110 -0
  578. package/fjs/types/sorted_list/proof.f.d.mts +5 -0
  579. package/fjs/types/sorted_list/proof.f.mjs +52 -0
  580. package/fjs/types/sorted_list/types.d.ts +15 -0
  581. package/fjs/types/sorted_list/types.js +6 -0
  582. package/fjs/types/sorted_set/module.f.d.mts +24 -0
  583. package/fjs/types/sorted_set/module.f.mjs +56 -0
  584. package/fjs/types/sorted_set/proof.f.d.mts +7 -0
  585. package/fjs/types/sorted_set/proof.f.mjs +77 -0
  586. package/fjs/types/sorted_set/types.d.ts +6 -0
  587. package/fjs/types/sorted_set/types.js +6 -0
  588. package/fjs/types/string/module.f.d.mts +36 -0
  589. package/fjs/types/string/module.f.mjs +58 -0
  590. package/fjs/types/string/proof.f.mjs +76 -0
  591. package/fjs/types/string_set/module.f.d.mts +37 -0
  592. package/fjs/types/string_set/module.f.mjs +53 -0
  593. package/fjs/types/string_set/proof.f.mjs +46 -0
  594. package/fjs/types/string_set/types.d.ts +7 -0
  595. package/fjs/types/string_set/types.js +6 -0
  596. package/fjs/types/ts/module.f.d.mts +20 -0
  597. package/fjs/types/ts/module.f.mjs +51 -0
  598. package/fjs/types/ts/proof.f.mjs +97 -0
  599. package/fjs/types/ts/types.d.ts +16 -0
  600. package/fjs/types/ts/types.js +8 -0
  601. package/fjs/types/uint8array/module.f.d.mts +31 -0
  602. package/fjs/types/uint8array/module.f.mjs +53 -0
  603. package/fjs/types/uint8array/proof.f.d.mts +17 -0
  604. package/fjs/types/uint8array/proof.f.mjs +73 -0
  605. package/fjs/website/module.f.d.mts +8 -0
  606. package/fjs/website/module.f.mjs +24 -0
  607. package/fjs/website/proof.f.mjs +14 -0
  608. package/package.json +12 -10
  609. package/todo/proof.f.d.mts +22 -0
  610. package/todo/proof.f.mjs +59 -0
  611. package/fjs/asn.1/module.f.d.ts +0 -62
  612. package/fjs/asn.1/module.f.js +0 -278
  613. package/fjs/asn.1/proof.f.js +0 -285
  614. package/fjs/asserts/module.f.d.ts +0 -36
  615. package/fjs/asserts/module.f.js +0 -39
  616. package/fjs/asserts/proof.f.js +0 -18
  617. package/fjs/base_n/module.f.d.ts +0 -45
  618. package/fjs/base_n/module.f.js +0 -72
  619. package/fjs/base_n/proof.f.js +0 -73
  620. package/fjs/basen/base128/module.f.d.ts +0 -20
  621. package/fjs/basen/base128/module.f.js +0 -43
  622. package/fjs/basen/base128/proof.f.js +0 -26
  623. package/fjs/basen/base64/module.f.d.ts +0 -9
  624. package/fjs/basen/base64/module.f.js +0 -71
  625. package/fjs/basen/base64/proof.f.d.ts +0 -16
  626. package/fjs/basen/base64/proof.f.js +0 -139
  627. package/fjs/basen/cbase32/module.f.d.ts +0 -11
  628. package/fjs/basen/cbase32/module.f.js +0 -55
  629. package/fjs/basen/cbase32/proof.f.d.ts +0 -7
  630. package/fjs/basen/cbase32/proof.f.js +0 -62
  631. package/fjs/bnf/data/module.f.d.ts +0 -52
  632. package/fjs/bnf/data/module.f.js +0 -143
  633. package/fjs/bnf/data/proof.f.d.ts +0 -8
  634. package/fjs/bnf/data/proof.f.js +0 -169
  635. package/fjs/bnf/descent/module.f.d.ts +0 -87
  636. package/fjs/bnf/descent/module.f.js +0 -149
  637. package/fjs/bnf/descent/proof.f.d.ts +0 -7
  638. package/fjs/bnf/descent/proof.f.js +0 -368
  639. package/fjs/bnf/ll1/module.f.d.ts +0 -72
  640. package/fjs/bnf/ll1/module.f.js +0 -155
  641. package/fjs/bnf/ll1/proof.f.d.ts +0 -10
  642. package/fjs/bnf/ll1/proof.f.js +0 -375
  643. package/fjs/bnf/module.f.d.ts +0 -165
  644. package/fjs/bnf/module.f.js +0 -174
  645. package/fjs/bnf/proof.f.d.ts +0 -12
  646. package/fjs/bnf/proof.f.js +0 -69
  647. package/fjs/bnf/testlib.f.d.ts +0 -3
  648. package/fjs/bnf/testlib.f.js +0 -138
  649. package/fjs/bnf/token_symbol/module.f.d.ts +0 -38
  650. package/fjs/bnf/token_symbol/module.f.js +0 -48
  651. package/fjs/bnf/token_symbol/proof.f.js +0 -37
  652. package/fjs/cas/cli/module.f.d.ts +0 -6
  653. package/fjs/cas/cli/module.f.js +0 -53
  654. package/fjs/cas/cli/proof.f.d.ts +0 -17
  655. package/fjs/cas/cli/proof.f.js +0 -112
  656. package/fjs/cas/evo/module.f.d.ts +0 -222
  657. package/fjs/cas/evo/module.f.js +0 -454
  658. package/fjs/cas/evo/proof.f.d.ts +0 -43
  659. package/fjs/cas/evo/proof.f.js +0 -653
  660. package/fjs/cas/module.f.d.ts +0 -64
  661. package/fjs/cas/module.f.js +0 -255
  662. package/fjs/cas/proof.f.d.ts +0 -18
  663. package/fjs/cas/proof.f.js +0 -305
  664. package/fjs/ci/bun/module.f.d.ts +0 -2
  665. package/fjs/ci/bun/module.f.js +0 -15
  666. package/fjs/ci/common/module.f.d.ts +0 -88
  667. package/fjs/ci/common/module.f.js +0 -63
  668. package/fjs/ci/config/module.f.d.ts +0 -45
  669. package/fjs/ci/config/module.f.js +0 -80
  670. package/fjs/ci/deno/module.f.d.ts +0 -10
  671. package/fjs/ci/deno/module.f.js +0 -28
  672. package/fjs/ci/deno/proof.f.d.ts +0 -5
  673. package/fjs/ci/deno/proof.f.js +0 -26
  674. package/fjs/ci/module.f.d.ts +0 -13
  675. package/fjs/ci/module.f.js +0 -58
  676. package/fjs/ci/nix/module.f.d.ts +0 -61
  677. package/fjs/ci/nix/module.f.js +0 -92
  678. package/fjs/ci/nix/proof.f.d.ts +0 -23
  679. package/fjs/ci/nix/proof.f.js +0 -109
  680. package/fjs/ci/node/module.f.d.ts +0 -28
  681. package/fjs/ci/node/module.f.js +0 -92
  682. package/fjs/ci/node/proof.f.js +0 -17
  683. package/fjs/ci/proof.f.d.ts +0 -18
  684. package/fjs/ci/proof.f.js +0 -182
  685. package/fjs/ci/rust/module.f.d.ts +0 -3
  686. package/fjs/ci/rust/module.f.js +0 -75
  687. package/fjs/cli/module.f.d.ts +0 -11
  688. package/fjs/cli/module.f.js +0 -34
  689. package/fjs/cli/proof.f.d.ts +0 -14
  690. package/fjs/cli/proof.f.js +0 -111
  691. package/fjs/common/monoid/module.f.d.ts +0 -126
  692. package/fjs/common/monoid/module.f.js +0 -88
  693. package/fjs/common/monoid/proof.f.d.ts +0 -9
  694. package/fjs/common/monoid/proof.f.js +0 -48
  695. package/fjs/crypto/hmac/module.f.d.ts +0 -29
  696. package/fjs/crypto/hmac/module.f.js +0 -56
  697. package/fjs/crypto/hmac/proof.f.js +0 -32
  698. package/fjs/crypto/pow/module.f.d.ts +0 -37
  699. package/fjs/crypto/pow/module.f.js +0 -72
  700. package/fjs/crypto/pow/proof.f.js +0 -111
  701. package/fjs/crypto/secp/module.f.d.ts +0 -85
  702. package/fjs/crypto/secp/module.f.js +0 -176
  703. package/fjs/crypto/secp/proof.f.d.ts +0 -8
  704. package/fjs/crypto/secp/proof.f.js +0 -124
  705. package/fjs/crypto/sha2/module.f.d.ts +0 -102
  706. package/fjs/crypto/sha2/module.f.js +0 -266
  707. package/fjs/crypto/sha2/proof.f.d.ts +0 -31
  708. package/fjs/crypto/sha2/proof.f.js +0 -139
  709. package/fjs/crypto/sign/module.f.d.ts +0 -33
  710. package/fjs/crypto/sign/module.f.js +0 -163
  711. package/fjs/crypto/sign/proof.f.d.ts +0 -11
  712. package/fjs/crypto/sign/proof.f.js +0 -562
  713. package/fjs/crypto/vdf/module.f.d.ts +0 -21
  714. package/fjs/crypto/vdf/module.f.js +0 -57
  715. package/fjs/crypto/vdf/proof.f.js +0 -94
  716. package/fjs/dev/module.f.d.ts +0 -57
  717. package/fjs/dev/module.f.js +0 -135
  718. package/fjs/dev/package_json/module.f.d.ts +0 -16
  719. package/fjs/dev/package_json/module.f.js +0 -24
  720. package/fjs/dev/package_json/proof.f.js +0 -28
  721. package/fjs/dev/proof.f.d.ts +0 -13
  722. package/fjs/dev/proof.f.js +0 -77
  723. package/fjs/dev/update/module.f.d.ts +0 -11
  724. package/fjs/dev/update/module.f.js +0 -20
  725. package/fjs/dev/update/proof.f.d.ts +0 -7
  726. package/fjs/dev/update/proof.f.js +0 -35
  727. package/fjs/djs/ast/module.f.d.ts +0 -62
  728. package/fjs/djs/ast/module.f.js +0 -61
  729. package/fjs/djs/ast/proof.f.js +0 -49
  730. package/fjs/djs/examples/input.f.js +0 -4
  731. package/fjs/djs/examples/m.f.js +0 -1
  732. package/fjs/djs/module.f.d.ts +0 -17
  733. package/fjs/djs/module.f.js +0 -22
  734. package/fjs/djs/parser/module.f.d.ts +0 -23
  735. package/fjs/djs/parser/module.f.js +0 -410
  736. package/fjs/djs/parser/proof.f.js +0 -556
  737. package/fjs/djs/proof.f.js +0 -50
  738. package/fjs/djs/serializer/module.f.d.ts +0 -17
  739. package/fjs/djs/serializer/module.f.js +0 -173
  740. package/fjs/djs/serializer/proof.f.js +0 -133
  741. package/fjs/djs/tokenizer/module.f.d.ts +0 -24
  742. package/fjs/djs/tokenizer/module.f.js +0 -472
  743. package/fjs/djs/tokenizer/proof.f.js +0 -1211
  744. package/fjs/djs/transpiler/module.f.d.ts +0 -41
  745. package/fjs/djs/transpiler/module.f.js +0 -88
  746. package/fjs/djs/transpiler/proof.f.js +0 -67
  747. package/fjs/effects/eff/module.f.d.ts +0 -72
  748. package/fjs/effects/eff/module.f.js +0 -46
  749. package/fjs/effects/eff/proof.f.d.ts +0 -11
  750. package/fjs/effects/eff/proof.f.js +0 -58
  751. package/fjs/effects/list/module.f.d.ts +0 -37
  752. package/fjs/effects/list/module.f.js +0 -17
  753. package/fjs/effects/memory/module.f.d.ts +0 -37
  754. package/fjs/effects/memory/module.f.js +0 -24
  755. package/fjs/effects/memory/proof.f.d.ts +0 -6
  756. package/fjs/effects/memory/proof.f.js +0 -50
  757. package/fjs/effects/mock/module.f.d.ts +0 -16
  758. package/fjs/effects/mock/module.f.js +0 -20
  759. package/fjs/effects/module.d.ts +0 -2
  760. package/fjs/effects/module.f.d.ts +0 -408
  761. package/fjs/effects/module.f.js +0 -312
  762. package/fjs/effects/module.js +0 -11
  763. package/fjs/effects/node/memory/module.d.ts +0 -20
  764. package/fjs/effects/node/memory/module.js +0 -44
  765. package/fjs/effects/node/memory/proof.js +0 -29
  766. package/fjs/effects/node/module.d.ts +0 -20
  767. package/fjs/effects/node/module.f.d.ts +0 -300
  768. package/fjs/effects/node/module.f.js +0 -171
  769. package/fjs/effects/node/module.js +0 -305
  770. package/fjs/effects/node/proof.f.d.ts +0 -69
  771. package/fjs/effects/node/proof.f.js +0 -409
  772. package/fjs/effects/node/virtual/module.f.d.ts +0 -49
  773. package/fjs/effects/node/virtual/module.f.js +0 -440
  774. package/fjs/effects/node/virtual/proof.f.d.ts +0 -33
  775. package/fjs/effects/node/virtual/proof.f.js +0 -186
  776. package/fjs/effects/proof.f.d.ts +0 -56
  777. package/fjs/effects/proof.f.js +0 -200
  778. package/fjs/emergent_testing/example.f.d.ts +0 -13
  779. package/fjs/emergent_testing/example.f.js +0 -31
  780. package/fjs/emergent_testing/module.f.d.ts +0 -140
  781. package/fjs/emergent_testing/module.f.js +0 -289
  782. package/fjs/emergent_testing/proof.f.d.ts +0 -67
  783. package/fjs/emergent_testing/proof.f.js +0 -416
  784. package/fjs/fsc/bnf.f.d.ts +0 -2
  785. package/fjs/fsc/bnf.f.js +0 -42
  786. package/fjs/fsc/json.f.d.ts +0 -7
  787. package/fjs/fsc/json.f.js +0 -64
  788. package/fjs/fsc/module.f.d.ts +0 -11
  789. package/fjs/fsc/module.f.js +0 -73
  790. package/fjs/fsc/proof.f.js +0 -104
  791. package/fjs/fsm/module.f.d.ts +0 -17
  792. package/fjs/fsm/module.f.js +0 -55
  793. package/fjs/fsm/proof.f.js +0 -126
  794. package/fjs/js/tokenizer/module.f.d.ts +0 -104
  795. package/fjs/js/tokenizer/module.f.js +0 -547
  796. package/fjs/js/tokenizer/proof.f.d.ts +0 -9
  797. package/fjs/js/tokenizer/proof.f.js +0 -986
  798. package/fjs/mcp/cas/module.f.d.ts +0 -27
  799. package/fjs/mcp/cas/module.f.js +0 -232
  800. package/fjs/mcp/evo/module.f.d.ts +0 -32
  801. package/fjs/mcp/evo/module.f.js +0 -99
  802. package/fjs/mcp/evo/proof.f.d.ts +0 -12
  803. package/fjs/mcp/evo/proof.f.js +0 -147
  804. package/fjs/mcp/module.f.d.ts +0 -56
  805. package/fjs/mcp/module.f.js +0 -69
  806. package/fjs/mcp/proof.f.d.ts +0 -45
  807. package/fjs/mcp/proof.f.js +0 -535
  808. package/fjs/media/html/module.f.d.ts +0 -52
  809. package/fjs/media/html/module.f.js +0 -117
  810. package/fjs/media/html/proof.f.js +0 -65
  811. package/fjs/media/json/module.f.d.ts +0 -64
  812. package/fjs/media/json/module.f.js +0 -109
  813. package/fjs/media/json/parser/module.f.d.ts +0 -21
  814. package/fjs/media/json/parser/module.f.js +0 -194
  815. package/fjs/media/json/parser/proof.f.d.ts +0 -5
  816. package/fjs/media/json/parser/proof.f.js +0 -314
  817. package/fjs/media/json/proof.f.js +0 -98
  818. package/fjs/media/json/schema/module.f.d.ts +0 -78
  819. package/fjs/media/json/schema/module.f.js +0 -96
  820. package/fjs/media/json/schema/proof.f.d.ts +0 -36
  821. package/fjs/media/json/schema/proof.f.js +0 -83
  822. package/fjs/media/json/serializer/module.f.d.ts +0 -28
  823. package/fjs/media/json/serializer/module.f.js +0 -73
  824. package/fjs/media/json/serializer/proof.f.js +0 -94
  825. package/fjs/media/json/tokenizer/module.f.d.ts +0 -15
  826. package/fjs/media/json/tokenizer/module.f.js +0 -63
  827. package/fjs/media/json/tokenizer/proof.f.d.ts +0 -5
  828. package/fjs/media/json/tokenizer/proof.f.js +0 -417
  829. package/fjs/media/module.f.d.ts +0 -119
  830. package/fjs/media/module.f.js +0 -88
  831. package/fjs/media/nix/module.f.d.ts +0 -30
  832. package/fjs/media/nix/module.f.js +0 -166
  833. package/fjs/media/nix/proof.f.js +0 -127
  834. package/fjs/media/proof.f.d.ts +0 -19
  835. package/fjs/media/proof.f.js +0 -127
  836. package/fjs/media/revision/module.f.d.ts +0 -86
  837. package/fjs/media/revision/module.f.js +0 -131
  838. package/fjs/media/revision/proof.f.d.ts +0 -31
  839. package/fjs/media/revision/proof.f.js +0 -140
  840. package/fjs/media/type/module.f.d.ts +0 -135
  841. package/fjs/media/type/module.f.js +0 -231
  842. package/fjs/media/type/proof.f.js +0 -213
  843. package/fjs/module.f.d.ts +0 -2
  844. package/fjs/module.f.js +0 -50
  845. package/fjs/module.js +0 -4
  846. package/fjs/path/module.f.d.ts +0 -46
  847. package/fjs/path/module.f.js +0 -71
  848. package/fjs/path/proof.f.js +0 -119
  849. package/fjs/proof.f.js +0 -38
  850. package/fjs/protocol/json_rpc/module.f.d.ts +0 -114
  851. package/fjs/protocol/json_rpc/module.f.js +0 -89
  852. package/fjs/protocol/json_rpc/proof.f.js +0 -68
  853. package/fjs/protocol/mcp/module.f.d.ts +0 -239
  854. package/fjs/protocol/mcp/module.f.js +0 -272
  855. package/fjs/protocol/mcp/proof.f.d.ts +0 -34
  856. package/fjs/protocol/mcp/proof.f.js +0 -208
  857. package/fjs/protocol/mcp/stdio/module.f.d.ts +0 -47
  858. package/fjs/protocol/mcp/stdio/module.f.js +0 -78
  859. package/fjs/protocol/mcp/stdio/proof.f.d.ts +0 -13
  860. package/fjs/protocol/mcp/stdio/proof.f.js +0 -143
  861. package/fjs/sul/id/module.f.d.ts +0 -33
  862. package/fjs/sul/id/module.f.js +0 -93
  863. package/fjs/sul/id/proof.f.js +0 -61
  864. package/fjs/sul/level/hash/module.f.d.ts +0 -38
  865. package/fjs/sul/level/hash/module.f.js +0 -43
  866. package/fjs/sul/level/hash/proof.f.d.ts +0 -13
  867. package/fjs/sul/level/hash/proof.f.js +0 -112
  868. package/fjs/sul/level/literal/module.f.d.ts +0 -64
  869. package/fjs/sul/level/literal/module.f.js +0 -88
  870. package/fjs/sul/level/literal/proof.f.js +0 -714
  871. package/fjs/sul/module.f.d.ts +0 -23
  872. package/fjs/sul/module.f.js +0 -46
  873. package/fjs/sul/proof.f.d.ts +0 -9
  874. package/fjs/sul/proof.f.js +0 -47
  875. package/fjs/text/ascii/module.f.d.ts +0 -136
  876. package/fjs/text/ascii/module.f.js +0 -154
  877. package/fjs/text/ascii/proof.f.js +0 -14
  878. package/fjs/text/code_point/module.f.d.ts +0 -65
  879. package/fjs/text/code_point/module.f.js +0 -103
  880. package/fjs/text/code_point/proof.f.js +0 -72
  881. package/fjs/text/module.f.d.ts +0 -40
  882. package/fjs/text/module.f.js +0 -43
  883. package/fjs/text/proof.f.js +0 -44
  884. package/fjs/text/sgr/module.f.d.ts +0 -53
  885. package/fjs/text/sgr/module.f.js +0 -63
  886. package/fjs/text/sgr/proof.f.js +0 -33
  887. package/fjs/text/utf16/module.f.d.ts +0 -161
  888. package/fjs/text/utf16/module.f.js +0 -311
  889. package/fjs/text/utf16/proof.f.d.ts +0 -10
  890. package/fjs/text/utf16/proof.f.js +0 -144
  891. package/fjs/text/utf8/module.f.d.ts +0 -83
  892. package/fjs/text/utf8/module.f.js +0 -247
  893. package/fjs/text/utf8/proof.f.js +0 -217
  894. package/fjs/types/array/module.f.d.ts +0 -49
  895. package/fjs/types/array/module.f.js +0 -42
  896. package/fjs/types/array/proof.f.js +0 -92
  897. package/fjs/types/bigfloat/module.f.d.ts +0 -6
  898. package/fjs/types/bigfloat/module.f.js +0 -69
  899. package/fjs/types/bigfloat/proof.f.js +0 -217
  900. package/fjs/types/bigint/module.f.d.ts +0 -172
  901. package/fjs/types/bigint/module.f.js +0 -251
  902. package/fjs/types/bigint/proof.f.d.ts +0 -37
  903. package/fjs/types/bigint/proof.f.js +0 -400
  904. package/fjs/types/bit_vec/module.f.d.ts +0 -302
  905. package/fjs/types/bit_vec/module.f.js +0 -375
  906. package/fjs/types/bit_vec/proof.f.js +0 -465
  907. package/fjs/types/btree/find/module.f.d.ts +0 -25
  908. package/fjs/types/btree/find/module.f.js +0 -80
  909. package/fjs/types/btree/find/proof.f.d.ts +0 -3
  910. package/fjs/types/btree/find/proof.f.js +0 -108
  911. package/fjs/types/btree/module.f.d.ts +0 -9
  912. package/fjs/types/btree/module.f.js +0 -33
  913. package/fjs/types/btree/proof.f.d.ts +0 -13
  914. package/fjs/types/btree/proof.f.js +0 -64
  915. package/fjs/types/btree/remove/module.f.d.ts +0 -14
  916. package/fjs/types/btree/remove/module.f.js +0 -186
  917. package/fjs/types/btree/remove/proof.f.js +0 -484
  918. package/fjs/types/btree/set/module.f.d.ts +0 -8
  919. package/fjs/types/btree/set/module.f.js +0 -128
  920. package/fjs/types/btree/set/proof.f.js +0 -368
  921. package/fjs/types/btree/types/module.f.d.ts +0 -23
  922. package/fjs/types/btree/types/module.f.js +0 -9
  923. package/fjs/types/byte_set/module.f.d.ts +0 -16
  924. package/fjs/types/byte_set/module.f.js +0 -30
  925. package/fjs/types/byte_set/proof.f.d.ts +0 -11
  926. package/fjs/types/byte_set/proof.f.js +0 -79
  927. package/fjs/types/function/compare/module.f.d.ts +0 -49
  928. package/fjs/types/function/compare/module.f.js +0 -51
  929. package/fjs/types/function/compare/proof.f.js +0 -47
  930. package/fjs/types/function/module.f.d.ts +0 -28
  931. package/fjs/types/function/module.f.js +0 -19
  932. package/fjs/types/function/operator/module.f.d.ts +0 -48
  933. package/fjs/types/function/operator/module.f.js +0 -16
  934. package/fjs/types/function/operator/proof.f.js +0 -53
  935. package/fjs/types/function/proof.f.js +0 -10
  936. package/fjs/types/list/module.f.d.ts +0 -75
  937. package/fjs/types/list/module.f.js +0 -190
  938. package/fjs/types/list/proof.f.d.ts +0 -31
  939. package/fjs/types/list/proof.f.js +0 -330
  940. package/fjs/types/map/module.f.d.ts +0 -2
  941. package/fjs/types/map/module.f.js +0 -22
  942. package/fjs/types/map/proof.f.js +0 -22
  943. package/fjs/types/nibble_set/module.f.d.ts +0 -27
  944. package/fjs/types/nibble_set/module.f.js +0 -25
  945. package/fjs/types/nibble_set/proof.f.js +0 -60
  946. package/fjs/types/nominal/module.f.d.ts +0 -22
  947. package/fjs/types/nominal/module.f.js +0 -13
  948. package/fjs/types/nominal/proof.f.d.ts +0 -4
  949. package/fjs/types/nominal/proof.f.js +0 -48
  950. package/fjs/types/nullable/module.f.d.ts +0 -21
  951. package/fjs/types/nullable/module.f.js +0 -29
  952. package/fjs/types/nullable/proof.f.js +0 -29
  953. package/fjs/types/number/module.f.d.ts +0 -16
  954. package/fjs/types/number/module.f.js +0 -30
  955. package/fjs/types/number/proof.f.js +0 -124
  956. package/fjs/types/object/module.f.d.ts +0 -54
  957. package/fjs/types/object/module.f.js +0 -25
  958. package/fjs/types/object/proof.f.d.ts +0 -4
  959. package/fjs/types/object/proof.f.js +0 -14
  960. package/fjs/types/ordered_map/module.f.d.ts +0 -17
  961. package/fjs/types/ordered_map/module.f.js +0 -22
  962. package/fjs/types/ordered_map/proof.f.js +0 -73
  963. package/fjs/types/patricia_trie/module.f.d.ts +0 -25
  964. package/fjs/types/patricia_trie/module.f.js +0 -35
  965. package/fjs/types/patricia_trie/proof.f.d.ts +0 -13
  966. package/fjs/types/patricia_trie/proof.f.js +0 -121
  967. package/fjs/types/prime_field/module.f.d.ts +0 -62
  968. package/fjs/types/prime_field/module.f.js +0 -112
  969. package/fjs/types/prime_field/proof.f.js +0 -128
  970. package/fjs/types/range/module.f.d.ts +0 -8
  971. package/fjs/types/range/module.f.js +0 -2
  972. package/fjs/types/range/proof.f.js +0 -9
  973. package/fjs/types/range_map/module.f.d.ts +0 -92
  974. package/fjs/types/range_map/module.f.js +0 -82
  975. package/fjs/types/range_map/proof.f.d.ts +0 -6
  976. package/fjs/types/range_map/proof.f.js +0 -151
  977. package/fjs/types/range_set/module.f.d.ts +0 -5
  978. package/fjs/types/range_set/module.f.js +0 -16
  979. package/fjs/types/range_set/proof.f.d.ts +0 -1
  980. package/fjs/types/range_set/proof.f.js +0 -19
  981. package/fjs/types/result/module.d.ts +0 -3
  982. package/fjs/types/result/module.f.d.ts +0 -61
  983. package/fjs/types/result/module.f.js +0 -54
  984. package/fjs/types/result/module.js +0 -19
  985. package/fjs/types/result/proof.f.js +0 -31
  986. package/fjs/types/rtti/common/module.f.d.ts +0 -121
  987. package/fjs/types/rtti/common/module.f.js +0 -94
  988. package/fjs/types/rtti/common/proof.f.d.ts +0 -8
  989. package/fjs/types/rtti/common/proof.f.js +0 -51
  990. package/fjs/types/rtti/module.f.d.ts +0 -75
  991. package/fjs/types/rtti/module.f.js +0 -34
  992. package/fjs/types/rtti/parse/module.f.d.ts +0 -36
  993. package/fjs/types/rtti/parse/module.f.js +0 -114
  994. package/fjs/types/rtti/parse/proof.f.d.ts +0 -115
  995. package/fjs/types/rtti/parse/proof.f.js +0 -334
  996. package/fjs/types/rtti/proof.f.d.ts +0 -5
  997. package/fjs/types/rtti/proof.f.js +0 -16
  998. package/fjs/types/rtti/ts/module.f.d.ts +0 -118
  999. package/fjs/types/rtti/ts/module.f.js +0 -59
  1000. package/fjs/types/rtti/ts/proof.f.js +0 -75
  1001. package/fjs/types/rtti/validate/module.f.d.ts +0 -4
  1002. package/fjs/types/rtti/validate/module.f.js +0 -74
  1003. package/fjs/types/rtti/validate/proof.f.d.ts +0 -118
  1004. package/fjs/types/rtti/validate/proof.f.js +0 -349
  1005. package/fjs/types/sorted_list/module.f.d.ts +0 -26
  1006. package/fjs/types/sorted_list/module.f.js +0 -51
  1007. package/fjs/types/sorted_list/proof.f.d.ts +0 -4
  1008. package/fjs/types/sorted_list/proof.f.js +0 -46
  1009. package/fjs/types/sorted_set/module.f.d.ts +0 -33
  1010. package/fjs/types/sorted_set/module.f.js +0 -5
  1011. package/fjs/types/sorted_set/proof.f.d.ts +0 -6
  1012. package/fjs/types/sorted_set/proof.f.js +0 -67
  1013. package/fjs/types/string/module.f.d.ts +0 -24
  1014. package/fjs/types/string/module.f.js +0 -35
  1015. package/fjs/types/string/proof.f.js +0 -77
  1016. package/fjs/types/string_set/module.f.d.ts +0 -30
  1017. package/fjs/types/string_set/module.f.js +0 -37
  1018. package/fjs/types/string_set/proof.f.js +0 -43
  1019. package/fjs/types/ts/module.f.d.ts +0 -23
  1020. package/fjs/types/ts/module.f.js +0 -27
  1021. package/fjs/types/ts/proof.f.js +0 -86
  1022. package/fjs/types/uint8array/module.f.d.ts +0 -13
  1023. package/fjs/types/uint8array/module.f.js +0 -34
  1024. package/fjs/types/uint8array/proof.f.d.ts +0 -17
  1025. package/fjs/types/uint8array/proof.f.js +0 -64
  1026. package/fjs/website/module.f.d.ts +0 -3
  1027. package/fjs/website/module.f.js +0 -14
  1028. package/fjs/website/proof.f.js +0 -13
  1029. package/nanvm-lib/tests/proof.f.d.ts +0 -122
  1030. package/nanvm-lib/tests/proof.f.js +0 -330
  1031. package/todo/031-json.f.js +0 -241
  1032. package/todo/proof.f.d.ts +0 -20
  1033. package/todo/proof.f.js +0 -62
  1034. /package/fjs/asn.1/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1035. /package/fjs/asserts/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1036. /package/fjs/{base_n/proof.f.d.ts → basen/proof.f.d.mts} +0 -0
  1037. /package/fjs/bnf/token_symbol/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1038. /package/{todo/031-json.f.d.ts → fjs/ci/common/types.js} +0 -0
  1039. /package/fjs/ci/node/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1040. /package/fjs/crypto/hmac/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1041. /package/fjs/crypto/pow/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1042. /package/fjs/crypto/vdf/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1043. /package/fjs/dev/package_json/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1044. /package/fjs/djs/ast/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1045. /package/fjs/djs/examples/{input.f.d.ts → input.f.d.mts} +0 -0
  1046. /package/fjs/djs/examples/{m.f.d.ts → m.f.d.mts} +0 -0
  1047. /package/fjs/djs/parser/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1048. /package/fjs/djs/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1049. /package/fjs/djs/serializer/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1050. /package/fjs/djs/tokenizer/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1051. /package/fjs/djs/transpiler/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1052. /package/fjs/effects/node/memory/{proof.d.ts → proof.d.mts} +0 -0
  1053. /package/fjs/fsc/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1054. /package/fjs/fsm/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1055. /package/fjs/media/html/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1056. /package/fjs/media/json/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1057. /package/fjs/media/json/serializer/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1058. /package/fjs/media/nix/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1059. /package/fjs/media/type/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1060. /package/fjs/{module.d.ts → module.d.mts} +0 -0
  1061. /package/fjs/path/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1062. /package/fjs/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1063. /package/fjs/protocol/json_rpc/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1064. /package/fjs/sul/id/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1065. /package/fjs/sul/level/literal/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1066. /package/fjs/text/ascii/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1067. /package/fjs/text/code_point/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1068. /package/fjs/text/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1069. /package/fjs/text/sgr/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1070. /package/fjs/text/utf8/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1071. /package/fjs/types/array/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1072. /package/fjs/types/bigfloat/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1073. /package/fjs/types/bit_vec/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1074. /package/fjs/types/btree/remove/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1075. /package/fjs/types/btree/set/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1076. /package/fjs/{basen/base128/proof.f.d.ts → types/function/compare/proof.f.d.mts} +0 -0
  1077. /package/fjs/types/function/operator/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1078. /package/fjs/types/function/{compare/proof.f.d.ts → proof.f.d.mts} +0 -0
  1079. /package/fjs/types/map/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1080. /package/fjs/types/nibble_set/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1081. /package/fjs/types/nullable/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1082. /package/fjs/types/number/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1083. /package/fjs/types/option/{module.f.d.ts → types.d.ts} +0 -0
  1084. /package/fjs/types/option/{module.f.js → types.js} +0 -0
  1085. /package/fjs/types/ordered_map/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1086. /package/fjs/types/phantom/{module.f.d.ts → types.d.ts} +0 -0
  1087. /package/fjs/types/phantom/{module.f.js → types.js} +0 -0
  1088. /package/fjs/types/prime_field/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1089. /package/fjs/types/{function/proof.f.d.ts → range/proof.f.d.mts} +0 -0
  1090. /package/fjs/types/{range/proof.f.d.ts → range_set/proof.f.d.mts} +0 -0
  1091. /package/fjs/types/result/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1092. /package/fjs/types/rtti/ts/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1093. /package/fjs/types/string/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1094. /package/fjs/types/string_set/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1095. /package/fjs/types/ts/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1096. /package/fjs/website/{proof.f.d.ts → proof.f.d.mts} +0 -0
@@ -0,0 +1,147 @@
1
+ /**
2
+ * UTF-16 utilities: convert between strings, UTF-16 code units, and Unicode
3
+ * code points, including surrogate-pair encoding/decoding via streaming
4
+ * `stateScan` operations.
5
+ *
6
+ * @module
7
+ */
8
+ import type { List, Thunk } from '../../types/list/types.ts';
9
+ export type _Utf16State = number | null;
10
+ import type { CodePoint, U16 } from './types.ts';
11
+ /**
12
+ * Converts a UTF-16 sequence to its corresponding Unicode code points.
13
+ *
14
+ * This function handles:
15
+ * 1. Single U16 values in the Basic Multilingual Plane (BMP) [0x0000–0xFFFF].
16
+ * 2. Surrogate pairs representing code points in the Supplementary Plane [0x10000–0x10FFFF].
17
+ * 3. Invalid input sequences by applying an error mask to the resulting code point.
18
+ *
19
+ * @example
20
+ *
21
+ * ```ts
22
+ * const exampleUtf16: List<U16> = [
23
+ * 0x0041, // 'A' (BMP, single U16)
24
+ * 0xD83D, 0xDE00, // 😀 (Emoji, surrogate pair)
25
+ * 0xD800, // Unpaired high surrogate
26
+ * 0xDC00, // Unpaired low surrogate
27
+ * ]
28
+ *
29
+ * const codePoints = toCodePointList(exampleUtf16)
30
+ * codePoints.forEach((codePoint) => {
31
+ * if (codePoint & errorMask) {
32
+ * console.log(`Invalid sequence detected: ${codePoint.toString(16).toUpperCase()}`)
33
+ * } else {
34
+ * console.log(`Code Point: U+${codePoint.toString(16).toUpperCase()}`)
35
+ * }
36
+ * })
37
+ * ```
38
+ *
39
+ * @type {(input: List<CodePoint>) => Thunk<U16>}
40
+ */
41
+ export declare const fromCodePointList: (input: List<CodePoint>) => Thunk<U16>;
42
+ /**
43
+ * Converts a list of UTF-16 code units to a list of Unicode code points (CodePoint).
44
+ * This function processes each UTF-16 code unit, decoding them into their corresponding Unicode code points.
45
+ * The input list of `U16` values may represent characters in the Basic Multilingual Plane (BMP) or supplementary planes,
46
+ * with surrogate pairs handled correctly. The function also handles EOF (`null`).
47
+ *
48
+ * @example
49
+ *
50
+ * ```ts
51
+ * const utf16List: List<U16> = [0x0041, 0xD83D, 0xDE00] // 'A' and 😀 (surrogate pair)
52
+ * const codePoints = toCodePointList(utf16List)
53
+ * ```
54
+ *
55
+ * @type {(input: List<U16>) => List<CodePoint>}
56
+ */
57
+ export declare const toCodePointList: (input: List<U16>) => List<CodePoint>;
58
+ /**
59
+ * Converts a string to a list of UTF-16 code units (U16).
60
+ *
61
+ * This function processes each character in the input string and converts it to its corresponding UTF-16 code unit(s).
62
+ * Characters in the Basic Multilingual Plane (BMP) will produce a single `U16`, while supplementary plane characters
63
+ * (those requiring surrogate pairs) will produce two `U16` values.
64
+ * @param {string} s - The input string to convert to UTF-16 code units.
65
+ * @returns {List<U16>} A list of UTF-16 code units (`U16`) representing the string.
66
+ *
67
+ * @example
68
+ *
69
+ * ```js
70
+ * const inputString = "Hello, 😀"
71
+ * const utf16List = stringToList(inputString)
72
+ * ```
73
+ */
74
+ export declare const stringToList: (s: string) => List<U16>;
75
+ /**
76
+ * Converts a string to a list of Unicode code points (CodePoint).
77
+ * This function first converts the string to a list of UTF-16 code units (U16) using `stringToList`,
78
+ * then it converts the UTF-16 code units to Unicode code points using `toCodePointList`. This is useful for handling
79
+ * Unicode characters, including supplementary characters represented by surrogate pairs in UTF-16.
80
+ *
81
+ * @param {string} input - The input string to convert.
82
+ * @returns {List<CodePoint>} A list of Unicode code points (`CodePoint`) corresponding to the characters in the string.
83
+ *
84
+ * @example
85
+ *
86
+ * ```js
87
+ * const inputString = "Hello, 😀"
88
+ * const codePoints = stringToCodePointList(inputString)
89
+ * ```
90
+ */
91
+ export declare const stringToCodePointList: (input: string) => List<CodePoint>;
92
+ /**
93
+ * Converts a list of UTF-16 code units (U16) to a string.
94
+ * This function takes a list of `U16` values (UTF-16 code units) and reconstructs the original string by mapping
95
+ * each code unit back to its character using `String.fromCharCode`. The resulting characters are concatenated
96
+ * to form the final string.
97
+ *
98
+ * @example
99
+ *
100
+ * ```ts
101
+ * const utf16List: List<U16> = [0x0041, 0x0042, 0x0043] // 'ABC'
102
+ * const outputString = listToString(utf16List)
103
+ * ```
104
+ *
105
+ * @type {(input: List<U16>) => string}
106
+ */
107
+ export declare const listToString: (input: List<U16>) => string;
108
+ /**
109
+ * Converts a list of Unicode code points (CodePoint) to a string.
110
+ * This function first converts the list of Unicode code points to a list of UTF-16 code units using `fromCodePointList`,
111
+ * then it uses `listToString` to reconstruct the string from the UTF-16 code units.
112
+ *
113
+ * @param {List<CodePoint>} input - A list of Unicode code points (`CodePoint`).
114
+ * @returns {string} A string representing the characters encoded by the input code points.
115
+ *
116
+ * @example
117
+ *
118
+ * ```ts
119
+ * const codePoints: List<CodePoint> = [0x48, 0x65, 0x6C, 0x6C, 0x6F]
120
+ * const outputString = codePointListToString(codePoints)
121
+ * ```
122
+ */
123
+ export declare const codePointListToString: (input: List<CodePoint>) => string;
124
+ /**
125
+ * Converts a single Unicode code point to a string — the scalar counterpart of
126
+ * {@link codePointListToString}, for callers that hold one code point rather
127
+ * than a list of them and would otherwise wrap it in a single-element list.
128
+ *
129
+ * Input outside the assignable range — a surrogate, a value above
130
+ * `0x10FFFF`, or a negative one — is truncated to its low 16 bits and encoded
131
+ * as that code unit, rather than rejected. This matches
132
+ * {@link codePointListToString}, which reports malformed input through the
133
+ * decoder's `errorMask` on the way *in* rather than through a failure on the
134
+ * way out.
135
+ *
136
+ * @param {CodePoint} codePoint - A Unicode code point (`CodePoint`).
137
+ * @returns {string} The one- or two-code-unit string encoding it.
138
+ *
139
+ * @example
140
+ *
141
+ * ```ts
142
+ * codePointToString(0x48) // 'H'
143
+ * codePointToString(0x1F600) // the 😀 surrogate pair
144
+ * codePointToString(0x110000) // '\u0000' — out of range, low 16 bits kept
145
+ * ```
146
+ */
147
+ export declare const codePointToString: (codePoint: CodePoint) => string;
@@ -0,0 +1,350 @@
1
+ /**
2
+ * UTF-16 utilities: convert between strings, UTF-16 code units, and Unicode
3
+ * code points, including surrogate-pair encoding/decoding via streaming
4
+ * `stateScan` operations.
5
+ *
6
+ * @module
7
+ */
8
+
9
+ import {
10
+ map,
11
+ reduce,
12
+ flatMap,
13
+ empty,
14
+ } from '../../types/list/module.f.mjs'
15
+ /** @import { List, Result, Thunk } from '../../types/list/types.ts' */
16
+
17
+ import { concat } from '../../types/function/operator/module.f.mjs'
18
+ /** @import { StateScan } from '../../types/function/operator/types.ts' */
19
+
20
+ import { contains } from '../../types/range/module.f.mjs'
21
+
22
+ import { fn } from '../../types/function/module.f.mjs'
23
+
24
+ import {
25
+ decoder,
26
+ errorMask,
27
+ isBmpCodePoint,
28
+ isHighSurrogate,
29
+ isLowSurrogate,
30
+ isSupplementaryPlane,
31
+ } from '../code_point/module.f.mjs'
32
+
33
+ /**
34
+ * Optional Utf16State - represents the state of utf16 decoding operation or null.
35
+ * - number is used an unsigned integer.
36
+ *
37
+ * @typedef {number | null} _Utf16State
38
+ */
39
+
40
+ /** @import { CodePoint, U16 } from './types.ts' */
41
+
42
+ /**
43
+ * The BMP / surrogate / supplementary-plane predicates used below live in
44
+ * `code_point`, the shared Unicode contract; see that module for their ranges.
45
+ *
46
+ * Converts a Unicode code point to its corresponding UTF-16 representation.
47
+ *
48
+ * This function handles:
49
+ * 1. Code points in the Basic Multilingual Plane (BMP) [0x0000–0xFFFF],
50
+ * which map directly to a single 16-bit value (U16).
51
+ * 2. Supplementary Plane code points [0x10000–0x10FFFF],
52
+ * which are represented as surrogate pairs in UTF-16.
53
+ *
54
+ * @param {CodePoint} codePoint - A valid Unicode code point.
55
+ * @returns {readonly U16[]} A list of 16-bit unsigned integers (U16) representing the UTF-16 encoding
56
+ * of the input code point. If the code point is in the BMP range, a single U16
57
+ * value is returned. For code points in the supplementary planes, two U16
58
+ * values (a high and a low surrogate) are returned.
59
+ * @example
60
+ *
61
+ * ```ts
62
+ * const exampleCodePoints: List<CodePoint> = [
63
+ * 0x0041, // 'A' (BMP, single U16)
64
+ * 0x1F600, // 😀 (Emoji, supplementary plane, surrogate pair)
65
+ * 0xD7FF, // Last code point in the low BMP range
66
+ * 0xE000, // First code point in the high BMP range
67
+ * 0x10FFFF, // Maximum valid code point in Unicode
68
+ * 0x110000, // Invalid code point (outside Unicode range)
69
+ * ]
70
+ * exampleCodePoints.forEach((codePoint) => {
71
+ * const utf16Result = codePointToUtf16(codePoint)
72
+ * console.log(`Code Point: U+${codePoint.toString(16).toUpperCase()}`)
73
+ * console.log(`UTF-16: ${utf16Result.map(u16 => u16.toString(16).toUpperCase()).join(' ')}`)
74
+ * })
75
+ * ```
76
+ */
77
+ const codePointToUtf16 = codePoint => {
78
+ if (isBmpCodePoint(codePoint)) { return [codePoint] }
79
+ if (isSupplementaryPlane(codePoint)) {
80
+ const n = codePoint - 0x1_0000
81
+ const high = (n >> 10) + 0xd800
82
+ const low = (n & 0b0011_1111_1111) + 0xdc00
83
+ return [high, low]
84
+ }
85
+ return [codePoint & 0xffff]
86
+ }
87
+
88
+
89
+ /**
90
+ * Converts a UTF-16 sequence to its corresponding Unicode code points.
91
+ *
92
+ * This function handles:
93
+ * 1. Single U16 values in the Basic Multilingual Plane (BMP) [0x0000–0xFFFF].
94
+ * 2. Surrogate pairs representing code points in the Supplementary Plane [0x10000–0x10FFFF].
95
+ * 3. Invalid input sequences by applying an error mask to the resulting code point.
96
+ *
97
+ * @example
98
+ *
99
+ * ```ts
100
+ * const exampleUtf16: List<U16> = [
101
+ * 0x0041, // 'A' (BMP, single U16)
102
+ * 0xD83D, 0xDE00, // 😀 (Emoji, surrogate pair)
103
+ * 0xD800, // Unpaired high surrogate
104
+ * 0xDC00, // Unpaired low surrogate
105
+ * ]
106
+ *
107
+ * const codePoints = toCodePointList(exampleUtf16)
108
+ * codePoints.forEach((codePoint) => {
109
+ * if (codePoint & errorMask) {
110
+ * console.log(`Invalid sequence detected: ${codePoint.toString(16).toUpperCase()}`)
111
+ * } else {
112
+ * console.log(`Code Point: U+${codePoint.toString(16).toUpperCase()}`)
113
+ * }
114
+ * })
115
+ * ```
116
+ *
117
+ * @type {(input: List<CodePoint>) => Thunk<U16>}
118
+ */
119
+ export const fromCodePointList
120
+ = flatMap(codePointToUtf16)
121
+
122
+ /**
123
+ * Validates whether a given 16-bit unsigned integer (U16) falls within the valid range for UTF-16 code units.
124
+ *
125
+ * UTF-16 uses 16-bit code units to encode characters. The valid range for these code units is [0x0000, 0xFFFF].
126
+ * This function is used to verify that a number is within this range.
127
+ *
128
+ * @example
129
+ *
130
+ * ```ts
131
+ * const validU16 = u16(0x0041) // true: U+0041 ('A')
132
+ * const invalidU16 = u16(0x110000) // false: Value is outside the valid range
133
+ * const edgeCaseLow = u16(0x0000) // true: Minimum valid value for UTF-16
134
+ * const edgeCaseHigh = u16(0xFFFF) // true: Maximum valid value for UTF-16
135
+ * ```
136
+ *
137
+ * @type {(i: U16) => boolean}
138
+ */
139
+ const u16 = contains(0x0000, 0xFFFF)
140
+
141
+
142
+ /**
143
+ * A stateful operation that converts a UTF-16 word (U16) to a list of Unicode code points (CodePoint),
144
+ * while maintaining the state of surrogate pair decoding.
145
+ *
146
+ * This operation processes UTF-16 code units and decodes them into Unicode code points. It handles:
147
+ * 1. BMP code points (single U16).
148
+ * 2. Surrogate pairs (two U16s representing a single code point in the supplementary planes).
149
+ * 3. Invalid or malformed code units.
150
+ *
151
+ * It also manages the internal state, which is necessary to handle surrogate pairs. If the state is null,
152
+ * it expects a valid BMP code point or a high surrogate. If the state is not null, it processes a low surrogate
153
+ * and combines the pair into a single supplementary code point.
154
+ *
155
+ * @param state - The current state of the UTF-16 decoding operation.
156
+ * This can be either `null` (no state) or the previous high surrogate value.
157
+ * @param word - The current UTF-16 word (U16) to process.
158
+ * @returns A tuple where the first element is a list of decoded Unicode code points (`CodePoint`), and
159
+ * the second element is the updated state. If the word is invalid, an error code `0xffffffff` is returned.
160
+ *
161
+ * @example
162
+ *
163
+ * ```ts
164
+ * const state: Utf16State = null;
165
+ * const word: U16 = 0xD83D; // High surrogate for 😀 emoji
166
+ * const [decodedCodePoints, newState] = utf16ByteToCodePointOp(word, state);
167
+ * ```
168
+ *
169
+ * @example
170
+ *
171
+ * ```ts
172
+ * const state: Utf16State = 0xD83D; // High surrogate already stored
173
+ * const word: U16 = 0xDC00; // Low surrogate for 😀 emoji
174
+ * const [decodedCodePoints, newState] = utf16ByteToCodePointOp(word, state);
175
+ * ```
176
+ *
177
+ * @type {StateScan<U16, _Utf16State, List<CodePoint>>}
178
+ */
179
+ const utf16ByteToCodePointOp = (word, state) => {
180
+ if (!u16(word)) {
181
+ return [[0xffffffff], state]
182
+ }
183
+ if (state === null) {
184
+ if (isBmpCodePoint(word)) { return [[word], null] }
185
+ if (isHighSurrogate(word)) { return [[], word] }
186
+ return [[word | errorMask], null]
187
+ }
188
+ if (isLowSurrogate(word)) {
189
+ const high = state - 0xd800
190
+ const low = word - 0xdc00
191
+ return [[(high << 10) + low + 0x10000], null]
192
+ }
193
+ if (isBmpCodePoint(word)) { return [[state | errorMask, word], null] }
194
+ if (isHighSurrogate(word)) { return [[state | errorMask], word] }
195
+ return [[state | errorMask, word | errorMask], null]
196
+ }
197
+
198
+
199
+ /**
200
+ * Handles the EOF (end-of-file) condition during UTF-16 decoding.
201
+ *
202
+ * If there is no pending state (`state === null`), it simply returns an empty list
203
+ * of code points, indicating no further input to process. If there is a pending state,
204
+ * it is treated as an unpaired surrogate, and the `errorMask` is applied to flag
205
+ * the invalid sequence.
206
+ *
207
+ * @param {_Utf16State} state - The current UTF-16 decoding state. This can be:
208
+ * - `null`: No pending surrogate to process.
209
+ * - A high surrogate (0xD800–0xDBFF) left from an earlier input, waiting for a low surrogate.
210
+ * @returns {readonly[List<CodePoint>, _Utf16State]} A tuple:
211
+ * - The first element is a list of code points. If there’s a pending state, it is returned
212
+ * with the `errorMask` applied.
213
+ * - The second element is the next state, which will always be `null` because EOF means no
214
+ * further processing.
215
+ *
216
+ * @example
217
+ *
218
+ * ```js
219
+ * const eofState = utf16EofToCodePointOp(0xD800) // Unpaired high surrogate
220
+ * const validState = utf16EofToCodePointOp(null) // No pending state
221
+ * ```
222
+ */
223
+ const utf16EofToCodePointOp = state =>
224
+ [state === null ? empty : [state | errorMask], null]
225
+
226
+
227
+ /**
228
+ * Converts a list of UTF-16 code units to a list of Unicode code points (CodePoint).
229
+ * This function processes each UTF-16 code unit, decoding them into their corresponding Unicode code points.
230
+ * The input list of `U16` values may represent characters in the Basic Multilingual Plane (BMP) or supplementary planes,
231
+ * with surrogate pairs handled correctly. The function also handles EOF (`null`).
232
+ *
233
+ * @example
234
+ *
235
+ * ```ts
236
+ * const utf16List: List<U16> = [0x0041, 0xD83D, 0xDE00] // 'A' and 😀 (surrogate pair)
237
+ * const codePoints = toCodePointList(utf16List)
238
+ * ```
239
+ *
240
+ * @type {(input: List<U16>) => List<CodePoint>}
241
+ */
242
+ export const toCodePointList =
243
+ decoder(utf16ByteToCodePointOp, utf16EofToCodePointOp)
244
+
245
+ /**
246
+ * Converts a string to a list of UTF-16 code units (U16).
247
+ *
248
+ * This function processes each character in the input string and converts it to its corresponding UTF-16 code unit(s).
249
+ * Characters in the Basic Multilingual Plane (BMP) will produce a single `U16`, while supplementary plane characters
250
+ * (those requiring surrogate pairs) will produce two `U16` values.
251
+ * @param {string} s - The input string to convert to UTF-16 code units.
252
+ * @returns {List<U16>} A list of UTF-16 code units (`U16`) representing the string.
253
+ *
254
+ * @example
255
+ *
256
+ * ```js
257
+ * const inputString = "Hello, 😀"
258
+ * const utf16List = stringToList(inputString)
259
+ * ```
260
+ */
261
+ export const stringToList = s => {
262
+ /** @type {(i: number) => Result<number>} */
263
+ const at = i => {
264
+ const first = s.charCodeAt(i)
265
+ return isNaN(first) ? empty : { first, tail: () => at(i + 1) }
266
+ }
267
+ return at(0)
268
+ }
269
+
270
+ /**
271
+ * Converts a string to a list of Unicode code points (CodePoint).
272
+ * This function first converts the string to a list of UTF-16 code units (U16) using `stringToList`,
273
+ * then it converts the UTF-16 code units to Unicode code points using `toCodePointList`. This is useful for handling
274
+ * Unicode characters, including supplementary characters represented by surrogate pairs in UTF-16.
275
+ *
276
+ * @param {string} input - The input string to convert.
277
+ * @returns {List<CodePoint>} A list of Unicode code points (`CodePoint`) corresponding to the characters in the string.
278
+ *
279
+ * @example
280
+ *
281
+ * ```js
282
+ * const inputString = "Hello, 😀"
283
+ * const codePoints = stringToCodePointList(inputString)
284
+ * ```
285
+ */
286
+ export const stringToCodePointList = input =>
287
+ toCodePointList(stringToList(input))
288
+
289
+ /**
290
+ * Converts a list of UTF-16 code units (U16) to a string.
291
+ * This function takes a list of `U16` values (UTF-16 code units) and reconstructs the original string by mapping
292
+ * each code unit back to its character using `String.fromCharCode`. The resulting characters are concatenated
293
+ * to form the final string.
294
+ *
295
+ * @example
296
+ *
297
+ * ```ts
298
+ * const utf16List: List<U16> = [0x0041, 0x0042, 0x0043] // 'ABC'
299
+ * const outputString = listToString(utf16List)
300
+ * ```
301
+ *
302
+ * @type {(input: List<U16>) => string}
303
+ */
304
+ export const listToString = fn(map(String.fromCharCode))
305
+ .map(reduce(concat)(''))
306
+ .result
307
+
308
+ /**
309
+ * Converts a list of Unicode code points (CodePoint) to a string.
310
+ * This function first converts the list of Unicode code points to a list of UTF-16 code units using `fromCodePointList`,
311
+ * then it uses `listToString` to reconstruct the string from the UTF-16 code units.
312
+ *
313
+ * @param {List<CodePoint>} input - A list of Unicode code points (`CodePoint`).
314
+ * @returns {string} A string representing the characters encoded by the input code points.
315
+ *
316
+ * @example
317
+ *
318
+ * ```ts
319
+ * const codePoints: List<CodePoint> = [0x48, 0x65, 0x6C, 0x6C, 0x6F]
320
+ * const outputString = codePointListToString(codePoints)
321
+ * ```
322
+ */
323
+ export const codePointListToString = input =>
324
+ listToString(fromCodePointList(input))
325
+
326
+ /**
327
+ * Converts a single Unicode code point to a string — the scalar counterpart of
328
+ * {@link codePointListToString}, for callers that hold one code point rather
329
+ * than a list of them and would otherwise wrap it in a single-element list.
330
+ *
331
+ * Input outside the assignable range — a surrogate, a value above
332
+ * `0x10FFFF`, or a negative one — is truncated to its low 16 bits and encoded
333
+ * as that code unit, rather than rejected. This matches
334
+ * {@link codePointListToString}, which reports malformed input through the
335
+ * decoder's `errorMask` on the way *in* rather than through a failure on the
336
+ * way out.
337
+ *
338
+ * @param {CodePoint} codePoint - A Unicode code point (`CodePoint`).
339
+ * @returns {string} The one- or two-code-unit string encoding it.
340
+ *
341
+ * @example
342
+ *
343
+ * ```ts
344
+ * codePointToString(0x48) // 'H'
345
+ * codePointToString(0x1F600) // the 😀 surrogate pair
346
+ * codePointToString(0x110000) // '\u0000' — out of range, low 16 bits kept
347
+ * ```
348
+ */
349
+ export const codePointToString = codePoint =>
350
+ String.fromCharCode(...codePointToUtf16(codePoint))
@@ -0,0 +1,11 @@
1
+ /** @import { Unknown } from '../../media/json/types.ts' */
2
+ export declare const proof: {
3
+ toCodePointList: (() => void)[];
4
+ fromCodePointList: (() => void)[];
5
+ string: (() => void)[];
6
+ stringToList: (() => void)[];
7
+ listToString: (() => void)[];
8
+ stringToCodePointList: (() => void)[];
9
+ codePointListToString: (() => void)[];
10
+ codePointToString: (() => void)[];
11
+ };
@@ -0,0 +1,158 @@
1
+ /** @import { Unknown } from '../../media/json/types.ts' */
2
+
3
+ import {
4
+ toCodePointList,
5
+ fromCodePointList,
6
+ stringToList,
7
+ listToString,
8
+ stringToCodePointList,
9
+ codePointListToString,
10
+ codePointToString
11
+ } from './module.f.mjs'
12
+ import { stringify as jsonStringify } from '../../media/json/module.f.mjs'
13
+ import { sort } from '../../types/object/module.f.mjs'
14
+ import { toArray } from '../../types/list/module.f.mjs'
15
+ import { assertEq } from '../../asserts/module.f.mjs'
16
+
17
+ /** @type {(a: readonly Unknown[]) => string} */
18
+ const stringify = a =>
19
+ jsonStringify(sort)(a)
20
+
21
+ export const proof = {
22
+ toCodePointList: [
23
+ () => {
24
+ const result = stringify(toArray(toCodePointList([-1, 65536])))
25
+ assertEq(result, '[4294967295,4294967295]')
26
+ },
27
+ () => {
28
+ const result = stringify(toArray(toCodePointList([0, 36, 8364, 55295, 57344, 65535])))
29
+ assertEq(result, '[0,36,8364,55295,57344,65535]')
30
+ },
31
+ () => {
32
+ const result = stringify(toArray(toCodePointList([56320, 57343])))
33
+ assertEq(result, '[-2147427328,-2147426305]')
34
+ },
35
+ () => {
36
+ const result = stringify(toArray(toCodePointList([55296, 56320, 55297, 56375, 55378, 57186, 56319, 57343])))
37
+ assertEq(result, '[65536,66615,150370,1114111]')
38
+ },
39
+ () => {
40
+ const result = stringify(toArray(toCodePointList([55296, 55296])))
41
+ assertEq(result, '[-2147428352,-2147428352]')
42
+ },
43
+ () => {
44
+ const result = stringify(toArray(toCodePointList([55296, 0])))
45
+ assertEq(result, '[-2147428352,0]')
46
+ },
47
+ () => {
48
+ const result = stringify(toArray(toCodePointList([56320])))
49
+ assertEq(result, '[-2147427328]')
50
+ },
51
+ () => {
52
+ const result = stringify(toArray(toCodePointList([56320, 0])))
53
+ assertEq(result, '[-2147427328,0]')
54
+ }
55
+ ],
56
+ fromCodePointList: [
57
+ () => {
58
+ const result = stringify(toArray(fromCodePointList([0])))
59
+ assertEq(result, '[0]')
60
+ },
61
+ () => {
62
+ const result = stringify(toArray(fromCodePointList([0x24])))
63
+ assertEq(result, '[36]')
64
+ },
65
+ () => {
66
+ const result = stringify(toArray(fromCodePointList([0x20AC])))
67
+ assertEq(result, '[8364]')
68
+ },
69
+ () => {
70
+ const result = stringify(toArray(fromCodePointList([0xd7ff])))
71
+ assertEq(result, '[55295]')
72
+ },
73
+ () => {
74
+ const result = stringify(toArray(fromCodePointList([0xe000])))
75
+ assertEq(result, '[57344]')
76
+ },
77
+ () => {
78
+ const result = stringify(toArray(fromCodePointList([0xffff])))
79
+ assertEq(result, '[65535]')
80
+ },
81
+ () => {
82
+ const result = stringify(toArray(fromCodePointList([0x10000])))
83
+ assertEq(result, '[55296,56320]')
84
+ },
85
+ () => {
86
+ const result = stringify(toArray(fromCodePointList([0x10437])))
87
+ assertEq(result, '[55297,56375]')
88
+ },
89
+ () => {
90
+ const result = stringify(toArray(fromCodePointList([0x24B62])))
91
+ assertEq(result, '[55378,57186]')
92
+ },
93
+ () => {
94
+ const result = stringify(toArray(fromCodePointList([0x10ffff])))
95
+ assertEq(result, '[56319,57343]')
96
+ },
97
+ () => {
98
+ const result = stringify(toArray(fromCodePointList([-1, 0xd800, 0xdfff, 0x110000])))
99
+ assertEq(result, '[65535,55296,57343,0]')
100
+ }
101
+ ],
102
+ string: [
103
+ () => {
104
+ const utf16List = stringToList("Hello world!😂🚜🚲")
105
+ const result = listToString(utf16List)
106
+ assertEq(result, "Hello world!😂🚜🚲")
107
+ },
108
+ () => {
109
+ const cpList = stringToCodePointList("Hello world!😂🚜🚲")
110
+ const result = codePointListToString(cpList)
111
+ assertEq(result, "Hello world!😂🚜🚲")
112
+ },
113
+ () => {
114
+ const a = stringToList("Hello world!😂🚜🚲")
115
+ const b = toCodePointList(a)
116
+ const c = fromCodePointList(b)
117
+ const result = listToString(c)
118
+ assertEq(result, "Hello world!😂🚜🚲")
119
+ }
120
+ ],
121
+ stringToList: [
122
+ () => {
123
+ const inputString = "Hello, i like js"
124
+ const utf16List = stringToList(inputString)
125
+ },
126
+ () => {
127
+ const inputString = "😇🤬🫥😑🫠"
128
+ const utf16List = stringToList(inputString)
129
+ }
130
+ ],
131
+ listToString: [
132
+ () => {
133
+ const utf16List = [0x0041, 0x0042, 0x0043]
134
+ const outputString = listToString(utf16List)
135
+ }
136
+ ],
137
+ stringToCodePointList: [
138
+ () => {
139
+ const inputString = "Hello, 😀"
140
+ const codePoints = stringToCodePointList(inputString)
141
+ }
142
+ ],
143
+ codePointListToString: [
144
+ () => {
145
+ const codePoints = [0x48, 0x65, 0x6C, 0x6C, 0x6F]
146
+ const outputString = codePointListToString(codePoints)
147
+ }
148
+ ],
149
+ codePointToString: [
150
+ () => { assertEq(codePointToString(0x48), 'H') },
151
+ // supplementary plane: one code point, two code units
152
+ () => { assertEq(codePointToString(0x1f600), '😀') },
153
+ // a surrogate is not a code point; it round-trips as its own code unit
154
+ () => { assertEq(codePointToString(0xd800), '\ud800') },
155
+ // above the maximum code point, the low 16 bits are kept
156
+ () => { assertEq(codePointToString(0x110000), '\u0000') },
157
+ ]
158
+ }
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Types for UTF-16 code units and Unicode code points.
3
+ *
4
+ * @module
5
+ */
6
+ /**
7
+ * Represent an unsigned UTF16, used to store one word UTF-16 (code unit).
8
+ */
9
+ export type U16 = number;
10
+ /**
11
+ * [0, 0x10_FFFF]: 16+5 = 21 bits
12
+ *
13
+ * 121_0000_0000: 16+16+9 = 41 bits
14
+ */
15
+ /**
16
+ * Represent an Unicode code point.
17
+ * Has range: from 0x0000 to 0x10_FFFF (21 bits).
18
+ */
19
+ export type CodePoint = number;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Types for UTF-16 code units and Unicode code points.
3
+ *
4
+ * @module
5
+ */
6
+ export {};