functionalscript 0.43.1 → 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 (1095) 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.mjs +228 -0
  313. package/fjs/media/revision/types.d.ts +16 -0
  314. package/fjs/media/revision/types.js +8 -0
  315. package/fjs/media/rust/module.f.d.mts +61 -0
  316. package/fjs/media/rust/module.f.mjs +93 -0
  317. package/fjs/media/rust/proof.f.d.mts +17 -0
  318. package/fjs/media/rust/proof.f.mjs +50 -0
  319. package/fjs/media/type/module.f.d.mts +97 -0
  320. package/fjs/media/type/module.f.mjs +281 -0
  321. package/fjs/media/type/proof.f.mjs +285 -0
  322. package/fjs/media/type/types.d.ts +67 -0
  323. package/fjs/media/type/types.js +6 -0
  324. package/fjs/media/types.d.ts +26 -0
  325. package/fjs/media/types.js +7 -0
  326. package/fjs/module.f.d.mts +3 -0
  327. package/fjs/module.f.mjs +60 -0
  328. package/fjs/module.mjs +6 -0
  329. package/fjs/nanvm/module.f.d.mts +54 -0
  330. package/fjs/nanvm/module.f.mjs +240 -0
  331. package/fjs/nanvm/proof.f.d.mts +41 -0
  332. package/fjs/nanvm/proof.f.mjs +173 -0
  333. package/fjs/nanvm/rust/module.f.d.mts +54 -0
  334. package/fjs/nanvm/rust/module.f.mjs +166 -0
  335. package/fjs/nanvm/rust/proof.f.d.mts +21 -0
  336. package/fjs/nanvm/rust/proof.f.mjs +119 -0
  337. package/fjs/nanvm/types.d.ts +105 -0
  338. package/fjs/nanvm/types.js +11 -0
  339. package/fjs/nanvm/update/module.f.d.mts +23 -0
  340. package/fjs/nanvm/update/module.f.mjs +33 -0
  341. package/fjs/nanvm/update/proof.f.d.mts +9 -0
  342. package/fjs/nanvm/update/proof.f.mjs +32 -0
  343. package/fjs/path/module.f.d.mts +55 -0
  344. package/fjs/path/module.f.mjs +96 -0
  345. package/fjs/path/proof.f.mjs +125 -0
  346. package/fjs/proof.f.mjs +48 -0
  347. package/fjs/protocol/json_rpc/module.f.d.mts +127 -0
  348. package/fjs/protocol/json_rpc/module.f.mjs +112 -0
  349. package/fjs/protocol/json_rpc/proof.f.mjs +84 -0
  350. package/fjs/protocol/json_rpc/types.d.ts +30 -0
  351. package/fjs/protocol/json_rpc/types.js +8 -0
  352. package/fjs/protocol/mcp/module.f.d.mts +227 -0
  353. package/fjs/protocol/mcp/module.f.mjs +369 -0
  354. package/fjs/protocol/mcp/proof.f.d.mts +53 -0
  355. package/fjs/protocol/mcp/proof.f.mjs +312 -0
  356. package/fjs/protocol/mcp/stdio/module.f.d.mts +52 -0
  357. package/fjs/protocol/mcp/stdio/module.f.mjs +132 -0
  358. package/fjs/protocol/mcp/stdio/proof.f.d.mts +20 -0
  359. package/fjs/protocol/mcp/stdio/proof.f.mjs +190 -0
  360. package/fjs/protocol/mcp/types.d.ts +59 -0
  361. package/fjs/protocol/mcp/types.js +8 -0
  362. package/fjs/sul/id/module.f.d.mts +37 -0
  363. package/fjs/sul/id/module.f.mjs +143 -0
  364. package/fjs/sul/id/proof.f.mjs +72 -0
  365. package/fjs/sul/id/types.d.ts +8 -0
  366. package/fjs/sul/id/types.js +6 -0
  367. package/fjs/sul/level/hash/module.f.d.mts +37 -0
  368. package/fjs/sul/level/hash/module.f.mjs +61 -0
  369. package/fjs/sul/level/hash/proof.f.d.mts +15 -0
  370. package/fjs/sul/level/hash/proof.f.mjs +131 -0
  371. package/fjs/sul/level/hash/types.d.ts +20 -0
  372. package/fjs/sul/level/hash/types.js +6 -0
  373. package/fjs/sul/level/literal/module.f.d.mts +54 -0
  374. package/fjs/sul/level/literal/module.f.mjs +120 -0
  375. package/fjs/sul/level/literal/proof.f.mjs +788 -0
  376. package/fjs/sul/level/literal/types.d.ts +31 -0
  377. package/fjs/sul/level/literal/types.js +6 -0
  378. package/fjs/sul/module.f.d.mts +25 -0
  379. package/fjs/sul/module.f.mjs +69 -0
  380. package/fjs/sul/proof.f.d.mts +11 -0
  381. package/fjs/sul/proof.f.mjs +62 -0
  382. package/fjs/sul/types.d.ts +19 -0
  383. package/fjs/sul/types.js +6 -0
  384. package/fjs/text/ascii/module.f.d.mts +136 -0
  385. package/fjs/text/ascii/module.f.mjs +224 -0
  386. package/fjs/text/ascii/proof.f.mjs +16 -0
  387. package/fjs/text/code_point/module.f.d.mts +74 -0
  388. package/fjs/text/code_point/module.f.mjs +139 -0
  389. package/fjs/text/code_point/proof.f.mjs +80 -0
  390. package/fjs/text/module.f.d.mts +39 -0
  391. package/fjs/text/module.f.mjs +61 -0
  392. package/fjs/text/proof.f.mjs +48 -0
  393. package/fjs/text/sgr/module.f.d.mts +58 -0
  394. package/fjs/text/sgr/module.f.mjs +99 -0
  395. package/fjs/text/sgr/proof.f.mjs +39 -0
  396. package/fjs/text/sgr/types.d.ts +12 -0
  397. package/fjs/text/sgr/types.js +6 -0
  398. package/fjs/text/types.d.ts +13 -0
  399. package/fjs/text/types.js +6 -0
  400. package/fjs/text/utf16/module.f.d.mts +147 -0
  401. package/fjs/text/utf16/module.f.mjs +350 -0
  402. package/fjs/text/utf16/proof.f.d.mts +11 -0
  403. package/fjs/text/utf16/proof.f.mjs +158 -0
  404. package/fjs/text/utf16/types.d.ts +19 -0
  405. package/fjs/text/utf16/types.js +6 -0
  406. package/fjs/text/utf8/module.f.d.mts +69 -0
  407. package/fjs/text/utf8/module.f.mjs +280 -0
  408. package/fjs/text/utf8/proof.f.mjs +217 -0
  409. package/fjs/text/utf8/types.d.ts +26 -0
  410. package/fjs/text/utf8/types.js +6 -0
  411. package/fjs/types/array/module.f.d.mts +68 -0
  412. package/fjs/types/array/module.f.mjs +101 -0
  413. package/fjs/types/array/proof.f.mjs +98 -0
  414. package/fjs/types/array/types.d.ts +13 -0
  415. package/fjs/types/array/types.js +6 -0
  416. package/fjs/types/bigfloat/module.f.d.mts +14 -0
  417. package/fjs/types/bigfloat/module.f.mjs +99 -0
  418. package/fjs/types/bigfloat/proof.f.mjs +218 -0
  419. package/fjs/types/bigfloat/types.d.ts +6 -0
  420. package/fjs/types/bigfloat/types.js +6 -0
  421. package/fjs/types/bigint/benchmark.d.mts +1 -0
  422. package/fjs/types/bigint/benchmark.mjs +205 -0
  423. package/fjs/types/bigint/module.f.d.mts +176 -0
  424. package/fjs/types/bigint/module.f.mjs +289 -0
  425. package/fjs/types/bigint/proof.f.d.mts +39 -0
  426. package/fjs/types/bigint/proof.f.mjs +443 -0
  427. package/fjs/types/bigint/types.d.ts +14 -0
  428. package/fjs/types/bigint/types.js +6 -0
  429. package/fjs/types/bit_vec/module.f.d.mts +199 -0
  430. package/fjs/types/bit_vec/module.f.mjs +485 -0
  431. package/fjs/types/bit_vec/proof.f.mjs +495 -0
  432. package/fjs/types/bit_vec/types.d.ts +51 -0
  433. package/fjs/types/bit_vec/types.js +6 -0
  434. package/fjs/types/btree/find/module.f.d.mts +15 -0
  435. package/fjs/types/btree/find/module.f.mjs +80 -0
  436. package/fjs/types/btree/find/proof.f.d.mts +4 -0
  437. package/fjs/types/btree/find/proof.f.mjs +121 -0
  438. package/fjs/types/btree/find/types.d.ts +22 -0
  439. package/fjs/types/btree/find/types.js +6 -0
  440. package/fjs/types/btree/module.f.d.mts +10 -0
  441. package/fjs/types/btree/module.f.mjs +39 -0
  442. package/fjs/types/btree/proof.f.d.mts +14 -0
  443. package/fjs/types/btree/proof.f.mjs +85 -0
  444. package/fjs/types/btree/remove/module.f.d.mts +21 -0
  445. package/fjs/types/btree/remove/module.f.mjs +187 -0
  446. package/fjs/types/btree/remove/proof.f.mjs +472 -0
  447. package/fjs/types/btree/set/module.f.d.mts +5 -0
  448. package/fjs/types/btree/set/module.f.mjs +117 -0
  449. package/fjs/types/btree/set/proof.f.mjs +427 -0
  450. package/fjs/types/btree/types/module.f.d.mts +19 -0
  451. package/fjs/types/btree/types/module.f.mjs +19 -0
  452. package/fjs/types/btree/types/types.d.ts +14 -0
  453. package/fjs/types/btree/types/types.js +6 -0
  454. package/fjs/types/byte_set/module.f.d.mts +26 -0
  455. package/fjs/types/byte_set/module.f.mjs +66 -0
  456. package/fjs/types/byte_set/proof.f.d.mts +12 -0
  457. package/fjs/types/byte_set/proof.f.mjs +84 -0
  458. package/fjs/types/byte_set/types.d.ts +6 -0
  459. package/fjs/types/byte_set/types.js +6 -0
  460. package/fjs/types/function/compare/module.f.d.mts +44 -0
  461. package/fjs/types/function/compare/module.f.mjs +71 -0
  462. package/fjs/types/function/compare/proof.f.mjs +50 -0
  463. package/fjs/types/function/compare/types.d.ts +22 -0
  464. package/fjs/types/function/compare/types.js +6 -0
  465. package/fjs/types/function/module.f.d.mts +26 -0
  466. package/fjs/types/function/module.f.mjs +32 -0
  467. package/fjs/types/function/operator/module.f.d.mts +37 -0
  468. package/fjs/types/function/operator/module.f.mjs +55 -0
  469. package/fjs/types/function/operator/proof.f.mjs +76 -0
  470. package/fjs/types/function/operator/types.d.ts +39 -0
  471. package/fjs/types/function/operator/types.js +6 -0
  472. package/fjs/types/function/proof.f.mjs +16 -0
  473. package/fjs/types/function/types.d.ts +16 -0
  474. package/fjs/types/function/types.js +6 -0
  475. package/fjs/types/list/module.f.d.mts +88 -0
  476. package/fjs/types/list/module.f.mjs +309 -0
  477. package/fjs/types/list/proof.f.d.mts +32 -0
  478. package/fjs/types/list/proof.f.mjs +363 -0
  479. package/fjs/types/list/types.d.ts +36 -0
  480. package/fjs/types/list/types.js +6 -0
  481. package/fjs/types/map/module.f.d.mts +13 -0
  482. package/fjs/types/map/module.f.mjs +42 -0
  483. package/fjs/types/map/proof.f.mjs +25 -0
  484. package/fjs/types/nibble_set/module.f.d.mts +30 -0
  485. package/fjs/types/nibble_set/module.f.mjs +43 -0
  486. package/fjs/types/nibble_set/proof.f.mjs +59 -0
  487. package/fjs/types/nibble_set/types.d.ts +9 -0
  488. package/fjs/types/nibble_set/types.js +6 -0
  489. package/fjs/types/nominal/module.f.d.mts +9 -0
  490. package/fjs/types/nominal/module.f.mjs +16 -0
  491. package/fjs/types/nominal/proof.f.d.mts +7 -0
  492. package/fjs/types/nominal/proof.f.mjs +79 -0
  493. package/fjs/types/nominal/types.d.ts +25 -0
  494. package/fjs/types/nominal/types.js +6 -0
  495. package/fjs/types/nullable/module.f.d.mts +38 -0
  496. package/fjs/types/nullable/module.f.mjs +53 -0
  497. package/fjs/types/nullable/proof.f.mjs +34 -0
  498. package/fjs/types/nullable/types.d.ts +6 -0
  499. package/fjs/types/nullable/types.js +6 -0
  500. package/fjs/types/number/module.f.d.mts +23 -0
  501. package/fjs/types/number/module.f.mjs +55 -0
  502. package/fjs/types/number/proof.f.mjs +204 -0
  503. package/fjs/types/object/module.f.d.mts +33 -0
  504. package/fjs/types/object/module.f.mjs +58 -0
  505. package/fjs/types/object/proof.f.d.mts +25 -0
  506. package/fjs/types/object/proof.f.mjs +26 -0
  507. package/fjs/types/object/types.d.ts +50 -0
  508. package/fjs/types/object/types.js +8 -0
  509. package/fjs/types/ordered_map/module.f.d.mts +21 -0
  510. package/fjs/types/ordered_map/module.f.mjs +54 -0
  511. package/fjs/types/ordered_map/proof.f.mjs +88 -0
  512. package/fjs/types/ordered_map/types.d.ts +8 -0
  513. package/fjs/types/ordered_map/types.js +6 -0
  514. package/fjs/types/patricia_trie/module.f.d.mts +19 -0
  515. package/fjs/types/patricia_trie/module.f.mjs +43 -0
  516. package/fjs/types/patricia_trie/proof.f.d.mts +14 -0
  517. package/fjs/types/patricia_trie/proof.f.mjs +148 -0
  518. package/fjs/types/patricia_trie/types.d.ts +34 -0
  519. package/fjs/types/patricia_trie/types.js +6 -0
  520. package/fjs/types/prime_field/module.f.d.mts +42 -0
  521. package/fjs/types/prime_field/module.f.mjs +136 -0
  522. package/fjs/types/prime_field/proof.f.mjs +131 -0
  523. package/fjs/types/prime_field/types.d.ts +38 -0
  524. package/fjs/types/prime_field/types.js +6 -0
  525. package/fjs/types/range/module.f.d.mts +11 -0
  526. package/fjs/types/range/module.f.mjs +13 -0
  527. package/fjs/types/range/proof.f.mjs +10 -0
  528. package/fjs/types/range/types.d.ts +6 -0
  529. package/fjs/types/range/types.js +6 -0
  530. package/fjs/types/range_map/module.f.d.mts +72 -0
  531. package/fjs/types/range_map/module.f.mjs +130 -0
  532. package/fjs/types/range_map/proof.f.d.mts +7 -0
  533. package/fjs/types/range_map/proof.f.mjs +186 -0
  534. package/fjs/types/range_map/types.d.ts +56 -0
  535. package/fjs/types/range_map/types.js +6 -0
  536. package/fjs/types/range_set/module.f.d.mts +5 -0
  537. package/fjs/types/range_set/module.f.mjs +19 -0
  538. package/fjs/types/range_set/proof.f.mjs +26 -0
  539. package/fjs/types/result/module.d.mts +5 -0
  540. package/fjs/types/result/module.f.d.mts +59 -0
  541. package/fjs/types/result/module.f.mjs +67 -0
  542. package/fjs/types/result/module.mjs +22 -0
  543. package/fjs/types/result/proof.f.mjs +41 -0
  544. package/fjs/types/result/types.d.ts +17 -0
  545. package/fjs/types/result/types.js +6 -0
  546. package/fjs/types/rtti/common/module.f.d.mts +86 -0
  547. package/fjs/types/rtti/common/module.f.mjs +183 -0
  548. package/fjs/types/rtti/common/proof.f.d.mts +9 -0
  549. package/fjs/types/rtti/common/proof.f.mjs +64 -0
  550. package/fjs/types/rtti/common/types.d.ts +43 -0
  551. package/fjs/types/rtti/common/types.js +1 -0
  552. package/fjs/types/rtti/module.f.d.mts +76 -0
  553. package/fjs/types/rtti/module.f.mjs +110 -0
  554. package/fjs/types/rtti/parse/module.f.d.mts +9 -0
  555. package/fjs/types/rtti/parse/module.f.mjs +196 -0
  556. package/fjs/types/rtti/parse/proof.f.d.mts +122 -0
  557. package/fjs/types/rtti/parse/proof.f.mjs +363 -0
  558. package/fjs/types/rtti/parse/types.d.ts +12 -0
  559. package/fjs/types/rtti/parse/types.js +1 -0
  560. package/fjs/types/rtti/proof.f.d.mts +8 -0
  561. package/fjs/types/rtti/proof.f.mjs +20 -0
  562. package/fjs/types/rtti/ts/module.f.d.mts +34 -0
  563. package/fjs/types/rtti/ts/module.f.mjs +64 -0
  564. package/fjs/types/rtti/ts/proof.f.mjs +88 -0
  565. package/fjs/types/rtti/ts/types.d.ts +88 -0
  566. package/fjs/types/rtti/ts/types.js +1 -0
  567. package/fjs/types/rtti/types.d.ts +43 -0
  568. package/fjs/types/rtti/types.js +1 -0
  569. package/fjs/types/rtti/validate/module.f.d.mts +6 -0
  570. package/fjs/types/rtti/validate/module.f.mjs +169 -0
  571. package/fjs/types/rtti/validate/proof.f.d.mts +125 -0
  572. package/fjs/types/rtti/validate/proof.f.mjs +437 -0
  573. package/fjs/types/rtti/validate/types.d.ts +6 -0
  574. package/fjs/types/rtti/validate/types.js +1 -0
  575. package/fjs/types/sorted_list/module.f.d.mts +43 -0
  576. package/fjs/types/sorted_list/module.f.mjs +110 -0
  577. package/fjs/types/sorted_list/proof.f.d.mts +5 -0
  578. package/fjs/types/sorted_list/proof.f.mjs +52 -0
  579. package/fjs/types/sorted_list/types.d.ts +15 -0
  580. package/fjs/types/sorted_list/types.js +6 -0
  581. package/fjs/types/sorted_set/module.f.d.mts +24 -0
  582. package/fjs/types/sorted_set/module.f.mjs +56 -0
  583. package/fjs/types/sorted_set/proof.f.d.mts +7 -0
  584. package/fjs/types/sorted_set/proof.f.mjs +77 -0
  585. package/fjs/types/sorted_set/types.d.ts +6 -0
  586. package/fjs/types/sorted_set/types.js +6 -0
  587. package/fjs/types/string/module.f.d.mts +36 -0
  588. package/fjs/types/string/module.f.mjs +58 -0
  589. package/fjs/types/string/proof.f.mjs +76 -0
  590. package/fjs/types/string_set/module.f.d.mts +37 -0
  591. package/fjs/types/string_set/module.f.mjs +53 -0
  592. package/fjs/types/string_set/proof.f.mjs +46 -0
  593. package/fjs/types/string_set/types.d.ts +7 -0
  594. package/fjs/types/string_set/types.js +6 -0
  595. package/fjs/types/ts/module.f.d.mts +20 -0
  596. package/fjs/types/ts/module.f.mjs +51 -0
  597. package/fjs/types/ts/proof.f.mjs +97 -0
  598. package/fjs/types/ts/types.d.ts +16 -0
  599. package/fjs/types/ts/types.js +8 -0
  600. package/fjs/types/uint8array/module.f.d.mts +31 -0
  601. package/fjs/types/uint8array/module.f.mjs +53 -0
  602. package/fjs/types/uint8array/proof.f.d.mts +17 -0
  603. package/fjs/types/uint8array/proof.f.mjs +73 -0
  604. package/fjs/website/module.f.d.mts +8 -0
  605. package/fjs/website/module.f.mjs +24 -0
  606. package/fjs/website/proof.f.mjs +14 -0
  607. package/package.json +12 -10
  608. package/todo/proof.f.d.mts +22 -0
  609. package/todo/proof.f.mjs +59 -0
  610. package/fjs/asn.1/module.f.d.ts +0 -62
  611. package/fjs/asn.1/module.f.js +0 -278
  612. package/fjs/asn.1/proof.f.js +0 -285
  613. package/fjs/asserts/module.f.d.ts +0 -36
  614. package/fjs/asserts/module.f.js +0 -39
  615. package/fjs/asserts/proof.f.js +0 -18
  616. package/fjs/base_n/module.f.d.ts +0 -45
  617. package/fjs/base_n/module.f.js +0 -72
  618. package/fjs/base_n/proof.f.js +0 -73
  619. package/fjs/basen/base128/module.f.d.ts +0 -20
  620. package/fjs/basen/base128/module.f.js +0 -43
  621. package/fjs/basen/base128/proof.f.js +0 -26
  622. package/fjs/basen/base64/module.f.d.ts +0 -9
  623. package/fjs/basen/base64/module.f.js +0 -71
  624. package/fjs/basen/base64/proof.f.d.ts +0 -16
  625. package/fjs/basen/base64/proof.f.js +0 -139
  626. package/fjs/basen/cbase32/module.f.d.ts +0 -11
  627. package/fjs/basen/cbase32/module.f.js +0 -55
  628. package/fjs/basen/cbase32/proof.f.d.ts +0 -7
  629. package/fjs/basen/cbase32/proof.f.js +0 -62
  630. package/fjs/bnf/data/module.f.d.ts +0 -52
  631. package/fjs/bnf/data/module.f.js +0 -143
  632. package/fjs/bnf/data/proof.f.d.ts +0 -8
  633. package/fjs/bnf/data/proof.f.js +0 -169
  634. package/fjs/bnf/descent/module.f.d.ts +0 -87
  635. package/fjs/bnf/descent/module.f.js +0 -149
  636. package/fjs/bnf/descent/proof.f.d.ts +0 -7
  637. package/fjs/bnf/descent/proof.f.js +0 -368
  638. package/fjs/bnf/ll1/module.f.d.ts +0 -72
  639. package/fjs/bnf/ll1/module.f.js +0 -155
  640. package/fjs/bnf/ll1/proof.f.d.ts +0 -10
  641. package/fjs/bnf/ll1/proof.f.js +0 -375
  642. package/fjs/bnf/module.f.d.ts +0 -165
  643. package/fjs/bnf/module.f.js +0 -174
  644. package/fjs/bnf/proof.f.d.ts +0 -12
  645. package/fjs/bnf/proof.f.js +0 -69
  646. package/fjs/bnf/testlib.f.d.ts +0 -3
  647. package/fjs/bnf/testlib.f.js +0 -138
  648. package/fjs/bnf/token_symbol/module.f.d.ts +0 -38
  649. package/fjs/bnf/token_symbol/module.f.js +0 -48
  650. package/fjs/bnf/token_symbol/proof.f.js +0 -37
  651. package/fjs/cas/cli/module.f.d.ts +0 -6
  652. package/fjs/cas/cli/module.f.js +0 -53
  653. package/fjs/cas/cli/proof.f.d.ts +0 -17
  654. package/fjs/cas/cli/proof.f.js +0 -112
  655. package/fjs/cas/evo/module.f.d.ts +0 -223
  656. package/fjs/cas/evo/module.f.js +0 -455
  657. package/fjs/cas/evo/proof.f.d.ts +0 -47
  658. package/fjs/cas/evo/proof.f.js +0 -707
  659. package/fjs/cas/module.f.d.ts +0 -64
  660. package/fjs/cas/module.f.js +0 -255
  661. package/fjs/cas/proof.f.d.ts +0 -18
  662. package/fjs/cas/proof.f.js +0 -305
  663. package/fjs/ci/bun/module.f.d.ts +0 -2
  664. package/fjs/ci/bun/module.f.js +0 -15
  665. package/fjs/ci/common/module.f.d.ts +0 -88
  666. package/fjs/ci/common/module.f.js +0 -63
  667. package/fjs/ci/config/module.f.d.ts +0 -45
  668. package/fjs/ci/config/module.f.js +0 -80
  669. package/fjs/ci/deno/module.f.d.ts +0 -10
  670. package/fjs/ci/deno/module.f.js +0 -28
  671. package/fjs/ci/deno/proof.f.d.ts +0 -5
  672. package/fjs/ci/deno/proof.f.js +0 -26
  673. package/fjs/ci/module.f.d.ts +0 -13
  674. package/fjs/ci/module.f.js +0 -58
  675. package/fjs/ci/nix/module.f.d.ts +0 -61
  676. package/fjs/ci/nix/module.f.js +0 -92
  677. package/fjs/ci/nix/proof.f.d.ts +0 -23
  678. package/fjs/ci/nix/proof.f.js +0 -109
  679. package/fjs/ci/node/module.f.d.ts +0 -28
  680. package/fjs/ci/node/module.f.js +0 -92
  681. package/fjs/ci/node/proof.f.js +0 -17
  682. package/fjs/ci/proof.f.d.ts +0 -18
  683. package/fjs/ci/proof.f.js +0 -182
  684. package/fjs/ci/rust/module.f.d.ts +0 -3
  685. package/fjs/ci/rust/module.f.js +0 -75
  686. package/fjs/cli/module.f.d.ts +0 -11
  687. package/fjs/cli/module.f.js +0 -34
  688. package/fjs/cli/proof.f.d.ts +0 -14
  689. package/fjs/cli/proof.f.js +0 -111
  690. package/fjs/common/monoid/module.f.d.ts +0 -126
  691. package/fjs/common/monoid/module.f.js +0 -88
  692. package/fjs/common/monoid/proof.f.d.ts +0 -9
  693. package/fjs/common/monoid/proof.f.js +0 -48
  694. package/fjs/crypto/hmac/module.f.d.ts +0 -29
  695. package/fjs/crypto/hmac/module.f.js +0 -56
  696. package/fjs/crypto/hmac/proof.f.js +0 -32
  697. package/fjs/crypto/pow/module.f.d.ts +0 -37
  698. package/fjs/crypto/pow/module.f.js +0 -72
  699. package/fjs/crypto/pow/proof.f.js +0 -111
  700. package/fjs/crypto/secp/module.f.d.ts +0 -85
  701. package/fjs/crypto/secp/module.f.js +0 -176
  702. package/fjs/crypto/secp/proof.f.d.ts +0 -8
  703. package/fjs/crypto/secp/proof.f.js +0 -124
  704. package/fjs/crypto/sha2/module.f.d.ts +0 -102
  705. package/fjs/crypto/sha2/module.f.js +0 -266
  706. package/fjs/crypto/sha2/proof.f.d.ts +0 -31
  707. package/fjs/crypto/sha2/proof.f.js +0 -139
  708. package/fjs/crypto/sign/module.f.d.ts +0 -33
  709. package/fjs/crypto/sign/module.f.js +0 -163
  710. package/fjs/crypto/sign/proof.f.d.ts +0 -11
  711. package/fjs/crypto/sign/proof.f.js +0 -562
  712. package/fjs/crypto/vdf/module.f.d.ts +0 -21
  713. package/fjs/crypto/vdf/module.f.js +0 -57
  714. package/fjs/crypto/vdf/proof.f.js +0 -94
  715. package/fjs/dev/module.f.d.ts +0 -57
  716. package/fjs/dev/module.f.js +0 -135
  717. package/fjs/dev/package_json/module.f.d.ts +0 -16
  718. package/fjs/dev/package_json/module.f.js +0 -24
  719. package/fjs/dev/package_json/proof.f.js +0 -28
  720. package/fjs/dev/proof.f.d.ts +0 -13
  721. package/fjs/dev/proof.f.js +0 -77
  722. package/fjs/dev/update/module.f.d.ts +0 -11
  723. package/fjs/dev/update/module.f.js +0 -20
  724. package/fjs/dev/update/proof.f.d.ts +0 -7
  725. package/fjs/dev/update/proof.f.js +0 -35
  726. package/fjs/djs/ast/module.f.d.ts +0 -62
  727. package/fjs/djs/ast/module.f.js +0 -61
  728. package/fjs/djs/ast/proof.f.js +0 -49
  729. package/fjs/djs/examples/input.f.js +0 -4
  730. package/fjs/djs/examples/m.f.js +0 -1
  731. package/fjs/djs/module.f.d.ts +0 -17
  732. package/fjs/djs/module.f.js +0 -22
  733. package/fjs/djs/parser/module.f.d.ts +0 -23
  734. package/fjs/djs/parser/module.f.js +0 -410
  735. package/fjs/djs/parser/proof.f.js +0 -556
  736. package/fjs/djs/proof.f.js +0 -50
  737. package/fjs/djs/serializer/module.f.d.ts +0 -17
  738. package/fjs/djs/serializer/module.f.js +0 -173
  739. package/fjs/djs/serializer/proof.f.js +0 -133
  740. package/fjs/djs/tokenizer/module.f.d.ts +0 -24
  741. package/fjs/djs/tokenizer/module.f.js +0 -472
  742. package/fjs/djs/tokenizer/proof.f.js +0 -1211
  743. package/fjs/djs/transpiler/module.f.d.ts +0 -41
  744. package/fjs/djs/transpiler/module.f.js +0 -88
  745. package/fjs/djs/transpiler/proof.f.js +0 -67
  746. package/fjs/effects/eff/module.f.d.ts +0 -72
  747. package/fjs/effects/eff/module.f.js +0 -46
  748. package/fjs/effects/eff/proof.f.d.ts +0 -11
  749. package/fjs/effects/eff/proof.f.js +0 -58
  750. package/fjs/effects/list/module.f.d.ts +0 -37
  751. package/fjs/effects/list/module.f.js +0 -17
  752. package/fjs/effects/memory/module.f.d.ts +0 -37
  753. package/fjs/effects/memory/module.f.js +0 -24
  754. package/fjs/effects/memory/proof.f.d.ts +0 -6
  755. package/fjs/effects/memory/proof.f.js +0 -50
  756. package/fjs/effects/mock/module.f.d.ts +0 -16
  757. package/fjs/effects/mock/module.f.js +0 -20
  758. package/fjs/effects/module.d.ts +0 -2
  759. package/fjs/effects/module.f.d.ts +0 -408
  760. package/fjs/effects/module.f.js +0 -312
  761. package/fjs/effects/module.js +0 -11
  762. package/fjs/effects/node/memory/module.d.ts +0 -20
  763. package/fjs/effects/node/memory/module.js +0 -44
  764. package/fjs/effects/node/memory/proof.js +0 -29
  765. package/fjs/effects/node/module.d.ts +0 -20
  766. package/fjs/effects/node/module.f.d.ts +0 -300
  767. package/fjs/effects/node/module.f.js +0 -171
  768. package/fjs/effects/node/module.js +0 -305
  769. package/fjs/effects/node/proof.f.d.ts +0 -69
  770. package/fjs/effects/node/proof.f.js +0 -409
  771. package/fjs/effects/node/virtual/module.f.d.ts +0 -49
  772. package/fjs/effects/node/virtual/module.f.js +0 -440
  773. package/fjs/effects/node/virtual/proof.f.d.ts +0 -33
  774. package/fjs/effects/node/virtual/proof.f.js +0 -186
  775. package/fjs/effects/proof.f.d.ts +0 -56
  776. package/fjs/effects/proof.f.js +0 -200
  777. package/fjs/emergent_testing/example.f.d.ts +0 -13
  778. package/fjs/emergent_testing/example.f.js +0 -31
  779. package/fjs/emergent_testing/module.f.d.ts +0 -140
  780. package/fjs/emergent_testing/module.f.js +0 -289
  781. package/fjs/emergent_testing/proof.f.d.ts +0 -67
  782. package/fjs/emergent_testing/proof.f.js +0 -416
  783. package/fjs/fsc/bnf.f.d.ts +0 -2
  784. package/fjs/fsc/bnf.f.js +0 -42
  785. package/fjs/fsc/json.f.d.ts +0 -7
  786. package/fjs/fsc/json.f.js +0 -64
  787. package/fjs/fsc/module.f.d.ts +0 -11
  788. package/fjs/fsc/module.f.js +0 -73
  789. package/fjs/fsc/proof.f.js +0 -104
  790. package/fjs/fsm/module.f.d.ts +0 -17
  791. package/fjs/fsm/module.f.js +0 -55
  792. package/fjs/fsm/proof.f.js +0 -126
  793. package/fjs/js/tokenizer/module.f.d.ts +0 -104
  794. package/fjs/js/tokenizer/module.f.js +0 -547
  795. package/fjs/js/tokenizer/proof.f.d.ts +0 -9
  796. package/fjs/js/tokenizer/proof.f.js +0 -986
  797. package/fjs/mcp/cas/module.f.d.ts +0 -27
  798. package/fjs/mcp/cas/module.f.js +0 -232
  799. package/fjs/mcp/evo/module.f.d.ts +0 -32
  800. package/fjs/mcp/evo/module.f.js +0 -99
  801. package/fjs/mcp/evo/proof.f.d.ts +0 -12
  802. package/fjs/mcp/evo/proof.f.js +0 -147
  803. package/fjs/mcp/module.f.d.ts +0 -56
  804. package/fjs/mcp/module.f.js +0 -69
  805. package/fjs/mcp/proof.f.d.ts +0 -45
  806. package/fjs/mcp/proof.f.js +0 -535
  807. package/fjs/media/html/module.f.d.ts +0 -52
  808. package/fjs/media/html/module.f.js +0 -117
  809. package/fjs/media/html/proof.f.js +0 -65
  810. package/fjs/media/json/module.f.d.ts +0 -64
  811. package/fjs/media/json/module.f.js +0 -109
  812. package/fjs/media/json/parser/module.f.d.ts +0 -21
  813. package/fjs/media/json/parser/module.f.js +0 -194
  814. package/fjs/media/json/parser/proof.f.d.ts +0 -5
  815. package/fjs/media/json/parser/proof.f.js +0 -314
  816. package/fjs/media/json/proof.f.js +0 -98
  817. package/fjs/media/json/schema/module.f.d.ts +0 -78
  818. package/fjs/media/json/schema/module.f.js +0 -96
  819. package/fjs/media/json/schema/proof.f.d.ts +0 -36
  820. package/fjs/media/json/schema/proof.f.js +0 -83
  821. package/fjs/media/json/serializer/module.f.d.ts +0 -28
  822. package/fjs/media/json/serializer/module.f.js +0 -73
  823. package/fjs/media/json/serializer/proof.f.js +0 -94
  824. package/fjs/media/json/tokenizer/module.f.d.ts +0 -15
  825. package/fjs/media/json/tokenizer/module.f.js +0 -63
  826. package/fjs/media/json/tokenizer/proof.f.d.ts +0 -5
  827. package/fjs/media/json/tokenizer/proof.f.js +0 -417
  828. package/fjs/media/module.f.d.ts +0 -119
  829. package/fjs/media/module.f.js +0 -88
  830. package/fjs/media/nix/module.f.d.ts +0 -30
  831. package/fjs/media/nix/module.f.js +0 -166
  832. package/fjs/media/nix/proof.f.js +0 -127
  833. package/fjs/media/proof.f.d.ts +0 -19
  834. package/fjs/media/proof.f.js +0 -127
  835. package/fjs/media/revision/module.f.d.ts +0 -94
  836. package/fjs/media/revision/module.f.js +0 -143
  837. package/fjs/media/revision/proof.f.js +0 -190
  838. package/fjs/media/type/module.f.d.ts +0 -135
  839. package/fjs/media/type/module.f.js +0 -231
  840. package/fjs/media/type/proof.f.js +0 -213
  841. package/fjs/module.f.d.ts +0 -2
  842. package/fjs/module.f.js +0 -50
  843. package/fjs/module.js +0 -4
  844. package/fjs/path/module.f.d.ts +0 -46
  845. package/fjs/path/module.f.js +0 -71
  846. package/fjs/path/proof.f.js +0 -119
  847. package/fjs/proof.f.js +0 -38
  848. package/fjs/protocol/json_rpc/module.f.d.ts +0 -114
  849. package/fjs/protocol/json_rpc/module.f.js +0 -89
  850. package/fjs/protocol/json_rpc/proof.f.js +0 -68
  851. package/fjs/protocol/mcp/module.f.d.ts +0 -239
  852. package/fjs/protocol/mcp/module.f.js +0 -272
  853. package/fjs/protocol/mcp/proof.f.d.ts +0 -34
  854. package/fjs/protocol/mcp/proof.f.js +0 -208
  855. package/fjs/protocol/mcp/stdio/module.f.d.ts +0 -47
  856. package/fjs/protocol/mcp/stdio/module.f.js +0 -78
  857. package/fjs/protocol/mcp/stdio/proof.f.d.ts +0 -13
  858. package/fjs/protocol/mcp/stdio/proof.f.js +0 -143
  859. package/fjs/sul/id/module.f.d.ts +0 -33
  860. package/fjs/sul/id/module.f.js +0 -93
  861. package/fjs/sul/id/proof.f.js +0 -61
  862. package/fjs/sul/level/hash/module.f.d.ts +0 -38
  863. package/fjs/sul/level/hash/module.f.js +0 -43
  864. package/fjs/sul/level/hash/proof.f.d.ts +0 -13
  865. package/fjs/sul/level/hash/proof.f.js +0 -112
  866. package/fjs/sul/level/literal/module.f.d.ts +0 -64
  867. package/fjs/sul/level/literal/module.f.js +0 -88
  868. package/fjs/sul/level/literal/proof.f.js +0 -714
  869. package/fjs/sul/module.f.d.ts +0 -23
  870. package/fjs/sul/module.f.js +0 -46
  871. package/fjs/sul/proof.f.d.ts +0 -9
  872. package/fjs/sul/proof.f.js +0 -47
  873. package/fjs/text/ascii/module.f.d.ts +0 -136
  874. package/fjs/text/ascii/module.f.js +0 -154
  875. package/fjs/text/ascii/proof.f.js +0 -14
  876. package/fjs/text/code_point/module.f.d.ts +0 -65
  877. package/fjs/text/code_point/module.f.js +0 -103
  878. package/fjs/text/code_point/proof.f.js +0 -72
  879. package/fjs/text/module.f.d.ts +0 -40
  880. package/fjs/text/module.f.js +0 -43
  881. package/fjs/text/proof.f.js +0 -44
  882. package/fjs/text/sgr/module.f.d.ts +0 -53
  883. package/fjs/text/sgr/module.f.js +0 -63
  884. package/fjs/text/sgr/proof.f.js +0 -33
  885. package/fjs/text/utf16/module.f.d.ts +0 -161
  886. package/fjs/text/utf16/module.f.js +0 -311
  887. package/fjs/text/utf16/proof.f.d.ts +0 -10
  888. package/fjs/text/utf16/proof.f.js +0 -144
  889. package/fjs/text/utf8/module.f.d.ts +0 -83
  890. package/fjs/text/utf8/module.f.js +0 -247
  891. package/fjs/text/utf8/proof.f.js +0 -217
  892. package/fjs/types/array/module.f.d.ts +0 -49
  893. package/fjs/types/array/module.f.js +0 -42
  894. package/fjs/types/array/proof.f.js +0 -92
  895. package/fjs/types/bigfloat/module.f.d.ts +0 -6
  896. package/fjs/types/bigfloat/module.f.js +0 -69
  897. package/fjs/types/bigfloat/proof.f.js +0 -217
  898. package/fjs/types/bigint/module.f.d.ts +0 -172
  899. package/fjs/types/bigint/module.f.js +0 -251
  900. package/fjs/types/bigint/proof.f.d.ts +0 -37
  901. package/fjs/types/bigint/proof.f.js +0 -400
  902. package/fjs/types/bit_vec/module.f.d.ts +0 -302
  903. package/fjs/types/bit_vec/module.f.js +0 -375
  904. package/fjs/types/bit_vec/proof.f.js +0 -465
  905. package/fjs/types/btree/find/module.f.d.ts +0 -25
  906. package/fjs/types/btree/find/module.f.js +0 -80
  907. package/fjs/types/btree/find/proof.f.d.ts +0 -3
  908. package/fjs/types/btree/find/proof.f.js +0 -108
  909. package/fjs/types/btree/module.f.d.ts +0 -9
  910. package/fjs/types/btree/module.f.js +0 -33
  911. package/fjs/types/btree/proof.f.d.ts +0 -13
  912. package/fjs/types/btree/proof.f.js +0 -64
  913. package/fjs/types/btree/remove/module.f.d.ts +0 -14
  914. package/fjs/types/btree/remove/module.f.js +0 -186
  915. package/fjs/types/btree/remove/proof.f.js +0 -484
  916. package/fjs/types/btree/set/module.f.d.ts +0 -8
  917. package/fjs/types/btree/set/module.f.js +0 -128
  918. package/fjs/types/btree/set/proof.f.js +0 -368
  919. package/fjs/types/btree/types/module.f.d.ts +0 -23
  920. package/fjs/types/btree/types/module.f.js +0 -9
  921. package/fjs/types/byte_set/module.f.d.ts +0 -16
  922. package/fjs/types/byte_set/module.f.js +0 -30
  923. package/fjs/types/byte_set/proof.f.d.ts +0 -11
  924. package/fjs/types/byte_set/proof.f.js +0 -79
  925. package/fjs/types/function/compare/module.f.d.ts +0 -49
  926. package/fjs/types/function/compare/module.f.js +0 -51
  927. package/fjs/types/function/compare/proof.f.js +0 -47
  928. package/fjs/types/function/module.f.d.ts +0 -28
  929. package/fjs/types/function/module.f.js +0 -19
  930. package/fjs/types/function/operator/module.f.d.ts +0 -48
  931. package/fjs/types/function/operator/module.f.js +0 -16
  932. package/fjs/types/function/operator/proof.f.js +0 -53
  933. package/fjs/types/function/proof.f.js +0 -10
  934. package/fjs/types/list/module.f.d.ts +0 -75
  935. package/fjs/types/list/module.f.js +0 -190
  936. package/fjs/types/list/proof.f.d.ts +0 -31
  937. package/fjs/types/list/proof.f.js +0 -330
  938. package/fjs/types/map/module.f.d.ts +0 -2
  939. package/fjs/types/map/module.f.js +0 -22
  940. package/fjs/types/map/proof.f.js +0 -22
  941. package/fjs/types/nibble_set/module.f.d.ts +0 -27
  942. package/fjs/types/nibble_set/module.f.js +0 -25
  943. package/fjs/types/nibble_set/proof.f.js +0 -60
  944. package/fjs/types/nominal/module.f.d.ts +0 -22
  945. package/fjs/types/nominal/module.f.js +0 -13
  946. package/fjs/types/nominal/proof.f.d.ts +0 -4
  947. package/fjs/types/nominal/proof.f.js +0 -48
  948. package/fjs/types/nullable/module.f.d.ts +0 -21
  949. package/fjs/types/nullable/module.f.js +0 -29
  950. package/fjs/types/nullable/proof.f.js +0 -29
  951. package/fjs/types/number/module.f.d.ts +0 -16
  952. package/fjs/types/number/module.f.js +0 -30
  953. package/fjs/types/number/proof.f.js +0 -124
  954. package/fjs/types/object/module.f.d.ts +0 -54
  955. package/fjs/types/object/module.f.js +0 -25
  956. package/fjs/types/object/proof.f.d.ts +0 -4
  957. package/fjs/types/object/proof.f.js +0 -14
  958. package/fjs/types/ordered_map/module.f.d.ts +0 -17
  959. package/fjs/types/ordered_map/module.f.js +0 -22
  960. package/fjs/types/ordered_map/proof.f.js +0 -73
  961. package/fjs/types/patricia_trie/module.f.d.ts +0 -25
  962. package/fjs/types/patricia_trie/module.f.js +0 -35
  963. package/fjs/types/patricia_trie/proof.f.d.ts +0 -13
  964. package/fjs/types/patricia_trie/proof.f.js +0 -121
  965. package/fjs/types/prime_field/module.f.d.ts +0 -62
  966. package/fjs/types/prime_field/module.f.js +0 -112
  967. package/fjs/types/prime_field/proof.f.js +0 -128
  968. package/fjs/types/range/module.f.d.ts +0 -8
  969. package/fjs/types/range/module.f.js +0 -2
  970. package/fjs/types/range/proof.f.js +0 -9
  971. package/fjs/types/range_map/module.f.d.ts +0 -92
  972. package/fjs/types/range_map/module.f.js +0 -82
  973. package/fjs/types/range_map/proof.f.d.ts +0 -6
  974. package/fjs/types/range_map/proof.f.js +0 -151
  975. package/fjs/types/range_set/module.f.d.ts +0 -5
  976. package/fjs/types/range_set/module.f.js +0 -16
  977. package/fjs/types/range_set/proof.f.d.ts +0 -1
  978. package/fjs/types/range_set/proof.f.js +0 -19
  979. package/fjs/types/result/module.d.ts +0 -3
  980. package/fjs/types/result/module.f.d.ts +0 -61
  981. package/fjs/types/result/module.f.js +0 -54
  982. package/fjs/types/result/module.js +0 -19
  983. package/fjs/types/result/proof.f.js +0 -31
  984. package/fjs/types/rtti/common/module.f.d.ts +0 -121
  985. package/fjs/types/rtti/common/module.f.js +0 -94
  986. package/fjs/types/rtti/common/proof.f.d.ts +0 -8
  987. package/fjs/types/rtti/common/proof.f.js +0 -51
  988. package/fjs/types/rtti/module.f.d.ts +0 -75
  989. package/fjs/types/rtti/module.f.js +0 -34
  990. package/fjs/types/rtti/parse/module.f.d.ts +0 -36
  991. package/fjs/types/rtti/parse/module.f.js +0 -114
  992. package/fjs/types/rtti/parse/proof.f.d.ts +0 -115
  993. package/fjs/types/rtti/parse/proof.f.js +0 -334
  994. package/fjs/types/rtti/proof.f.d.ts +0 -5
  995. package/fjs/types/rtti/proof.f.js +0 -16
  996. package/fjs/types/rtti/ts/module.f.d.ts +0 -118
  997. package/fjs/types/rtti/ts/module.f.js +0 -59
  998. package/fjs/types/rtti/ts/proof.f.js +0 -75
  999. package/fjs/types/rtti/validate/module.f.d.ts +0 -4
  1000. package/fjs/types/rtti/validate/module.f.js +0 -74
  1001. package/fjs/types/rtti/validate/proof.f.d.ts +0 -118
  1002. package/fjs/types/rtti/validate/proof.f.js +0 -349
  1003. package/fjs/types/sorted_list/module.f.d.ts +0 -26
  1004. package/fjs/types/sorted_list/module.f.js +0 -51
  1005. package/fjs/types/sorted_list/proof.f.d.ts +0 -4
  1006. package/fjs/types/sorted_list/proof.f.js +0 -46
  1007. package/fjs/types/sorted_set/module.f.d.ts +0 -33
  1008. package/fjs/types/sorted_set/module.f.js +0 -5
  1009. package/fjs/types/sorted_set/proof.f.d.ts +0 -6
  1010. package/fjs/types/sorted_set/proof.f.js +0 -67
  1011. package/fjs/types/string/module.f.d.ts +0 -24
  1012. package/fjs/types/string/module.f.js +0 -35
  1013. package/fjs/types/string/proof.f.js +0 -77
  1014. package/fjs/types/string_set/module.f.d.ts +0 -30
  1015. package/fjs/types/string_set/module.f.js +0 -37
  1016. package/fjs/types/string_set/proof.f.js +0 -43
  1017. package/fjs/types/ts/module.f.d.ts +0 -23
  1018. package/fjs/types/ts/module.f.js +0 -27
  1019. package/fjs/types/ts/proof.f.js +0 -86
  1020. package/fjs/types/uint8array/module.f.d.ts +0 -13
  1021. package/fjs/types/uint8array/module.f.js +0 -34
  1022. package/fjs/types/uint8array/proof.f.d.ts +0 -17
  1023. package/fjs/types/uint8array/proof.f.js +0 -64
  1024. package/fjs/website/module.f.d.ts +0 -3
  1025. package/fjs/website/module.f.js +0 -14
  1026. package/fjs/website/proof.f.js +0 -13
  1027. package/nanvm-lib/tests/proof.f.d.ts +0 -122
  1028. package/nanvm-lib/tests/proof.f.js +0 -330
  1029. package/todo/031-json.f.js +0 -241
  1030. package/todo/proof.f.d.ts +0 -20
  1031. package/todo/proof.f.js +0 -62
  1032. /package/fjs/asn.1/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1033. /package/fjs/asserts/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1034. /package/fjs/{base_n/proof.f.d.ts → basen/proof.f.d.mts} +0 -0
  1035. /package/fjs/bnf/token_symbol/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1036. /package/{todo/031-json.f.d.ts → fjs/ci/common/types.js} +0 -0
  1037. /package/fjs/ci/node/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1038. /package/fjs/crypto/hmac/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1039. /package/fjs/crypto/pow/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1040. /package/fjs/crypto/vdf/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1041. /package/fjs/dev/package_json/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1042. /package/fjs/djs/ast/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1043. /package/fjs/djs/examples/{input.f.d.ts → input.f.d.mts} +0 -0
  1044. /package/fjs/djs/examples/{m.f.d.ts → m.f.d.mts} +0 -0
  1045. /package/fjs/djs/parser/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1046. /package/fjs/djs/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1047. /package/fjs/djs/serializer/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1048. /package/fjs/djs/tokenizer/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1049. /package/fjs/djs/transpiler/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1050. /package/fjs/effects/node/memory/{proof.d.ts → proof.d.mts} +0 -0
  1051. /package/fjs/fsc/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1052. /package/fjs/fsm/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1053. /package/fjs/media/html/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1054. /package/fjs/media/json/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1055. /package/fjs/media/json/serializer/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1056. /package/fjs/media/nix/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1057. /package/fjs/media/revision/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1058. /package/fjs/media/type/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1059. /package/fjs/{module.d.ts → module.d.mts} +0 -0
  1060. /package/fjs/path/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1061. /package/fjs/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1062. /package/fjs/protocol/json_rpc/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1063. /package/fjs/sul/id/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1064. /package/fjs/sul/level/literal/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1065. /package/fjs/text/ascii/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1066. /package/fjs/text/code_point/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1067. /package/fjs/text/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1068. /package/fjs/text/sgr/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1069. /package/fjs/text/utf8/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1070. /package/fjs/types/array/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1071. /package/fjs/types/bigfloat/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1072. /package/fjs/types/bit_vec/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1073. /package/fjs/types/btree/remove/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1074. /package/fjs/types/btree/set/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1075. /package/fjs/{basen/base128/proof.f.d.ts → types/function/compare/proof.f.d.mts} +0 -0
  1076. /package/fjs/types/function/operator/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1077. /package/fjs/types/function/{compare/proof.f.d.ts → proof.f.d.mts} +0 -0
  1078. /package/fjs/types/map/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1079. /package/fjs/types/nibble_set/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1080. /package/fjs/types/nullable/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1081. /package/fjs/types/number/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1082. /package/fjs/types/option/{module.f.d.ts → types.d.ts} +0 -0
  1083. /package/fjs/types/option/{module.f.js → types.js} +0 -0
  1084. /package/fjs/types/ordered_map/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1085. /package/fjs/types/phantom/{module.f.d.ts → types.d.ts} +0 -0
  1086. /package/fjs/types/phantom/{module.f.js → types.js} +0 -0
  1087. /package/fjs/types/prime_field/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1088. /package/fjs/types/{function/proof.f.d.ts → range/proof.f.d.mts} +0 -0
  1089. /package/fjs/types/{range/proof.f.d.ts → range_set/proof.f.d.mts} +0 -0
  1090. /package/fjs/types/result/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1091. /package/fjs/types/rtti/ts/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1092. /package/fjs/types/string/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1093. /package/fjs/types/string_set/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1094. /package/fjs/types/ts/{proof.f.d.ts → proof.f.d.mts} +0 -0
  1095. /package/fjs/website/{proof.f.d.ts → proof.f.d.mts} +0 -0
@@ -0,0 +1,228 @@
1
+ /** @import { Object as JsonObject } from '../json/types.ts' */
2
+ /** @import { LockMap } from './types.ts' */
3
+ import { assert, assertEq } from '../../asserts/module.f.mjs'
4
+ import { dialect, mediaType, isHash, validate, decodeText, encodeText } from './module.f.mjs'
5
+
6
+ // Valid cbase32 hashes (round-tripped in fjs/basen/cbase32/proof.f.mjs): single
7
+ // cbase32 symbols, cheap to write inline here.
8
+ const h1 = '8'
9
+ const h2 = 'r'
10
+ // `I` is accepted as an alias spelling of canonical cBase32 `1`.
11
+ const alias = /** @type {const} */ ('I')
12
+
13
+ /** @type {LockMap} */
14
+ const _lockMapAllowsMissingSubjects = {}
15
+
16
+ // A shape-valid revision: every required field present (`snapshot` and
17
+ // `generation` included), with `extra` overriding or adding fields per test.
18
+ /** @type {(extra: JsonObject) => JsonObject} */
19
+ const revisionOf = extra => ({
20
+ dialect,
21
+ subject: h1,
22
+ parents: [],
23
+ snapshot: h2,
24
+ generation: 0,
25
+ ...extra,
26
+ })
27
+
28
+ export const proof = {
29
+ dialectAndMediaType: () => {
30
+ assertEq(dialect, 'vnd.fjs.revision')
31
+ assertEq(mediaType, 'application/vnd.fjs.revision+json')
32
+ },
33
+
34
+ isHash: {
35
+ validHash: () => assert(isHash(h1)),
36
+ httpsRejected: () => assert(!isHash('https://example.com/blob/abc')),
37
+ arbitraryStringRejected: () => assert(!isHash('not-a-hash!')),
38
+ },
39
+
40
+ validate: {
41
+ // A fully explicit revision validates.
42
+ allFieldsPresent: () => {
43
+ const [t] = validate(revisionOf({}))
44
+ assertEq(t, 'ok')
45
+ },
46
+
47
+ // `subject` is a pure identity string, never a snapshot reference: a
48
+ // zero-parent revision whose `subject` is not a hash is now valid,
49
+ // because `snapshot` is always stated explicitly.
50
+ nonHashSubjectAccepted: () => {
51
+ const r = validate(revisionOf({ subject: 'my-config' }))
52
+ assert(r[0] === 'ok', ['expected ok', r])
53
+ assertEq(r[1].subject, 'my-config')
54
+ },
55
+
56
+ // A merge revision (more than one parent) is valid like any other —
57
+ // there is no "multiple parents without snapshot" case left, because
58
+ // `snapshot` is required.
59
+ multiParentAccepted: () => {
60
+ const r = validate(revisionOf({ subject: 'my-config', parents: [h1, h2], snapshot: h2 }))
61
+ assert(r[0] === 'ok', ['expected ok', r])
62
+ assertEq(r[1].snapshot, h2)
63
+ },
64
+
65
+ // `snapshot` is required: absent is a shape error.
66
+ missingSnapshotRejected: () => {
67
+ const [t] = validate({ dialect, subject: h1, parents: [], generation: 0 })
68
+ assertEq(t, 'error')
69
+ },
70
+
71
+ // `snapshot` must decode as a hash — `https://` bridge URLs rejected.
72
+ nonHashSnapshotRejected: () => {
73
+ const [t] = validate(revisionOf({ snapshot: 'https://example.com/x' }))
74
+ assertEq(t, 'error')
75
+ },
76
+
77
+ // `generation` is required: absent is a shape error.
78
+ missingGenerationRejected: () => {
79
+ const [t] = validate({ dialect, subject: h1, parents: [], snapshot: h2 })
80
+ assertEq(t, 'error')
81
+ },
82
+
83
+ // `generation` must be an integer: a fractional value is rejected.
84
+ nonIntegerGenerationRejected: () => {
85
+ const [t] = validate(revisionOf({ generation: 1.5 }))
86
+ assertEq(t, 'error')
87
+ },
88
+
89
+ // `generation` must be non-negative.
90
+ negativeGenerationRejected: () => {
91
+ const [t] = validate(revisionOf({ generation: -1 }))
92
+ assertEq(t, 'error')
93
+ },
94
+
95
+ // `generation` must be a *safe* integer: at `2 ** 53` and above the
96
+ // value is no longer uniquely representable, so `1 + max(...)` could
97
+ // fail to advance — such a blob is rejected (`Number.isInteger` would
98
+ // accept it; `Number.isSafeInteger` does not).
99
+ unsafeIntegerGenerationRejected: () => {
100
+ const [t] = validate(revisionOf({ generation: 2 ** 53 }))
101
+ assertEq(t, 'error')
102
+ },
103
+
104
+ // A positive integer generation is accepted.
105
+ positiveGenerationAccepted: () => {
106
+ const r = validate(revisionOf({ parents: [h1], generation: 3 }))
107
+ assert(r[0] === 'ok', ['expected ok', r])
108
+ assertEq(r[1].generation, 3)
109
+ },
110
+
111
+ // `https://` bridge URLs are rejected wherever a hash is required.
112
+ httpsRejectedInParents: () => {
113
+ const [t] = validate(revisionOf({ parents: ['https://example.com/x'] }))
114
+ assertEq(t, 'error')
115
+ },
116
+
117
+ // `archived` follows the presence-only `option(true)` idiom.
118
+ archivedAccepted: () => {
119
+ const [t] = validate(revisionOf({ archived: true }))
120
+ assertEq(t, 'ok')
121
+ },
122
+
123
+ lockAbsentAccepted: () => {
124
+ const r = validate(revisionOf({}))
125
+ assert(r[0] === 'ok', ['expected ok', r])
126
+ assertEq(r[1].lock, undefined)
127
+ },
128
+
129
+ emptyLockAccepted: () => {
130
+ const r = validate(revisionOf({ lock: {} }))
131
+ assert(r[0] === 'ok', ['expected ok', r])
132
+ assertEq(Object.keys(r[1].lock ?? {}).length, 0)
133
+ },
134
+
135
+ validLockAccepted: () => {
136
+ const [t] = validate(revisionOf({ lock: { dependency: h1 } }))
137
+ assertEq(t, 'ok')
138
+ },
139
+
140
+ malformedLockRejected: () => {
141
+ const [t] = validate(revisionOf({ lock: { dependency: 1 } }))
142
+ assertEq(t, 'error')
143
+ },
144
+
145
+ invalidHashLockRejected: () => {
146
+ const [t] = validate(revisionOf({ lock: { dependency: 'https://example.com/x' } }))
147
+ assertEq(t, 'error')
148
+ },
149
+
150
+ aliasHashLockAccepted: () => {
151
+ const [t] = validate(revisionOf({ lock: { dependency: alias } }))
152
+ assertEq(t, 'ok')
153
+ },
154
+
155
+ // Wrong dialect tag: structural validation rejects it outright.
156
+ wrongDialectRejected: () => {
157
+ const [t] = validate({ dialect: 'vnd.fjs.other', subject: h1, parents: [], snapshot: h2, generation: 0 })
158
+ assertEq(t, 'error')
159
+ },
160
+
161
+ // Missing required fields: rejected.
162
+ missingSubjectRejected: () => {
163
+ const [t] = validate({ dialect, parents: [], snapshot: h2, generation: 0 })
164
+ assertEq(t, 'error')
165
+ },
166
+
167
+ // rtti structs are open: extra fields don't break validation — the
168
+ // additive forward-compatibility path the versioning rule relies on.
169
+ extraFieldsAccepted: () => {
170
+ const [t] = validate(revisionOf({ future: 'field' }))
171
+ assertEq(t, 'ok')
172
+ },
173
+ },
174
+
175
+ decodeText: {
176
+ validJson: () => {
177
+ const r = decodeText(JSON.stringify(revisionOf({})))
178
+ assert(r[0] === 'ok', ['expected ok', r])
179
+ assertEq(r[1].subject, h1)
180
+ },
181
+
182
+ // Key order carries no meaning: detection parses the JSON and
183
+ // validates the parsed value, so `dialect` need not be first.
184
+ keyOrderIndependent: () => {
185
+ const text = `{"generation":0,"snapshot":"${h2}","parents":[],"subject":"${h1}","dialect":"${dialect}"}`
186
+ const [t] = decodeText(text)
187
+ assertEq(t, 'ok')
188
+ },
189
+
190
+ malformedJsonRejected: () => {
191
+ const [t] = decodeText('{not json')
192
+ assertEq(t, 'error')
193
+ },
194
+
195
+ // Ordinary JSON that isn't a revision at all falls through as an error
196
+ // here — `fjs/media`'s composed detector is what falls back to the
197
+ // ordinary detector; this module only reports validity.
198
+ ordinaryJsonRejected: () => {
199
+ const [t] = decodeText('{"hello":"world"}')
200
+ assertEq(t, 'error')
201
+ },
202
+ },
203
+ encodeText: {
204
+ recursivelySortsObjectsLexicographically: () => {
205
+ const revision = revisionOf({ lock: { '2': h2, '10': h1 } })
206
+ const decoded = validate(revision)
207
+ assert(decoded[0] === 'ok', ['expected ok', decoded])
208
+ assertEq(
209
+ encodeText(decoded[1]),
210
+ `{"dialect":"${dialect}","generation":0,"lock":{"10":"${h1}","2":"${h2}"},"parents":[],"snapshot":"${h2}","subject":"${h1}"}`,
211
+ )
212
+ },
213
+ preservesArrayOrder: () => {
214
+ const decoded = validate(revisionOf({ parents: [h2, h1] }))
215
+ assert(decoded[0] === 'ok', ['expected ok', decoded])
216
+ assert(encodeText(decoded[1]).includes(`"parents":["${h2}","${h1}"]`))
217
+ },
218
+ parsedEquivalentSourcesConverge: () => {
219
+ const a = decodeText(` { "subject":"${h1}", "snapshot":"${h2}", "parents":[], "generation":0, "dialect":"${dialect}" } `)
220
+ const b = decodeText(`{"dialect":"${dialect}","generation":0,"parents":[],"snapshot":"${h2}","subject":"${h1}"}`)
221
+ assert(a[0] === 'ok', ['expected ok', a])
222
+ assert(b[0] === 'ok', ['expected ok', b])
223
+ assertEq(encodeText(a[1]), encodeText(b[1]))
224
+ },
225
+ },
226
+ }
227
+
228
+ void _lockMapAllowsMissingSubjects
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Type-level API for `fjs/media/revision/module.f.mjs`: `LockMap`,
3
+ * `Revision`, and `RevisionError`, derived from the module's own rtti
4
+ * schemas.
5
+ *
6
+ * @module
7
+ */
8
+ import type { Ts } from '../../types/rtti/ts/types.ts';
9
+ import type { ValidationError } from '../../types/rtti/common/types.ts';
10
+ import type { _lock, revisionSchema } from './module.f.mjs';
11
+ /** A flat set of subject-to-snapshot bindings supplied to dependency resolvers. */
12
+ export type LockMap = Ts<typeof _lock>;
13
+ /** The TypeScript type derived from `revisionSchema` — the single source of truth. */
14
+ export type Revision = Ts<typeof revisionSchema>;
15
+ /** Either a structural validation error or a semantic (hash / generation) error message. */
16
+ export type RevisionError = ValidationError | string;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Type-level API for `fjs/media/revision/module.f.mjs`: `LockMap`,
3
+ * `Revision`, and `RevisionError`, derived from the module's own rtti
4
+ * schemas.
5
+ *
6
+ * @module
7
+ */
8
+ export {};
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Rust source literals.
3
+ *
4
+ * Printing a value as Rust source is not specific to any one generator: the
5
+ * MVP roadmap's `fjs compile <input>.rs` backend and `nanvm-lib`'s generated
6
+ * operator tests both need the same escaping and the same spelling of the
7
+ * numeric edge cases. This module owns that layer — the syntax of a literal —
8
+ * and nothing above it. Expressions, items, and whatever API a generator
9
+ * targets stay with the generator.
10
+ *
11
+ * The sibling of `fjs/media/nix`, which does the same for Nix expressions.
12
+ *
13
+ * @module
14
+ *
15
+ * @example
16
+ *
17
+ * ```js
18
+ * import { f64Literal, i64Literal, stringLiteral } from './module.f.mjs'
19
+ *
20
+ * stringLiteral('a"b') // '"a\\"b"'
21
+ * f64Literal(-0) // '-0f64'
22
+ * i64Literal(-456n) // '-456'
23
+ * ```
24
+ */
25
+ /**
26
+ * A double-quoted Rust string literal.
27
+ *
28
+ * Any other control character is rejected rather than escaped: no caller needs
29
+ * one, and a silently mangled literal is worse than a failed generation.
30
+ *
31
+ * @type {(v: string) => string}
32
+ */
33
+ export declare const stringLiteral: (v: string) => string;
34
+ /**
35
+ * An `f64` literal.
36
+ *
37
+ * `toString` already prints the shortest round-tripping decimal and Rust
38
+ * parses decimal float literals the same way JavaScript does, so the digits
39
+ * carry over unchanged. Only the three non-finite values and `-0` — which
40
+ * `toString` prints as `0` — need spelling out. The `f64` suffix keeps whole
41
+ * numbers from lexing as integers.
42
+ *
43
+ * @type {(v: number) => string}
44
+ */
45
+ export declare const f64Literal: (v: number) => string;
46
+ /**
47
+ * An `i64` literal. Throws for a value the type cannot hold, rather than
48
+ * silently truncating it.
49
+ *
50
+ * @type {(v: bigint) => string}
51
+ */
52
+ export declare const i64Literal: (v: bigint) => string;
53
+ /**
54
+ * A `snake_case` Rust identifier from a `camelCase` name.
55
+ *
56
+ * Only the casing is converted: a name that is not already a valid identifier
57
+ * stays invalid, so callers pass names they control.
58
+ *
59
+ * @type {(v: string) => string}
60
+ */
61
+ export declare const snakeCase: (v: string) => string;
@@ -0,0 +1,93 @@
1
+ /**
2
+ * Rust source literals.
3
+ *
4
+ * Printing a value as Rust source is not specific to any one generator: the
5
+ * MVP roadmap's `fjs compile <input>.rs` backend and `nanvm-lib`'s generated
6
+ * operator tests both need the same escaping and the same spelling of the
7
+ * numeric edge cases. This module owns that layer — the syntax of a literal —
8
+ * and nothing above it. Expressions, items, and whatever API a generator
9
+ * targets stay with the generator.
10
+ *
11
+ * The sibling of `fjs/media/nix`, which does the same for Nix expressions.
12
+ *
13
+ * @module
14
+ *
15
+ * @example
16
+ *
17
+ * ```js
18
+ * import { f64Literal, i64Literal, stringLiteral } from './module.f.mjs'
19
+ *
20
+ * stringLiteral('a"b') // '"a\\"b"'
21
+ * f64Literal(-0) // '-0f64'
22
+ * i64Literal(-456n) // '-456'
23
+ * ```
24
+ */
25
+
26
+ /**
27
+ * A double-quoted Rust string literal.
28
+ *
29
+ * Any other control character is rejected rather than escaped: no caller needs
30
+ * one, and a silently mangled literal is worse than a failed generation.
31
+ *
32
+ * @type {(v: string) => string}
33
+ */
34
+ export const stringLiteral = v => `"${[...v].map(c => {
35
+ switch (c) {
36
+ case '\\': { return '\\\\' }
37
+ case '"': { return '\\"' }
38
+ case '\n': { return '\\n' }
39
+ case '\r': { return '\\r' }
40
+ case '\t': { return '\\t' }
41
+ default: {
42
+ if (c < ' ' || c === '\u007f') {
43
+ throw ['control character in a Rust string literal', v]
44
+ }
45
+ return c
46
+ }
47
+ }
48
+ }).join('')}"`
49
+
50
+ /**
51
+ * An `f64` literal.
52
+ *
53
+ * `toString` already prints the shortest round-tripping decimal and Rust
54
+ * parses decimal float literals the same way JavaScript does, so the digits
55
+ * carry over unchanged. Only the three non-finite values and `-0` — which
56
+ * `toString` prints as `0` — need spelling out. The `f64` suffix keeps whole
57
+ * numbers from lexing as integers.
58
+ *
59
+ * @type {(v: number) => string}
60
+ */
61
+ export const f64Literal = v => {
62
+ if (Number.isNaN(v)) { return 'f64::NAN' }
63
+ if (v === Infinity) { return 'f64::INFINITY' }
64
+ if (v === -Infinity) { return 'f64::NEG_INFINITY' }
65
+ return `${Object.is(v, -0) ? '-0' : v.toString()}f64`
66
+ }
67
+
68
+ const i64Min = -(2n ** 63n)
69
+ const i64Max = 2n ** 63n - 1n
70
+
71
+ /**
72
+ * An `i64` literal. Throws for a value the type cannot hold, rather than
73
+ * silently truncating it.
74
+ *
75
+ * @type {(v: bigint) => string}
76
+ */
77
+ export const i64Literal = v => {
78
+ if (v < i64Min || v > i64Max) { throw ['bigint out of i64 range', v] }
79
+ return v.toString()
80
+ }
81
+
82
+ /**
83
+ * A `snake_case` Rust identifier from a `camelCase` name.
84
+ *
85
+ * Only the casing is converted: a name that is not already a valid identifier
86
+ * stays invalid, so callers pass names they control.
87
+ *
88
+ * @type {(v: string) => string}
89
+ */
90
+ export const snakeCase = v => [...v].map(c => {
91
+ const lower = c.toLowerCase()
92
+ return c === lower ? c : `_${lower}`
93
+ }).join('')
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Proofs for Rust source literals.
3
+ *
4
+ * @module
5
+ */
6
+ export declare const proof: {
7
+ stringLiteral: () => void;
8
+ f64Literal: () => void;
9
+ i64Literal: () => void;
10
+ snakeCase: () => void;
11
+ throw: {
12
+ i64TooLarge: () => string;
13
+ i64TooSmall: () => string;
14
+ controlCharacter: () => string;
15
+ deleteCharacter: () => string;
16
+ };
17
+ };
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Proofs for Rust source literals.
3
+ *
4
+ * @module
5
+ */
6
+
7
+ import { assertEq } from '../../asserts/module.f.mjs'
8
+ import { f64Literal, i64Literal, snakeCase, stringLiteral } from './module.f.mjs'
9
+
10
+ export const proof = {
11
+ stringLiteral: () => {
12
+ assertEq(stringLiteral(''), '""')
13
+ assertEq(stringLiteral('abc'), '"abc"')
14
+ assertEq(stringLiteral('a\\b'), '"a\\\\b"')
15
+ assertEq(stringLiteral('a"b'), '"a\\"b"')
16
+ assertEq(stringLiteral('a\nb'), '"a\\nb"')
17
+ assertEq(stringLiteral('a\rb'), '"a\\rb"')
18
+ assertEq(stringLiteral('a\tb'), '"a\\tb"')
19
+ // Non-ASCII needs no escape: Rust source is UTF-8.
20
+ assertEq(stringLiteral('é'), '"é"')
21
+ },
22
+ f64Literal: () => {
23
+ assertEq(f64Literal(NaN), 'f64::NAN')
24
+ assertEq(f64Literal(Infinity), 'f64::INFINITY')
25
+ assertEq(f64Literal(-Infinity), 'f64::NEG_INFINITY')
26
+ assertEq(f64Literal(-0), '-0f64')
27
+ assertEq(f64Literal(0), '0f64')
28
+ assertEq(f64Literal(2.3), '2.3f64')
29
+ assertEq(f64Literal(-239), '-239f64')
30
+ // Rust's exponent accepts a `+`, which is how `toString` prints it.
31
+ assertEq(f64Literal(1e21), '1e+21f64')
32
+ },
33
+ i64Literal: () => {
34
+ assertEq(i64Literal(0n), '0')
35
+ assertEq(i64Literal(-456n), '-456')
36
+ assertEq(i64Literal(-(2n ** 63n)), '-9223372036854775808')
37
+ assertEq(i64Literal(2n ** 63n - 1n), '9223372036854775807')
38
+ },
39
+ snakeCase: () => {
40
+ assertEq(snakeCase('emptyArray'), 'empty_array')
41
+ assertEq(snakeCase('stringCoercion'), 'string_coercion')
42
+ assertEq(snakeCase('eq'), 'eq')
43
+ },
44
+ throw: {
45
+ i64TooLarge: () => i64Literal(2n ** 63n),
46
+ i64TooSmall: () => i64Literal(-(2n ** 63n) - 1n),
47
+ controlCharacter: () => stringLiteral('a\u0000b'),
48
+ deleteCharacter: () => stringLiteral('a\u007fb'),
49
+ },
50
+ }
@@ -0,0 +1,97 @@
1
+ /**
2
+ * Magic-byte MIME type detection.
3
+ *
4
+ * `detect` is a pure table lookup over the leading bytes of a `Vec`: it returns a
5
+ * MIME type string for the container formats whose signatures it knows, or `null`
6
+ * for anything else — text, unknown binary, or a `Vec` too short to match.
7
+ *
8
+ * Beside it, `detectStream` is the **streaming counterpart**: a byte-accepting
9
+ * state machine (length × magic-byte eliminator × UTF-8 validity DFA) that derives
10
+ * `{ length, mime_type, type }` by folding a CAS read stream in O(1) space, without
11
+ * ever buffering the blob into a single `maxLength`-bounded `Vec`. See the README
12
+ * for the factored design.
13
+ *
14
+ * The CAS store is type-agnostic and keeps raw bytes only, so type is never
15
+ * stored; it is recovered on read by sniffing the content. Callers decide what
16
+ * `null` means: the CAS MCP adapter falls back to a plain text result.
17
+ *
18
+ * ## Recognised signatures
19
+ *
20
+ * | MIME type | Leading bytes |
21
+ * |-------------------|----------------------------------------|
22
+ * | `image/png` | `89 50 4E 47 0D 0A 1A 0A` |
23
+ * | `image/jpeg` | `FF D8 FF` |
24
+ * | `image/gif` | `47 49 46 38 37 61` / `…39 61` (`"GIF87a"` / `"GIF89a"`) |
25
+ * | `image/webp` | `52 49 46 46 .. .. .. .. 57 45 42 50` (`"RIFF"…"WEBP"`) |
26
+ * | `application/pdf` | `25 50 44 46 2D` (`"%PDF-"`) |
27
+ * | `application/zip` | `50 4B 03 04` / `05 06` / `07 08` (`"PK"` entry, empty, or spanned) |
28
+ *
29
+ * WebP is the one signature with a gap: the four-byte little-endian file size
30
+ * sits between the `RIFF` and `WEBP` markers, so it is matched as a prefix plus
31
+ * a second marker at byte offset 8 rather than a single contiguous run.
32
+ *
33
+ * See `./types.ts` for the type-level API.
34
+ *
35
+ * @module
36
+ */
37
+ import type { Vec } from '../../types/bit_vec/types.ts';
38
+ import type { Nullable } from '../../types/nullable/types.ts';
39
+ import type { Effect, Operation } from '../../effects/types.ts';
40
+ import type { List } from '../../effects/list/types.ts';
41
+ import type { IoResult } from '../../effects/node/types.ts';
42
+ import type { DetectMeta, DetectState } from './types.ts';
43
+ /**
44
+ * Detects the MIME type of `bytes` from its leading magic-byte signature.
45
+ *
46
+ * @returns the MIME type string for a recognized format, or `null` when the
47
+ * leading bytes match no known signature (including any `Vec` shorter than
48
+ * the signature it might otherwise match).
49
+ *
50
+ * @type {(bytes: Vec) => Nullable<string>}
51
+ */
52
+ export declare const detect: (bytes: Vec) => Nullable<string>;
53
+ /** The initial detector state `q₀`.
54
+ *
55
+ * @type {DetectState}
56
+ */
57
+ export declare const detectInit: DetectState;
58
+ /**
59
+ * Folds one `Vec` chunk into the detector state (`δ` over a whole chunk). Length
60
+ * always advances by the chunk's bit length; per-byte iteration stops as soon as
61
+ * the verdict is fixed (see {@link isSettled}), so large blobs — including large
62
+ * magic-matched ones — cost ≈ length counting.
63
+ *
64
+ * @type {(s: DetectState) => (chunk: Vec) => DetectState}
65
+ */
66
+ export declare const push: (s: DetectState) => (chunk: Vec) => DetectState;
67
+ /**
68
+ * Reads the answer off the final state (`λ`). Reproduces the three-way result of
69
+ * the pure path: magic hit → `base64` + detected mime; else whole-blob-valid UTF-8
70
+ * that is also all-text (byte-aligned, no invalidity, no control bytes) → `text` +
71
+ * `text/plain`; else → `base64` + `application/octet-stream`. A valid-but-control
72
+ * blob (NUL, other controls) is well-formed UTF-8 yet falls through to the binary
73
+ * branch.
74
+ *
75
+ * @type {(s: DetectState) => DetectMeta}
76
+ */
77
+ export declare const finish: (s: DetectState) => DetectMeta;
78
+ /**
79
+ * Classifies a whole `Vec` with the same state machine as {@link detectStream}.
80
+ * The single-buffer counterpart for callers that already hold the bytes (the
81
+ * `cas_get` `content: true` path materializes the blob anyway): both paths read
82
+ * the three-way `{ length, mime_type, type }` verdict from one machine instead of
83
+ * re-deriving it from `detect` + a separate UTF-8 check.
84
+ *
85
+ * @type {(bytes: Vec) => DetectMeta}
86
+ */
87
+ export declare const detectVec: (bytes: Vec) => DetectMeta;
88
+ /**
89
+ * Folds a CAS read stream through {@link push} and reads {@link finish} at EOF,
90
+ * deriving `cas_get` metadata without ever materializing the blob. A read `error`
91
+ * item short-circuits into the `IoResult` error.
92
+ *
93
+ * @template {Operation} O
94
+ * @param {List<O, IoResult<Vec>>} stream
95
+ * @returns {Effect<O, IoResult<DetectMeta>>}
96
+ */
97
+ export declare const detectStream: <O extends Operation>(stream: List<O, IoResult<Vec>>) => Effect<O, IoResult<DetectMeta>>;