@openclaw/slack 2026.7.1-beta.2 → 2026.7.1-beta.4

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 (696) hide show
  1. package/dist/{account-inspect-DOtQbKkB.js → account-inspect-Di7ditqZ.js} +1 -1
  2. package/dist/account-inspect-api.js +1 -1
  3. package/dist/{accounts-BPCiCe8y.js → accounts-BOJJiHSr.js} +14 -1
  4. package/dist/accounts.runtime-DWvaCb-X.js +2 -0
  5. package/dist/{action-runtime-E9QZMf0z.js → action-runtime-DoQGk_8D.js} +36 -32
  6. package/dist/action-runtime.runtime-BABj3aM-.js +2 -0
  7. package/dist/{actions-CqRHPciJ.js → actions-DMpDmKEA.js} +211 -57
  8. package/dist/actions.runtime-C103_BPW.js +2 -0
  9. package/dist/api.js +13 -13
  10. package/dist/{approval-handler.runtime-BqNO_HC_.js → approval-handler.runtime-CIUbOt5T.js} +2 -2
  11. package/dist/{channel-jO8Jdkge.js → channel-CG29WLVd.js} +198 -87
  12. package/dist/channel-plugin-api.js +1 -1
  13. package/dist/{channel.setup-CDOZ8V3p.js → channel.setup-Dq6syTNU.js} +3 -3
  14. package/dist/{client-DG9cyk55.js → client-DGxwSL7f.js} +0 -1
  15. package/dist/{directory-config-DDVHDmrN.js → directory-config-BZuS8141.js} +1 -1
  16. package/dist/directory-contract-api.js +1 -1
  17. package/dist/{directory-live-DC-YA5SQ.js → directory-live-BNsxCgqP.js} +2 -2
  18. package/dist/format-YCNoNkM2.js +107 -0
  19. package/dist/http-routes-api.js +1 -1
  20. package/dist/index.js +1 -1
  21. package/dist/{interactive-replies-D-22gTp3.js → interactive-replies-CXpT-vA_.js} +13 -2
  22. package/dist/interactive-replies-api.js +1 -1
  23. package/dist/{message-tool-api--zYyTqrR.js → message-tool-api-BgWKyu2r.js} +11 -4
  24. package/dist/message-tool-api.js +1 -1
  25. package/dist/{monitor-BQ7P93ll.js → monitor-D6Km2CFH.js} +3 -3
  26. package/dist/outbound-adapter-DVoBfBW5.js +272 -0
  27. package/dist/{pipeline.runtime-cxw6Zihc.js → pipeline.runtime-0wEFX2CS.js} +184 -260
  28. package/dist/{plugin-routes-B9PvcDQJ.js → plugin-routes-CLp4obpN.js} +1 -1
  29. package/dist/{policy-DAE6BTN3.js → policy-Dj-puVPb.js} +10 -4
  30. package/dist/{probe-DFKt9Ute.js → probe-CuwRDE5j.js} +10 -4
  31. package/dist/{provider-BdoeWKr8.js → provider-Cot8h818.js} +153 -120
  32. package/dist/{relay-source-OcqQzKfX.js → relay-source-CU1LhyBj.js} +2 -2
  33. package/dist/{replies-D_G-EPr8.js → replies-Bbx6pG_B.js} +4 -3
  34. package/dist/{reply-blocks-CfJqf7eq.js → reply-blocks-BGQ6zSqM.js} +184 -36
  35. package/dist/{resolve-channels-eniB45fy.js → resolve-channels-CstkChBE.js} +1 -1
  36. package/dist/{resolve-users-DDKzl37a.js → resolve-users-C3NP2c-Q.js} +1 -1
  37. package/dist/{runtime-api-DHJ8ntLr.js → runtime-api-CEmqYxR-.js} +1 -1
  38. package/dist/runtime-api.js +12 -12
  39. package/dist/{scopes-BdVdJxFf.js → scopes-DCWVD5-8.js} +2 -2
  40. package/dist/{send-Dg6U9K7_.js → send-DKDXoeoV.js} +392 -225
  41. package/dist/send.runtime-GPRa63l1.js +2 -0
  42. package/dist/{setup-core-BCGzyZhx.js → setup-core-fGd6Gquy.js} +4 -3
  43. package/dist/setup-entry.js +1 -1
  44. package/dist/setup-plugin-api.js +1 -1
  45. package/dist/{setup-surface-D7xdZLxB.js → setup-surface-Dv2fIJNB.js} +5 -5
  46. package/dist/{shared-iMaNxOIL.js → shared-CosfcFri.js} +5 -5
  47. package/dist/{slash-dispatch.runtime-DVhs_fpQ.js → slash-dispatch.runtime-Ccm3quU1.js} +1 -1
  48. package/node_modules/@slack/web-api/dist/chat-stream.d.ts +6 -0
  49. package/node_modules/@slack/web-api/dist/chat-stream.d.ts.map +1 -1
  50. package/node_modules/@slack/web-api/dist/chat-stream.js +8 -0
  51. package/node_modules/@slack/web-api/dist/chat-stream.js.map +1 -1
  52. package/node_modules/@slack/web-api/dist/types/request/assistant.d.ts +1 -1
  53. package/node_modules/@slack/web-api/dist/types/request/assistant.d.ts.map +1 -1
  54. package/node_modules/@slack/web-api/package.json +1 -1
  55. package/node_modules/@types/node/README.md +1 -1
  56. package/node_modules/@types/node/assert/strict.d.ts +10 -1
  57. package/node_modules/@types/node/assert.d.ts +144 -17
  58. package/node_modules/@types/node/async_hooks.d.ts +9 -9
  59. package/node_modules/@types/node/buffer.d.ts +64 -30
  60. package/node_modules/@types/node/child_process.d.ts +17 -21
  61. package/node_modules/@types/node/cluster.d.ts +13 -13
  62. package/node_modules/@types/node/console.d.ts +1 -1
  63. package/node_modules/@types/node/crypto.d.ts +471 -575
  64. package/node_modules/@types/node/diagnostics_channel.d.ts +274 -32
  65. package/node_modules/@types/node/dns.d.ts +15 -15
  66. package/node_modules/@types/node/events.d.ts +3 -3
  67. package/node_modules/@types/node/ffi.d.ts +486 -0
  68. package/node_modules/@types/node/fs/promises.d.ts +7 -4
  69. package/node_modules/@types/node/fs.d.ts +24 -18
  70. package/node_modules/@types/node/globals.d.ts +4 -4
  71. package/node_modules/@types/node/http.d.ts +30 -5
  72. package/node_modules/@types/node/http2.d.ts +2 -1
  73. package/node_modules/@types/node/index.d.ts +1 -3
  74. package/node_modules/@types/node/inspector.d.ts +1 -1
  75. package/node_modules/@types/node/module.d.ts +16 -45
  76. package/node_modules/@types/node/net.d.ts +1 -1
  77. package/node_modules/@types/node/os.d.ts +2 -2
  78. package/node_modules/@types/node/package.json +4 -4
  79. package/node_modules/@types/node/perf_hooks.d.ts +1 -9
  80. package/node_modules/@types/node/process.d.ts +25 -12
  81. package/node_modules/@types/node/quic.d.ts +92 -11
  82. package/node_modules/@types/node/readline.d.ts +12 -11
  83. package/node_modules/@types/node/repl.d.ts +10 -10
  84. package/node_modules/@types/node/sqlite.d.ts +56 -1
  85. package/node_modules/@types/node/stream/iter.d.ts +150 -0
  86. package/node_modules/@types/node/stream/promises.d.ts +2 -2
  87. package/node_modules/@types/node/stream/web.d.ts +1 -1
  88. package/node_modules/@types/node/stream.d.ts +37 -5
  89. package/node_modules/@types/node/test/reporters.d.ts +1 -1
  90. package/node_modules/@types/node/test.d.ts +120 -10
  91. package/node_modules/@types/node/tls.d.ts +1 -1
  92. package/node_modules/@types/node/ts5.6/index.d.ts +2 -4
  93. package/node_modules/@types/node/ts5.7/index.d.ts +1 -3
  94. package/node_modules/@types/node/url.d.ts +3 -3
  95. package/node_modules/@types/node/util/types.d.ts +1 -1
  96. package/node_modules/@types/node/util.d.ts +22 -22
  97. package/node_modules/@types/node/v8.d.ts +85 -3
  98. package/node_modules/@types/node/vm.d.ts +9 -9
  99. package/node_modules/@types/node/web-globals/domexception.d.ts +15 -0
  100. package/node_modules/@types/node/worker_threads.d.ts +10 -12
  101. package/node_modules/@types/node/zlib.d.ts +3 -3
  102. package/node_modules/body-parser/README.md +16 -1
  103. package/node_modules/body-parser/index.js +4 -20
  104. package/node_modules/body-parser/lib/read.js +17 -17
  105. package/node_modules/body-parser/lib/types/json.js +60 -32
  106. package/node_modules/body-parser/lib/types/raw.js +3 -3
  107. package/node_modules/body-parser/lib/types/text.js +3 -3
  108. package/node_modules/body-parser/lib/types/urlencoded.js +16 -20
  109. package/node_modules/body-parser/lib/utils.js +18 -16
  110. package/node_modules/body-parser/node_modules/content-type/LICENSE +22 -0
  111. package/node_modules/body-parser/node_modules/content-type/README.md +69 -0
  112. package/node_modules/body-parser/node_modules/content-type/dist/index.d.ts +26 -0
  113. package/node_modules/body-parser/node_modules/content-type/dist/index.js +170 -0
  114. package/node_modules/body-parser/node_modules/content-type/dist/index.js.map +1 -0
  115. package/node_modules/body-parser/node_modules/content-type/package.json +52 -0
  116. package/node_modules/body-parser/package.json +23 -10
  117. package/node_modules/range-parser/README.md +13 -12
  118. package/node_modules/range-parser/index.js +27 -8
  119. package/node_modules/range-parser/package.json +12 -8
  120. package/node_modules/semver/classes/range.js +6 -2
  121. package/node_modules/semver/package.json +1 -1
  122. package/node_modules/side-channel/CHANGELOG.md +10 -0
  123. package/node_modules/side-channel/README.md +1 -1
  124. package/node_modules/side-channel/index.js +5 -2
  125. package/node_modules/side-channel/package.json +10 -10
  126. package/node_modules/side-channel/test/index.js +16 -0
  127. package/node_modules/typebox/build/compile/validator.d.mts +2 -7
  128. package/node_modules/typebox/build/compile/validator.mjs +6 -36
  129. package/node_modules/typebox/build/error/errors.d.mts +1 -7
  130. package/node_modules/typebox/build/format/_idna.mjs +36 -6
  131. package/node_modules/typebox/build/format/_puny.mjs +4 -1
  132. package/node_modules/typebox/build/format/uuid.d.mts +2 -2
  133. package/node_modules/typebox/build/format/uuid.mjs +3 -3
  134. package/node_modules/typebox/build/guard/emit.d.mts +0 -4
  135. package/node_modules/typebox/build/guard/emit.mjs +0 -8
  136. package/node_modules/typebox/build/guard/guard.d.mts +4 -8
  137. package/node_modules/typebox/build/guard/guard.mjs +5 -13
  138. package/node_modules/typebox/build/schema/engine/boolean.d.mts +3 -3
  139. package/node_modules/typebox/build/schema/engine/boolean.mjs +4 -4
  140. package/node_modules/typebox/build/schema/engine/index.d.mts +0 -1
  141. package/node_modules/typebox/build/schema/engine/index.mjs +0 -1
  142. package/node_modules/typebox/build/schema/engine/schema.mjs +5 -10
  143. package/node_modules/typebox/build/schema/engine/type.mjs +14 -18
  144. package/node_modules/typebox/build/schema/types/dependencies.mjs +1 -1
  145. package/node_modules/typebox/build/schema/types/index.d.mts +0 -1
  146. package/node_modules/typebox/build/schema/types/index.mjs +0 -1
  147. package/node_modules/typebox/build/schema/types/schema.d.mts +1 -1
  148. package/node_modules/typebox/build/schema/types/schema.mjs +2 -2
  149. package/node_modules/typebox/build/system/locale/ar_001.mjs +0 -1
  150. package/node_modules/typebox/build/system/locale/bn_BD.mjs +0 -1
  151. package/node_modules/typebox/build/system/locale/cs_CZ.mjs +0 -1
  152. package/node_modules/typebox/build/system/locale/de_DE.mjs +0 -1
  153. package/node_modules/typebox/build/system/locale/el_GR.mjs +0 -1
  154. package/node_modules/typebox/build/system/locale/en_US.mjs +0 -1
  155. package/node_modules/typebox/build/system/locale/es_419.mjs +0 -1
  156. package/node_modules/typebox/build/system/locale/es_AR.mjs +0 -1
  157. package/node_modules/typebox/build/system/locale/es_ES.mjs +0 -1
  158. package/node_modules/typebox/build/system/locale/es_MX.mjs +0 -1
  159. package/node_modules/typebox/build/system/locale/fa_IR.mjs +0 -1
  160. package/node_modules/typebox/build/system/locale/fil_PH.mjs +0 -1
  161. package/node_modules/typebox/build/system/locale/fr_CA.mjs +0 -1
  162. package/node_modules/typebox/build/system/locale/fr_FR.mjs +0 -1
  163. package/node_modules/typebox/build/system/locale/ha_NG.mjs +0 -1
  164. package/node_modules/typebox/build/system/locale/hi_IN.mjs +0 -1
  165. package/node_modules/typebox/build/system/locale/hu_HU.mjs +0 -1
  166. package/node_modules/typebox/build/system/locale/id_ID.mjs +0 -1
  167. package/node_modules/typebox/build/system/locale/it_IT.mjs +0 -1
  168. package/node_modules/typebox/build/system/locale/ja_JP.mjs +0 -1
  169. package/node_modules/typebox/build/system/locale/ko_KR.mjs +0 -1
  170. package/node_modules/typebox/build/system/locale/ms_MY.mjs +0 -1
  171. package/node_modules/typebox/build/system/locale/nl_NL.mjs +0 -1
  172. package/node_modules/typebox/build/system/locale/pl_PL.mjs +0 -1
  173. package/node_modules/typebox/build/system/locale/pt_BR.mjs +0 -1
  174. package/node_modules/typebox/build/system/locale/pt_PT.mjs +0 -1
  175. package/node_modules/typebox/build/system/locale/ro_RO.mjs +0 -1
  176. package/node_modules/typebox/build/system/locale/ru_RU.mjs +0 -1
  177. package/node_modules/typebox/build/system/locale/sv_SE.mjs +0 -1
  178. package/node_modules/typebox/build/system/locale/sw_TZ.mjs +0 -1
  179. package/node_modules/typebox/build/system/locale/th_TH.mjs +0 -1
  180. package/node_modules/typebox/build/system/locale/tr_TR.mjs +0 -1
  181. package/node_modules/typebox/build/system/locale/uk_UA.mjs +0 -1
  182. package/node_modules/typebox/build/system/locale/ur_PK.mjs +0 -1
  183. package/node_modules/typebox/build/system/locale/vi_VN.mjs +0 -1
  184. package/node_modules/typebox/build/system/locale/yo_NG.mjs +0 -1
  185. package/node_modules/typebox/build/system/locale/zh_Hans.mjs +0 -1
  186. package/node_modules/typebox/build/system/locale/zh_Hant.mjs +0 -1
  187. package/node_modules/typebox/build/system/memory/clone.d.mts +2 -3
  188. package/node_modules/typebox/build/system/memory/clone.mjs +73 -26
  189. package/node_modules/typebox/build/system/settings/settings.d.mts +15 -0
  190. package/node_modules/typebox/build/system/settings/settings.mjs +3 -1
  191. package/node_modules/typebox/build/type/action/_add_immutable.d.mts +11 -0
  192. package/node_modules/typebox/build/type/action/_add_immutable.mjs +11 -0
  193. package/node_modules/typebox/build/type/action/_add_optional.d.mts +11 -0
  194. package/node_modules/typebox/build/type/action/_add_optional.mjs +11 -0
  195. package/node_modules/typebox/build/type/action/_add_readonly.d.mts +11 -0
  196. package/node_modules/typebox/build/type/action/_add_readonly.mjs +11 -0
  197. package/node_modules/typebox/build/type/action/_remove_immutable.d.mts +11 -0
  198. package/node_modules/typebox/build/type/action/_remove_immutable.mjs +11 -0
  199. package/node_modules/typebox/build/type/action/_remove_optional.d.mts +11 -0
  200. package/node_modules/typebox/build/type/action/_remove_optional.mjs +11 -0
  201. package/node_modules/typebox/build/type/action/_remove_readonly.d.mts +11 -0
  202. package/node_modules/typebox/build/type/action/_remove_readonly.mjs +11 -0
  203. package/node_modules/typebox/build/type/action/conditional.d.mts +2 -3
  204. package/node_modules/typebox/build/type/action/conditional.mjs +2 -1
  205. package/node_modules/typebox/build/type/action/index.d.mts +7 -4
  206. package/node_modules/typebox/build/type/action/index.mjs +7 -4
  207. package/node_modules/typebox/build/type/action/mapped.d.mts +2 -3
  208. package/node_modules/typebox/build/type/action/mapped.mjs +2 -1
  209. package/node_modules/typebox/build/type/action/module.d.mts +8 -7
  210. package/node_modules/typebox/build/type/action/module.mjs +7 -6
  211. package/node_modules/typebox/build/type/action/readonly_object.d.mts +0 -5
  212. package/node_modules/typebox/build/type/action/readonly_object.mjs +0 -5
  213. package/node_modules/typebox/build/type/action/with.d.mts +11 -0
  214. package/node_modules/typebox/build/type/action/with.mjs +11 -0
  215. package/node_modules/typebox/build/type/engine/call/distribute_arguments.mjs +1 -1
  216. package/node_modules/typebox/build/type/engine/call/instantiate.d.mts +1 -3
  217. package/node_modules/typebox/build/type/engine/call/instantiate.mjs +3 -2
  218. package/node_modules/typebox/build/type/engine/call/resolve_arguments.mjs +2 -2
  219. package/node_modules/typebox/build/type/engine/constructor_parameters/instantiate.d.mts +3 -4
  220. package/node_modules/typebox/build/type/engine/constructor_parameters/instantiate.mjs +2 -1
  221. package/node_modules/typebox/build/type/engine/cyclic/candidates.d.mts +2 -3
  222. package/node_modules/typebox/build/type/engine/cyclic/candidates.mjs +3 -6
  223. package/node_modules/typebox/build/type/engine/cyclic/check.d.mts +6 -9
  224. package/node_modules/typebox/build/type/engine/cyclic/check.mjs +10 -16
  225. package/node_modules/typebox/build/type/engine/cyclic/dependencies.d.mts +1 -4
  226. package/node_modules/typebox/build/type/engine/cyclic/dependencies.mjs +9 -15
  227. package/node_modules/typebox/build/type/engine/cyclic/extends.d.mts +1 -4
  228. package/node_modules/typebox/build/type/engine/cyclic/extends.mjs +8 -14
  229. package/node_modules/typebox/build/type/engine/cyclic/instantiate.d.mts +2 -5
  230. package/node_modules/typebox/build/type/engine/cyclic/instantiate.mjs +3 -2
  231. package/node_modules/typebox/build/type/engine/enum/index.d.mts +0 -1
  232. package/node_modules/typebox/build/type/engine/enum/index.mjs +0 -1
  233. package/node_modules/typebox/build/type/engine/evaluate/broaden.d.mts +1 -2
  234. package/node_modules/typebox/build/type/engine/evaluate/broaden.mjs +2 -6
  235. package/node_modules/typebox/build/type/engine/evaluate/composite.d.mts +10 -6
  236. package/node_modules/typebox/build/type/engine/evaluate/composite.mjs +10 -6
  237. package/node_modules/typebox/build/type/engine/evaluate/distribute.d.mts +2 -1
  238. package/node_modules/typebox/build/type/engine/evaluate/distribute.mjs +3 -3
  239. package/node_modules/typebox/build/type/engine/evaluate/evaluate.d.mts +17 -5
  240. package/node_modules/typebox/build/type/engine/evaluate/evaluate.mjs +34 -8
  241. package/node_modules/typebox/build/type/engine/exclude/operation.d.mts +5 -6
  242. package/node_modules/typebox/build/type/engine/exclude/operation.mjs +11 -12
  243. package/node_modules/typebox/build/type/engine/extract/operation.d.mts +5 -6
  244. package/node_modules/typebox/build/type/engine/extract/operation.mjs +11 -12
  245. package/node_modules/typebox/build/type/engine/immutable/instantiate_add.d.mts +10 -0
  246. package/node_modules/typebox/build/type/engine/immutable/instantiate_add.mjs +14 -0
  247. package/node_modules/typebox/build/type/engine/immutable/instantiate_remove.d.mts +10 -0
  248. package/node_modules/typebox/build/type/engine/immutable/instantiate_remove.mjs +14 -0
  249. package/node_modules/typebox/build/type/engine/index.d.mts +2 -2
  250. package/node_modules/typebox/build/type/engine/index.mjs +2 -2
  251. package/node_modules/typebox/build/type/engine/indexable/from_dependent.d.mts +5 -0
  252. package/node_modules/typebox/build/type/engine/indexable/from_dependent.mjs +8 -0
  253. package/node_modules/typebox/build/type/engine/indexable/from_enum.d.mts +3 -3
  254. package/node_modules/typebox/build/type/engine/indexable/from_enum.mjs +4 -4
  255. package/node_modules/typebox/build/type/engine/indexable/from_template_literal.d.mts +2 -2
  256. package/node_modules/typebox/build/type/engine/indexable/from_template_literal.mjs +3 -3
  257. package/node_modules/typebox/build/type/engine/indexable/from_type.d.mts +3 -1
  258. package/node_modules/typebox/build/type/engine/indexable/from_type.mjs +9 -6
  259. package/node_modules/typebox/build/type/engine/indexed/instantiate.d.mts +2 -1
  260. package/node_modules/typebox/build/type/engine/indexed/instantiate.mjs +5 -2
  261. package/node_modules/typebox/build/type/engine/instantiate.d.mts +44 -31
  262. package/node_modules/typebox/build/type/engine/instantiate.mjs +82 -83
  263. package/node_modules/typebox/build/type/engine/interface/instantiate.d.mts +3 -6
  264. package/node_modules/typebox/build/type/engine/intrinsics/from_template_literal.d.mts +2 -2
  265. package/node_modules/typebox/build/type/engine/intrinsics/from_template_literal.mjs +3 -3
  266. package/node_modules/typebox/build/type/engine/keyof/instantiate.d.mts +2 -1
  267. package/node_modules/typebox/build/type/engine/keyof/instantiate.mjs +5 -1
  268. package/node_modules/typebox/build/type/engine/mapped/mapped_operation.d.mts +4 -4
  269. package/node_modules/typebox/build/type/engine/mapped/mapped_operation.mjs +3 -3
  270. package/node_modules/typebox/build/type/engine/mapped/mapped_variants.d.mts +5 -4
  271. package/node_modules/typebox/build/type/engine/mapped/mapped_variants.mjs +10 -5
  272. package/node_modules/typebox/build/type/engine/module/instantiate.d.mts +7 -9
  273. package/node_modules/typebox/build/type/engine/module/instantiate.mjs +17 -15
  274. package/node_modules/typebox/build/type/engine/object/from_dependent.d.mts +5 -0
  275. package/node_modules/typebox/build/type/engine/object/from_dependent.mjs +8 -0
  276. package/node_modules/typebox/build/type/engine/object/from_type.d.mts +3 -1
  277. package/node_modules/typebox/build/type/engine/object/from_type.mjs +8 -5
  278. package/node_modules/typebox/build/type/engine/object/from_union.mjs +2 -2
  279. package/node_modules/typebox/build/type/engine/optional/instantiate_add.d.mts +10 -0
  280. package/node_modules/typebox/build/type/engine/optional/instantiate_add.mjs +14 -0
  281. package/node_modules/typebox/build/type/engine/optional/instantiate_remove.d.mts +10 -0
  282. package/node_modules/typebox/build/type/engine/optional/instantiate_remove.mjs +14 -0
  283. package/node_modules/typebox/build/type/engine/parameters/instantiate.d.mts +3 -4
  284. package/node_modules/typebox/build/type/engine/parameters/instantiate.mjs +2 -1
  285. package/node_modules/typebox/build/type/engine/partial/from_dependent.d.mts +5 -0
  286. package/node_modules/typebox/build/type/engine/partial/from_dependent.mjs +8 -0
  287. package/node_modules/typebox/build/type/engine/partial/from_intersect.d.mts +1 -1
  288. package/node_modules/typebox/build/type/engine/partial/from_intersect.mjs +3 -2
  289. package/node_modules/typebox/build/type/engine/partial/from_object.d.mts +2 -2
  290. package/node_modules/typebox/build/type/engine/partial/from_object.mjs +2 -2
  291. package/node_modules/typebox/build/type/engine/partial/from_type.d.mts +3 -1
  292. package/node_modules/typebox/build/type/engine/partial/from_type.mjs +7 -4
  293. package/node_modules/typebox/build/type/engine/priority/index.d.mts +1 -0
  294. package/node_modules/typebox/build/type/engine/priority/index.mjs +1 -0
  295. package/node_modules/typebox/build/type/engine/priority/priority.d.mts +20 -0
  296. package/node_modules/typebox/build/type/engine/priority/priority.mjs +28 -0
  297. package/node_modules/typebox/build/type/engine/readonly/instantiate_add.d.mts +10 -0
  298. package/node_modules/typebox/build/type/engine/readonly/instantiate_add.mjs +14 -0
  299. package/node_modules/typebox/build/type/engine/readonly/instantiate_remove.d.mts +10 -0
  300. package/node_modules/typebox/build/type/engine/readonly/instantiate_remove.mjs +14 -0
  301. package/node_modules/typebox/build/type/engine/readonly_object/from_array.d.mts +2 -2
  302. package/node_modules/typebox/build/type/engine/readonly_object/from_array.mjs +2 -2
  303. package/node_modules/typebox/build/type/engine/readonly_object/from_dependent.d.mts +5 -0
  304. package/node_modules/typebox/build/type/engine/readonly_object/from_dependent.mjs +8 -0
  305. package/node_modules/typebox/build/type/engine/readonly_object/from_intersect.d.mts +1 -1
  306. package/node_modules/typebox/build/type/engine/readonly_object/from_intersect.mjs +3 -2
  307. package/node_modules/typebox/build/type/engine/readonly_object/from_object.d.mts +2 -2
  308. package/node_modules/typebox/build/type/engine/readonly_object/from_object.mjs +2 -2
  309. package/node_modules/typebox/build/type/engine/readonly_object/from_tuple.d.mts +2 -2
  310. package/node_modules/typebox/build/type/engine/readonly_object/from_tuple.mjs +2 -2
  311. package/node_modules/typebox/build/type/engine/readonly_object/from_type.d.mts +3 -1
  312. package/node_modules/typebox/build/type/engine/readonly_object/from_type.mjs +8 -5
  313. package/node_modules/typebox/build/type/engine/record/from_key_enum.d.mts +2 -2
  314. package/node_modules/typebox/build/type/engine/record/from_key_enum.mjs +2 -2
  315. package/node_modules/typebox/build/type/engine/record/from_key_template_literal.d.mts +2 -2
  316. package/node_modules/typebox/build/type/engine/record/from_key_template_literal.mjs +2 -2
  317. package/node_modules/typebox/build/type/engine/ref/instantiate.d.mts +3 -3
  318. package/node_modules/typebox/build/type/engine/ref/instantiate.mjs +6 -6
  319. package/node_modules/typebox/build/type/engine/required/from_dependent.d.mts +5 -0
  320. package/node_modules/typebox/build/type/engine/required/from_dependent.mjs +8 -0
  321. package/node_modules/typebox/build/type/engine/required/from_intersect.d.mts +1 -1
  322. package/node_modules/typebox/build/type/engine/required/from_intersect.mjs +3 -2
  323. package/node_modules/typebox/build/type/engine/required/from_object.d.mts +2 -2
  324. package/node_modules/typebox/build/type/engine/required/from_object.mjs +2 -2
  325. package/node_modules/typebox/build/type/engine/required/from_type.d.mts +3 -1
  326. package/node_modules/typebox/build/type/engine/required/from_type.mjs +7 -4
  327. package/node_modules/typebox/build/type/engine/template_literal/decode.mjs +3 -3
  328. package/node_modules/typebox/build/type/engine/template_literal/encode.d.mts +2 -2
  329. package/node_modules/typebox/build/type/engine/template_literal/encode.mjs +6 -6
  330. package/node_modules/typebox/build/type/engine/template_literal/is_finite.mjs +1 -1
  331. package/node_modules/typebox/build/type/engine/template_literal/is_pattern.mjs +1 -0
  332. package/node_modules/typebox/build/type/engine/this/expand_this.d.mts +1 -4
  333. package/node_modules/typebox/build/type/engine/this/expand_this.mjs +7 -13
  334. package/node_modules/typebox/build/type/engine/with/instantiate.d.mts +8 -0
  335. package/node_modules/typebox/build/type/engine/{options → with}/instantiate.mjs +5 -5
  336. package/node_modules/typebox/build/type/extends/dependent.d.mts +6 -0
  337. package/node_modules/typebox/build/type/extends/dependent.mjs +6 -0
  338. package/node_modules/typebox/build/type/extends/enum.d.mts +4 -4
  339. package/node_modules/typebox/build/type/extends/enum.mjs +3 -2
  340. package/node_modules/typebox/build/type/extends/extends_left.d.mts +5 -7
  341. package/node_modules/typebox/build/type/extends/extends_left.mjs +24 -27
  342. package/node_modules/typebox/build/type/extends/extends_right.d.mts +7 -5
  343. package/node_modules/typebox/build/type/extends/extends_right.mjs +20 -15
  344. package/node_modules/typebox/build/type/extends/inference.mjs +1 -1
  345. package/node_modules/typebox/build/type/extends/object.d.mts +8 -1
  346. package/node_modules/typebox/build/type/extends/object.mjs +25 -3
  347. package/node_modules/typebox/build/type/extends/parameters.mjs +2 -2
  348. package/node_modules/typebox/build/type/extends/record.d.mts +13 -0
  349. package/node_modules/typebox/build/type/extends/record.mjs +23 -0
  350. package/node_modules/typebox/build/type/extends/template_literal.d.mts +3 -3
  351. package/node_modules/typebox/build/type/extends/template_literal.mjs +3 -3
  352. package/node_modules/typebox/build/type/extends/tuple.d.mts +3 -6
  353. package/node_modules/typebox/build/type/extends/tuple.mjs +6 -5
  354. package/node_modules/typebox/build/type/extends/union.mjs +2 -2
  355. package/node_modules/typebox/build/type/script/mapping.d.mts +84 -99
  356. package/node_modules/typebox/build/type/script/mapping.mjs +81 -85
  357. package/node_modules/typebox/build/type/script/parser.d.mts +40 -40
  358. package/node_modules/typebox/build/type/script/parser.mjs +22 -22
  359. package/node_modules/typebox/build/type/script/script.d.mts +3 -4
  360. package/node_modules/typebox/build/type/script/script.mjs +3 -2
  361. package/node_modules/typebox/build/type/script/token/internal/guard.d.mts +1 -1
  362. package/node_modules/typebox/build/type/script/token/internal/guard.mjs +1 -1
  363. package/node_modules/typebox/build/type/script/token/internal/take.mjs +1 -1
  364. package/node_modules/typebox/build/type/script/token/until.mjs +2 -2
  365. package/node_modules/typebox/build/type/types/_codec.d.mts +12 -12
  366. package/node_modules/typebox/build/type/types/_codec.mjs +0 -1
  367. package/node_modules/typebox/build/type/types/_immutable.d.mts +2 -9
  368. package/node_modules/typebox/build/type/types/_immutable.mjs +2 -10
  369. package/node_modules/typebox/build/type/types/_optional.d.mts +2 -9
  370. package/node_modules/typebox/build/type/types/_optional.mjs +2 -11
  371. package/node_modules/typebox/build/type/types/_readonly.d.mts +2 -9
  372. package/node_modules/typebox/build/type/types/_readonly.mjs +2 -10
  373. package/node_modules/typebox/build/type/types/_refine.d.mts +8 -10
  374. package/node_modules/typebox/build/type/types/_refine.mjs +1 -2
  375. package/node_modules/typebox/build/type/types/call.d.mts +3 -3
  376. package/node_modules/typebox/build/type/types/call.mjs +3 -2
  377. package/node_modules/typebox/build/type/types/deferred.d.mts +1 -0
  378. package/node_modules/typebox/build/type/types/deferred.mjs +1 -1
  379. package/node_modules/typebox/build/type/types/dependent.d.mts +17 -0
  380. package/node_modules/typebox/build/type/types/dependent.mjs +24 -0
  381. package/node_modules/typebox/build/type/types/enum.d.mts +3 -1
  382. package/node_modules/typebox/build/type/types/enum.mjs +5 -0
  383. package/node_modules/typebox/build/type/types/index.d.mts +1 -4
  384. package/node_modules/typebox/build/type/types/index.mjs +1 -4
  385. package/node_modules/typebox/build/type/types/number.d.mts +1 -1
  386. package/node_modules/typebox/build/type/types/number.mjs +1 -1
  387. package/node_modules/typebox/build/type/types/record.d.mts +13 -7
  388. package/node_modules/typebox/build/type/types/record.mjs +15 -9
  389. package/node_modules/typebox/build/type/types/static.d.mts +2 -5
  390. package/node_modules/typebox/build/typebox.d.mts +4 -8
  391. package/node_modules/typebox/build/typebox.mjs +4 -8
  392. package/node_modules/typebox/build/value/clean/clean.mjs +4 -2
  393. package/node_modules/typebox/build/value/clean/from_intersect.mjs +2 -2
  394. package/node_modules/typebox/build/value/clean/from_type.mjs +8 -10
  395. package/node_modules/typebox/build/value/clean/from_union.d.mts +1 -1
  396. package/node_modules/typebox/build/value/clean/from_union.mjs +1 -2
  397. package/node_modules/typebox/build/value/clone/clone.mjs +2 -73
  398. package/node_modules/typebox/build/value/codec/decode.mjs +4 -2
  399. package/node_modules/typebox/build/value/codec/encode.mjs +4 -2
  400. package/node_modules/typebox/build/value/codec/from_array.mjs +1 -4
  401. package/node_modules/typebox/build/value/codec/from_object.mjs +1 -4
  402. package/node_modules/typebox/build/value/codec/from_record.mjs +2 -7
  403. package/node_modules/typebox/build/value/codec/from_tuple.mjs +1 -4
  404. package/node_modules/typebox/build/value/codec/from_union.mjs +2 -3
  405. package/node_modules/typebox/build/value/convert/from_enum.mjs +3 -4
  406. package/node_modules/typebox/build/value/convert/from_template_literal.d.mts +1 -1
  407. package/node_modules/typebox/build/value/convert/from_template_literal.mjs +2 -3
  408. package/node_modules/typebox/build/value/convert/from_type.mjs +19 -21
  409. package/node_modules/typebox/build/value/create/from_enum.mjs +2 -2
  410. package/node_modules/typebox/build/value/create/from_type.mjs +23 -31
  411. package/node_modules/typebox/build/value/default/from_object.mjs +1 -1
  412. package/node_modules/typebox/build/value/default/from_type.mjs +8 -10
  413. package/node_modules/typebox/build/value/index.d.mts +0 -1
  414. package/node_modules/typebox/build/value/index.mjs +0 -1
  415. package/node_modules/typebox/build/value/repair/from_enum.mjs +2 -3
  416. package/node_modules/typebox/build/value/repair/from_type.mjs +24 -22
  417. package/node_modules/typebox/build/value/shared/union_priority_sort.d.mts +6 -2
  418. package/node_modules/typebox/build/value/shared/union_priority_sort.mjs +62 -26
  419. package/node_modules/typebox/build/value/value.d.mts +0 -1
  420. package/node_modules/typebox/build/value/value.mjs +0 -1
  421. package/node_modules/typebox/package.json +25 -25
  422. package/node_modules/typebox/readme.md +97 -80
  423. package/node_modules/undici-types/agent.d.ts +0 -2
  424. package/node_modules/undici-types/client.d.ts +25 -19
  425. package/node_modules/undici-types/dispatcher.d.ts +7 -33
  426. package/node_modules/undici-types/dispatcher1-wrapper.d.ts +7 -0
  427. package/node_modules/undici-types/fetch.d.ts +24 -4
  428. package/node_modules/undici-types/h2c-client.d.ts +6 -6
  429. package/node_modules/undici-types/handlers.d.ts +1 -2
  430. package/node_modules/undici-types/header.d.ts +5 -0
  431. package/node_modules/undici-types/index.d.ts +3 -1
  432. package/node_modules/undici-types/interceptors.d.ts +1 -1
  433. package/node_modules/undici-types/package.json +1 -1
  434. package/node_modules/undici-types/pool.d.ts +0 -2
  435. package/node_modules/undici-types/proxy-agent.d.ts +2 -2
  436. package/node_modules/undici-types/round-robin-pool.d.ts +0 -2
  437. package/node_modules/undici-types/snapshot-agent.d.ts +4 -0
  438. package/node_modules/undici-types/socks5-proxy-agent.d.ts +2 -2
  439. package/node_modules/undici-types/webidl.d.ts +0 -1
  440. package/npm-shrinkwrap.json +55 -56
  441. package/openclaw.plugin.json +46 -0
  442. package/package.json +6 -6
  443. package/dist/accounts.runtime-CgWgzjLX.js +0 -2
  444. package/dist/action-runtime.runtime-BQrVgSOq.js +0 -2
  445. package/dist/actions.runtime-Dl6AfO_g.js +0 -2
  446. package/dist/errors-CZtmv-h0.js +0 -107
  447. package/dist/outbound-adapter-BHUtpXz0.js +0 -188
  448. package/dist/send.runtime-a-O4PP2B.js +0 -2
  449. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/LICENSE +0 -21
  450. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/README.md +0 -15
  451. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/assert/strict.d.ts +0 -59
  452. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/assert.d.ts +0 -950
  453. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/async_hooks.d.ts +0 -711
  454. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/buffer.buffer.d.ts +0 -466
  455. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/buffer.d.ts +0 -1765
  456. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/child_process.d.ts +0 -1366
  457. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/cluster.d.ts +0 -432
  458. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
  459. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/console.d.ts +0 -93
  460. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/constants.d.ts +0 -14
  461. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/crypto.d.ts +0 -4058
  462. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/dgram.d.ts +0 -537
  463. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/diagnostics_channel.d.ts +0 -552
  464. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/dns/promises.d.ts +0 -497
  465. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/dns.d.ts +0 -876
  466. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/domain.d.ts +0 -150
  467. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/events.d.ts +0 -1008
  468. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/fs/promises.d.ts +0 -1468
  469. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/fs.d.ts +0 -4780
  470. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/globals.d.ts +0 -150
  471. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/globals.typedarray.d.ts +0 -101
  472. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/http.d.ts +0 -2147
  473. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/http2.d.ts +0 -2485
  474. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/https.d.ts +0 -400
  475. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/index.d.ts +0 -117
  476. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/inspector/promises.d.ts +0 -35
  477. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/inspector.d.ts +0 -264
  478. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/inspector.generated.d.ts +0 -4406
  479. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/module.d.ts +0 -755
  480. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/net.d.ts +0 -970
  481. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/os.d.ts +0 -498
  482. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/package.json +0 -155
  483. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/path/posix.d.ts +0 -8
  484. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/path/win32.d.ts +0 -8
  485. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/path.d.ts +0 -178
  486. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/perf_hooks.d.ts +0 -612
  487. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/process.d.ts +0 -2204
  488. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/punycode.d.ts +0 -89
  489. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/querystring.d.ts +0 -139
  490. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/quic.d.ts +0 -897
  491. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/readline/promises.d.ts +0 -158
  492. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/readline.d.ts +0 -507
  493. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/repl.d.ts +0 -420
  494. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/sea.d.ts +0 -47
  495. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/sqlite.d.ts +0 -1068
  496. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/stream/consumers.d.ts +0 -114
  497. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/stream/iter.d.ts +0 -301
  498. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/stream/promises.d.ts +0 -211
  499. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/stream/web.d.ts +0 -300
  500. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/stream.d.ts +0 -1774
  501. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/string_decoder.d.ts +0 -27
  502. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/test/reporters.d.ts +0 -59
  503. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/test.d.ts +0 -2279
  504. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/timers/promises.d.ts +0 -93
  505. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/timers.d.ts +0 -149
  506. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/tls.d.ts +0 -1193
  507. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/trace_events.d.ts +0 -103
  508. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -462
  509. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +0 -71
  510. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -36
  511. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/ts5.6/index.d.ts +0 -119
  512. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +0 -72
  513. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/ts5.7/index.d.ts +0 -119
  514. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/tty.d.ts +0 -225
  515. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/url.d.ts +0 -556
  516. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/util/types.d.ts +0 -558
  517. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/util.d.ts +0 -1677
  518. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/v8.d.ts +0 -980
  519. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/vm.d.ts +0 -1136
  520. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/wasi.d.ts +0 -131
  521. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -59
  522. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/blob.d.ts +0 -23
  523. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/console.d.ts +0 -9
  524. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/crypto.d.ts +0 -39
  525. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
  526. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/encoding.d.ts +0 -11
  527. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/events.d.ts +0 -106
  528. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/fetch.d.ts +0 -69
  529. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/importmeta.d.ts +0 -13
  530. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/messaging.d.ts +0 -23
  531. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/navigator.d.ts +0 -25
  532. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/performance.d.ts +0 -45
  533. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/storage.d.ts +0 -24
  534. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/streams.d.ts +0 -115
  535. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/timers.d.ts +0 -44
  536. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/web-globals/url.d.ts +0 -24
  537. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/worker_threads.d.ts +0 -671
  538. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/zlib/iter.d.ts +0 -131
  539. package/node_modules/@types/jsonwebtoken/node_modules/@types/node/zlib.d.ts +0 -589
  540. package/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
  541. package/node_modules/@types/ws/node_modules/@types/node/LICENSE +0 -21
  542. package/node_modules/@types/ws/node_modules/@types/node/README.md +0 -15
  543. package/node_modules/@types/ws/node_modules/@types/node/assert/strict.d.ts +0 -59
  544. package/node_modules/@types/ws/node_modules/@types/node/assert.d.ts +0 -950
  545. package/node_modules/@types/ws/node_modules/@types/node/async_hooks.d.ts +0 -711
  546. package/node_modules/@types/ws/node_modules/@types/node/buffer.buffer.d.ts +0 -466
  547. package/node_modules/@types/ws/node_modules/@types/node/buffer.d.ts +0 -1765
  548. package/node_modules/@types/ws/node_modules/@types/node/child_process.d.ts +0 -1366
  549. package/node_modules/@types/ws/node_modules/@types/node/cluster.d.ts +0 -432
  550. package/node_modules/@types/ws/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
  551. package/node_modules/@types/ws/node_modules/@types/node/console.d.ts +0 -93
  552. package/node_modules/@types/ws/node_modules/@types/node/constants.d.ts +0 -14
  553. package/node_modules/@types/ws/node_modules/@types/node/crypto.d.ts +0 -4058
  554. package/node_modules/@types/ws/node_modules/@types/node/dgram.d.ts +0 -537
  555. package/node_modules/@types/ws/node_modules/@types/node/diagnostics_channel.d.ts +0 -552
  556. package/node_modules/@types/ws/node_modules/@types/node/dns/promises.d.ts +0 -497
  557. package/node_modules/@types/ws/node_modules/@types/node/dns.d.ts +0 -876
  558. package/node_modules/@types/ws/node_modules/@types/node/domain.d.ts +0 -150
  559. package/node_modules/@types/ws/node_modules/@types/node/events.d.ts +0 -1008
  560. package/node_modules/@types/ws/node_modules/@types/node/fs/promises.d.ts +0 -1468
  561. package/node_modules/@types/ws/node_modules/@types/node/fs.d.ts +0 -4780
  562. package/node_modules/@types/ws/node_modules/@types/node/globals.d.ts +0 -150
  563. package/node_modules/@types/ws/node_modules/@types/node/globals.typedarray.d.ts +0 -101
  564. package/node_modules/@types/ws/node_modules/@types/node/http.d.ts +0 -2147
  565. package/node_modules/@types/ws/node_modules/@types/node/http2.d.ts +0 -2485
  566. package/node_modules/@types/ws/node_modules/@types/node/https.d.ts +0 -400
  567. package/node_modules/@types/ws/node_modules/@types/node/index.d.ts +0 -117
  568. package/node_modules/@types/ws/node_modules/@types/node/inspector/promises.d.ts +0 -35
  569. package/node_modules/@types/ws/node_modules/@types/node/inspector.d.ts +0 -264
  570. package/node_modules/@types/ws/node_modules/@types/node/inspector.generated.d.ts +0 -4406
  571. package/node_modules/@types/ws/node_modules/@types/node/module.d.ts +0 -755
  572. package/node_modules/@types/ws/node_modules/@types/node/net.d.ts +0 -970
  573. package/node_modules/@types/ws/node_modules/@types/node/os.d.ts +0 -498
  574. package/node_modules/@types/ws/node_modules/@types/node/package.json +0 -155
  575. package/node_modules/@types/ws/node_modules/@types/node/path/posix.d.ts +0 -8
  576. package/node_modules/@types/ws/node_modules/@types/node/path/win32.d.ts +0 -8
  577. package/node_modules/@types/ws/node_modules/@types/node/path.d.ts +0 -178
  578. package/node_modules/@types/ws/node_modules/@types/node/perf_hooks.d.ts +0 -612
  579. package/node_modules/@types/ws/node_modules/@types/node/process.d.ts +0 -2204
  580. package/node_modules/@types/ws/node_modules/@types/node/punycode.d.ts +0 -89
  581. package/node_modules/@types/ws/node_modules/@types/node/querystring.d.ts +0 -139
  582. package/node_modules/@types/ws/node_modules/@types/node/quic.d.ts +0 -897
  583. package/node_modules/@types/ws/node_modules/@types/node/readline/promises.d.ts +0 -158
  584. package/node_modules/@types/ws/node_modules/@types/node/readline.d.ts +0 -507
  585. package/node_modules/@types/ws/node_modules/@types/node/repl.d.ts +0 -420
  586. package/node_modules/@types/ws/node_modules/@types/node/sea.d.ts +0 -47
  587. package/node_modules/@types/ws/node_modules/@types/node/sqlite.d.ts +0 -1068
  588. package/node_modules/@types/ws/node_modules/@types/node/stream/consumers.d.ts +0 -114
  589. package/node_modules/@types/ws/node_modules/@types/node/stream/iter.d.ts +0 -301
  590. package/node_modules/@types/ws/node_modules/@types/node/stream/promises.d.ts +0 -211
  591. package/node_modules/@types/ws/node_modules/@types/node/stream/web.d.ts +0 -300
  592. package/node_modules/@types/ws/node_modules/@types/node/stream.d.ts +0 -1774
  593. package/node_modules/@types/ws/node_modules/@types/node/string_decoder.d.ts +0 -27
  594. package/node_modules/@types/ws/node_modules/@types/node/test/reporters.d.ts +0 -59
  595. package/node_modules/@types/ws/node_modules/@types/node/test.d.ts +0 -2279
  596. package/node_modules/@types/ws/node_modules/@types/node/timers/promises.d.ts +0 -93
  597. package/node_modules/@types/ws/node_modules/@types/node/timers.d.ts +0 -149
  598. package/node_modules/@types/ws/node_modules/@types/node/tls.d.ts +0 -1193
  599. package/node_modules/@types/ws/node_modules/@types/node/trace_events.d.ts +0 -103
  600. package/node_modules/@types/ws/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -462
  601. package/node_modules/@types/ws/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +0 -71
  602. package/node_modules/@types/ws/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -36
  603. package/node_modules/@types/ws/node_modules/@types/node/ts5.6/index.d.ts +0 -119
  604. package/node_modules/@types/ws/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +0 -72
  605. package/node_modules/@types/ws/node_modules/@types/node/ts5.7/index.d.ts +0 -119
  606. package/node_modules/@types/ws/node_modules/@types/node/tty.d.ts +0 -225
  607. package/node_modules/@types/ws/node_modules/@types/node/url.d.ts +0 -556
  608. package/node_modules/@types/ws/node_modules/@types/node/util/types.d.ts +0 -558
  609. package/node_modules/@types/ws/node_modules/@types/node/util.d.ts +0 -1677
  610. package/node_modules/@types/ws/node_modules/@types/node/v8.d.ts +0 -980
  611. package/node_modules/@types/ws/node_modules/@types/node/vm.d.ts +0 -1136
  612. package/node_modules/@types/ws/node_modules/@types/node/wasi.d.ts +0 -131
  613. package/node_modules/@types/ws/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -59
  614. package/node_modules/@types/ws/node_modules/@types/node/web-globals/blob.d.ts +0 -23
  615. package/node_modules/@types/ws/node_modules/@types/node/web-globals/console.d.ts +0 -9
  616. package/node_modules/@types/ws/node_modules/@types/node/web-globals/crypto.d.ts +0 -39
  617. package/node_modules/@types/ws/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
  618. package/node_modules/@types/ws/node_modules/@types/node/web-globals/encoding.d.ts +0 -11
  619. package/node_modules/@types/ws/node_modules/@types/node/web-globals/events.d.ts +0 -106
  620. package/node_modules/@types/ws/node_modules/@types/node/web-globals/fetch.d.ts +0 -69
  621. package/node_modules/@types/ws/node_modules/@types/node/web-globals/importmeta.d.ts +0 -13
  622. package/node_modules/@types/ws/node_modules/@types/node/web-globals/messaging.d.ts +0 -23
  623. package/node_modules/@types/ws/node_modules/@types/node/web-globals/navigator.d.ts +0 -25
  624. package/node_modules/@types/ws/node_modules/@types/node/web-globals/performance.d.ts +0 -45
  625. package/node_modules/@types/ws/node_modules/@types/node/web-globals/storage.d.ts +0 -24
  626. package/node_modules/@types/ws/node_modules/@types/node/web-globals/streams.d.ts +0 -115
  627. package/node_modules/@types/ws/node_modules/@types/node/web-globals/timers.d.ts +0 -44
  628. package/node_modules/@types/ws/node_modules/@types/node/web-globals/url.d.ts +0 -24
  629. package/node_modules/@types/ws/node_modules/@types/node/worker_threads.d.ts +0 -671
  630. package/node_modules/@types/ws/node_modules/@types/node/zlib/iter.d.ts +0 -131
  631. package/node_modules/@types/ws/node_modules/@types/node/zlib.d.ts +0 -589
  632. package/node_modules/typebox/build/schema/engine/_guard.d.mts +0 -6
  633. package/node_modules/typebox/build/schema/engine/_guard.mjs +0 -26
  634. package/node_modules/typebox/build/schema/types/_guard.d.mts +0 -10
  635. package/node_modules/typebox/build/schema/types/_guard.mjs +0 -16
  636. package/node_modules/typebox/build/type/action/_optional.d.mts +0 -19
  637. package/node_modules/typebox/build/type/action/_optional.mjs +0 -40
  638. package/node_modules/typebox/build/type/action/_readonly.d.mts +0 -19
  639. package/node_modules/typebox/build/type/action/_readonly.mjs +0 -40
  640. package/node_modules/typebox/build/type/action/awaited.d.mts +0 -15
  641. package/node_modules/typebox/build/type/action/awaited.mjs +0 -15
  642. package/node_modules/typebox/build/type/action/options.d.mts +0 -11
  643. package/node_modules/typebox/build/type/action/options.mjs +0 -11
  644. package/node_modules/typebox/build/type/engine/awaited/instantiate.d.mts +0 -11
  645. package/node_modules/typebox/build/type/engine/awaited/instantiate.mjs +0 -20
  646. package/node_modules/typebox/build/type/engine/enum/enum_to_union.d.mts +0 -14
  647. package/node_modules/typebox/build/type/engine/enum/enum_to_union.mjs +0 -24
  648. package/node_modules/typebox/build/type/engine/options/index.d.mts +0 -1
  649. package/node_modules/typebox/build/type/engine/options/index.mjs +0 -1
  650. package/node_modules/typebox/build/type/engine/options/instantiate.d.mts +0 -8
  651. package/node_modules/typebox/build/type/extends/async_iterator.d.mts +0 -7
  652. package/node_modules/typebox/build/type/extends/async_iterator.mjs +0 -9
  653. package/node_modules/typebox/build/type/extends/iterator.d.mts +0 -7
  654. package/node_modules/typebox/build/type/extends/iterator.mjs +0 -9
  655. package/node_modules/typebox/build/type/extends/promise.d.mts +0 -7
  656. package/node_modules/typebox/build/type/extends/promise.mjs +0 -9
  657. package/node_modules/typebox/build/type/types/async_iterator.d.mts +0 -20
  658. package/node_modules/typebox/build/type/types/async_iterator.mjs +0 -28
  659. package/node_modules/typebox/build/type/types/base.d.mts +0 -50
  660. package/node_modules/typebox/build/type/types/base.mjs +0 -84
  661. package/node_modules/typebox/build/type/types/iterator.d.mts +0 -20
  662. package/node_modules/typebox/build/type/types/iterator.mjs +0 -28
  663. package/node_modules/typebox/build/type/types/promise.d.mts +0 -21
  664. package/node_modules/typebox/build/type/types/promise.mjs +0 -29
  665. package/node_modules/typebox/build/value/clean/from_base.d.mts +0 -2
  666. package/node_modules/typebox/build/value/clean/from_base.mjs +0 -4
  667. package/node_modules/typebox/build/value/convert/from_base.d.mts +0 -2
  668. package/node_modules/typebox/build/value/convert/from_base.mjs +0 -4
  669. package/node_modules/typebox/build/value/create/from_async_iterator.d.mts +0 -2
  670. package/node_modules/typebox/build/value/create/from_async_iterator.mjs +0 -5
  671. package/node_modules/typebox/build/value/create/from_base.d.mts +0 -2
  672. package/node_modules/typebox/build/value/create/from_base.mjs +0 -4
  673. package/node_modules/typebox/build/value/create/from_iterator.d.mts +0 -2
  674. package/node_modules/typebox/build/value/create/from_iterator.mjs +0 -5
  675. package/node_modules/typebox/build/value/create/from_promise.d.mts +0 -2
  676. package/node_modules/typebox/build/value/create/from_promise.mjs +0 -5
  677. package/node_modules/typebox/build/value/default/from_base.d.mts +0 -2
  678. package/node_modules/typebox/build/value/default/from_base.mjs +0 -5
  679. package/node_modules/typebox/build/value/mutate/error.d.mts +0 -3
  680. package/node_modules/typebox/build/value/mutate/error.mjs +0 -6
  681. package/node_modules/typebox/build/value/mutate/from_array.d.mts +0 -2
  682. package/node_modules/typebox/build/value/mutate/from_array.mjs +0 -16
  683. package/node_modules/typebox/build/value/mutate/from_object.d.mts +0 -2
  684. package/node_modules/typebox/build/value/mutate/from_object.mjs +0 -40
  685. package/node_modules/typebox/build/value/mutate/from_unknown.d.mts +0 -2
  686. package/node_modules/typebox/build/value/mutate/from_unknown.mjs +0 -7
  687. package/node_modules/typebox/build/value/mutate/from_value.d.mts +0 -2
  688. package/node_modules/typebox/build/value/mutate/from_value.mjs +0 -12
  689. package/node_modules/typebox/build/value/mutate/index.d.mts +0 -1
  690. package/node_modules/typebox/build/value/mutate/index.mjs +0 -1
  691. package/node_modules/typebox/build/value/mutate/mutate.d.mts +0 -11
  692. package/node_modules/typebox/build/value/mutate/mutate.mjs +0 -41
  693. package/node_modules/typebox/build/value/repair/from_base.d.mts +0 -2
  694. package/node_modules/typebox/build/value/repair/from_base.mjs +0 -8
  695. /package/node_modules/typebox/build/type/engine/{awaited → with}/index.d.mts +0 -0
  696. /package/node_modules/typebox/build/type/engine/{awaited → with}/index.mjs +0 -0
@@ -1,12 +1,14 @@
1
1
  import { type TSchema } from '../../types/schema.mjs';
2
2
  import { type TCyclic } from '../../types/cyclic.mjs';
3
+ import { type TDependent } from '../../types/dependent.mjs';
3
4
  import { type TIntersect } from '../../types/intersect.mjs';
4
5
  import { type TObject } from '../../types/object.mjs';
5
6
  import { type TProperties } from '../../types/properties.mjs';
6
7
  import { type TUnion } from '../../types/union.mjs';
7
8
  import { type TFromCyclic } from './from_cyclic.mjs';
9
+ import { type TFromDependent } from './from_dependent.mjs';
8
10
  import { type TFromIntersect } from './from_intersect.mjs';
9
11
  import { type TFromUnion } from './from_union.mjs';
10
12
  import { type TFromObject } from './from_object.mjs';
11
- export type TFromType<Type extends TSchema> = (Type extends TCyclic<infer Defs extends TProperties, infer Ref extends string> ? TFromCyclic<Defs, Ref> : Type extends TIntersect<infer Types extends TSchema[]> ? TFromIntersect<Types> : Type extends TUnion<infer Types extends TSchema[]> ? TFromUnion<Types> : Type extends TObject<infer Properties extends TProperties> ? TFromObject<Properties> : TObject<{}>);
13
+ export type TFromType<Type extends TSchema> = (Type extends TCyclic<infer Defs extends TProperties, infer Ref extends string> ? TFromCyclic<Defs, Ref> : Type extends TDependent<infer If extends TSchema, infer Then extends TSchema, infer Else extends TSchema> ? TFromDependent<If, Then, Else> : Type extends TIntersect<infer Types extends TSchema[]> ? TFromIntersect<Types> : Type extends TUnion<infer Types extends TSchema[]> ? TFromUnion<Types> : Type extends TObject<infer Properties extends TProperties> ? TFromObject<Properties> : TObject<{}>);
12
14
  export declare function FromType<Type extends TSchema>(type: Type): TFromType<Type>;
@@ -1,17 +1,20 @@
1
1
  // deno-lint-ignore-file ban-types
2
2
  // deno-fmt-ignore-file
3
3
  import { IsCyclic } from '../../types/cyclic.mjs';
4
+ import { IsDependent } from '../../types/dependent.mjs';
4
5
  import { IsIntersect } from '../../types/intersect.mjs';
5
6
  import { Object, IsObject } from '../../types/object.mjs';
6
7
  import { IsUnion } from '../../types/union.mjs';
7
8
  import { FromCyclic } from './from_cyclic.mjs';
9
+ import { FromDependent } from './from_dependent.mjs';
8
10
  import { FromIntersect } from './from_intersect.mjs';
9
11
  import { FromUnion } from './from_union.mjs';
10
12
  import { FromObject } from './from_object.mjs';
11
13
  export function FromType(type) {
12
14
  return (IsCyclic(type) ? FromCyclic(type.$defs, type.$ref) :
13
- IsIntersect(type) ? FromIntersect(type.allOf) :
14
- IsUnion(type) ? FromUnion(type.anyOf) :
15
- IsObject(type) ? FromObject(type.properties) :
16
- Object({}));
15
+ IsDependent(type) ? FromDependent(type.if, type.then, type.else) :
16
+ IsIntersect(type) ? FromIntersect(type.allOf) :
17
+ IsUnion(type) ? FromUnion(type.anyOf) :
18
+ IsObject(type) ? FromObject(type.properties) :
19
+ Object({}));
17
20
  }
@@ -9,13 +9,13 @@ import { ParsePatternIntoTypes } from '../patterns/pattern.mjs';
9
9
  import { IsTemplateLiteralFinite } from './is_finite.mjs';
10
10
  import { TemplateLiteralCreate } from './create.mjs';
11
11
  function FromLiteralPush(variants, value, result = []) {
12
- return Guard.TakeLeft(variants, (left, right) => FromLiteralPush(right, value, [...result, `${left}${value}`]), () => result);
12
+ return Guard.ShiftLeft(variants, (left, right) => FromLiteralPush(right, value, [...result, `${left}${value}`]), () => result);
13
13
  }
14
14
  function FromLiteral(variants, value) {
15
15
  return (Guard.IsEqual(variants.length, 0) ? [`${value}`] : FromLiteralPush(variants, value));
16
16
  }
17
17
  function FromUnion(variants, types, result = []) {
18
- return Guard.TakeLeft(types, (left, right) => FromUnion(variants, right, [...result, ...FromType(variants, left)]), () => result);
18
+ return Guard.ShiftLeft(types, (left, right) => FromUnion(variants, right, [...result, ...FromType(variants, left)]), () => result);
19
19
  }
20
20
  // ------------------------------------------------------------------
21
21
  // deno-coverage-ignore-start - symmetric unreachable | internal
@@ -33,7 +33,7 @@ function FromType(variants, type) {
33
33
  return result;
34
34
  }
35
35
  function DecodeFromSpan(variants, types) {
36
- return Guard.TakeLeft(types, (left, right) => DecodeFromSpan(FromType(variants, left), right), () => variants);
36
+ return Guard.ShiftLeft(types, (left, right) => DecodeFromSpan(FromType(variants, left), right), () => variants);
37
37
  }
38
38
  function VariantsToLiterals(variants) {
39
39
  return variants.map(variant => Literal(variant));
@@ -9,7 +9,7 @@ import { type TNumber, NumberPattern } from '../../types/number.mjs';
9
9
  import { type TInteger, IntegerPattern } from '../../types/integer.mjs';
10
10
  import { type TBoolean } from '../../types/boolean.mjs';
11
11
  import { NeverPattern } from '../../types/never.mjs';
12
- import { type TEnumValuesToVariants } from '../enum/enum_to_union.mjs';
12
+ import { type TEvaluateEnum } from '../evaluate/evaluate.mjs';
13
13
  import { type TTemplateLiteralAction } from './instantiate.mjs';
14
14
  type TJoinString<Input extends string[], Result extends string = ''> = (Input extends [infer Left extends string, ...infer Right extends string[]] ? Result extends '' ? TJoinString<Right, Left> : TJoinString<Right, `${Result}|${Left}`> : Result);
15
15
  type TUnwrapTemplateLiteralPattern<Pattern extends string> = (Pattern extends `^${infer Pattern extends string}$` ? Pattern : never);
@@ -21,7 +21,7 @@ type TEncodeBoolean<Right extends TSchema[], Pattern extends string> = (TEncodeT
21
21
  type TEncodeString<Right extends TSchema[], Pattern extends string> = (TEncodeTypes<Right, `${Pattern}${typeof StringPattern}`>);
22
22
  type TEncodeTemplateLiteral<TemplatePattern extends string, Right extends TSchema[], Pattern extends string> = (TEncodeTypes<Right, `${Pattern}${TUnwrapTemplateLiteralPattern<TemplatePattern>}`>);
23
23
  type TEncodeTemplateLiteralDeferred<Types extends TSchema[], Right extends TSchema[], Pattern extends string, TemplateLiteral extends TSchema = TTemplateLiteralAction<Types>, Result extends TSchema = TEncodeType<TemplateLiteral, Right, Pattern>> = Result;
24
- type TEncodeEnum<Types extends TEnumValue[], Right extends TSchema[], Pattern extends string, Variants extends TSchema[] = TEnumValuesToVariants<Types>> = TEncodeUnion<Variants, Right, Pattern>;
24
+ type TEncodeEnum<Values extends TEnumValue[], Right extends TSchema[], Pattern extends string, Evaluated extends TSchema = TEvaluateEnum<Values>> = TEncodeType<Evaluated, Right, Pattern>;
25
25
  type TEncodeUnion<Types extends TSchema[], Right extends TSchema[], Pattern extends string, Result extends string[] = []> = Types extends [infer Head extends TSchema, ...infer Tail extends TSchema[]] ? TEncodeUnion<Tail, Right, Pattern, [...Result, TEncodeType<Head, [], ''>]> : TEncodeTypes<Right, `${Pattern}(${TJoinString<Result>})`>;
26
26
  type TEncodeType<Type extends TSchema, Right extends TSchema[], Pattern extends string> = (Type extends TEnum<infer Values extends TEnumValue[]> ? TEncodeEnum<Values, Right, Pattern> : Type extends TInteger ? TEncodeInteger<Right, Pattern> : Type extends TLiteral<infer Value extends TLiteralValue> ? TEncodeLiteral<Value, Right, Pattern> : Type extends TBigInt ? TEncodeBigInt<Right, Pattern> : Type extends TBoolean ? TEncodeBoolean<Right, Pattern> : Type extends TNumber ? TEncodeNumber<Right, Pattern> : Type extends TString ? TEncodeString<Right, Pattern> : Type extends TTemplateLiteral<infer TemplatePattern extends string> ? TEncodeTemplateLiteral<TemplatePattern, Right, Pattern> : Type extends TTemplateLiteralDeferred<infer Types extends TSchema[]> ? TEncodeTemplateLiteralDeferred<Types, Right, Pattern> : Type extends TUnion<infer Types extends TSchema[]> ? TEncodeUnion<Types, Right, Pattern> : typeof NeverPattern);
27
27
  type TEncodeTypes<Types extends TSchema[], Pattern extends string> = (Types extends [infer Left extends TSchema, ...infer Right extends TSchema[]] ? TEncodeType<Left, Right, Pattern> : Pattern);
@@ -11,7 +11,7 @@ import { IsInteger, IntegerPattern } from '../../types/integer.mjs';
11
11
  import { IsBoolean } from '../../types/boolean.mjs';
12
12
  import { NeverPattern } from '../../types/never.mjs';
13
13
  import { TemplateLiteralCreate } from './create.mjs';
14
- import { EnumValuesToVariants } from '../enum/enum_to_union.mjs';
14
+ import { EvaluateEnum } from '../evaluate/evaluate.mjs';
15
15
  import { TemplateLiteralAction } from './instantiate.mjs';
16
16
  function JoinString(input) {
17
17
  return input.join('|');
@@ -45,12 +45,12 @@ function EncodeTemplateLiteralDeferred(types, right, pattern) {
45
45
  const result = EncodeType(templateLiteral, right, pattern);
46
46
  return result;
47
47
  }
48
- function EncodeEnum(types, right, pattern) {
49
- const variants = EnumValuesToVariants(types);
50
- return EncodeUnion(variants, right, pattern);
48
+ function EncodeEnum(values, right, pattern) {
49
+ const evaluated = EvaluateEnum(values);
50
+ return EncodeType(evaluated, right, pattern);
51
51
  }
52
52
  function EncodeUnion(types, right, pattern, result = []) {
53
- return Guard.TakeLeft(types, (head, tail) => EncodeUnion(tail, right, pattern, [...result, EncodeType(head, [], '')]), () => EncodeTypes(right, `${pattern}(${JoinString(result)})`));
53
+ return Guard.ShiftLeft(types, (head, tail) => EncodeUnion(tail, right, pattern, [...result, EncodeType(head, [], '')]), () => EncodeTypes(right, `${pattern}(${JoinString(result)})`));
54
54
  }
55
55
  function EncodeType(type, right, pattern) {
56
56
  return (IsEnum(type) ? EncodeEnum(type.enum, right, pattern) :
@@ -66,7 +66,7 @@ function EncodeType(type, right, pattern) {
66
66
  NeverPattern);
67
67
  }
68
68
  function EncodeTypes(types, pattern) {
69
- return Guard.TakeLeft(types, (left, right) => EncodeType(left, right, pattern), () => pattern);
69
+ return Guard.ShiftLeft(types, (left, right) => EncodeType(left, right, pattern), () => pattern);
70
70
  }
71
71
  function EncodePattern(types) {
72
72
  const encoded = EncodeTypes(types, '');
@@ -6,7 +6,7 @@ function FromLiteral(_value) {
6
6
  return true;
7
7
  }
8
8
  function FromTypesReduce(types) {
9
- return Guard.TakeLeft(types, (left, right) => FromType(left)
9
+ return Guard.ShiftLeft(types, (left, right) => FromType(left)
10
10
  ? FromTypesReduce(right)
11
11
  : false, () => true);
12
12
  }
@@ -7,3 +7,4 @@ export function IsTemplateLiteralPattern(pattern) {
7
7
  const result = Guard.IsEqual(types.length, 0) ? false : true;
8
8
  return result;
9
9
  }
10
+ // deno-coverage-ignore-stop
@@ -1,18 +1,15 @@
1
1
  import { type TArray } from '../../types/array.mjs';
2
- import { type TAsyncIterator } from '../../types/async_iterator.mjs';
3
2
  import { type TConstructor } from '../../types/constructor.mjs';
4
3
  import { type TFunction } from '../../types/function.mjs';
5
- import { type TIterator } from '../../types/iterator.mjs';
6
4
  import { type TIntersect } from '../../types/intersect.mjs';
7
5
  import { type TObject } from '../../types/object.mjs';
8
6
  import { type TProperties } from '../../types/properties.mjs';
9
7
  import { type TSchema } from '../../types/schema.mjs';
10
- import { type TPromise } from '../../types/promise.mjs';
11
8
  import { type TTuple } from '../../types/tuple.mjs';
12
9
  import { type TThis } from '../../types/this.mjs';
13
10
  import { type TUnion } from '../../types/union.mjs';
14
11
  type TFromTypes<Properties extends TProperties, Types extends TSchema[], Result extends TSchema[] = []> = (Types extends [infer Left extends TSchema, ...infer Right extends TSchema[]] ? TFromTypes<Properties, Right, [...Result, TFromType<Properties, Left>]> : Result);
15
- export type TFromType<Properties extends TProperties, Type extends TSchema> = (Type extends TArray<infer Type extends TSchema> ? TArray<TFromType<Properties, Type>> : Type extends TAsyncIterator<infer Type extends TSchema> ? TAsyncIterator<TFromType<Properties, Type>> : Type extends TConstructor<infer Parameters extends TSchema[], infer InstanceType extends TSchema> ? TConstructor<TFromTypes<Properties, Parameters>, TFromType<Properties, InstanceType>> : Type extends TFunction<infer Parameters extends TSchema[], infer ReturnType extends TSchema> ? TFunction<TFromTypes<Properties, Parameters>, TFromType<Properties, ReturnType>> : Type extends TIterator<infer Type extends TSchema> ? TIterator<TFromType<Properties, Type>> : Type extends TPromise<infer Type extends TSchema> ? TPromise<TFromType<Properties, Type>> : Type extends TTuple<infer Types extends TSchema[]> ? TTuple<TFromTypes<Properties, Types>> : Type extends TUnion<infer Types extends TSchema[]> ? TUnion<TFromTypes<Properties, Types>> : Type extends TIntersect<infer Types extends TSchema[]> ? TIntersect<TFromTypes<Properties, Types>> : Type extends TThis ? TObject<Properties> : Type);
12
+ export type TFromType<Properties extends TProperties, Type extends TSchema> = (Type extends TArray<infer Type extends TSchema> ? TArray<TFromType<Properties, Type>> : Type extends TConstructor<infer Parameters extends TSchema[], infer InstanceType extends TSchema> ? TConstructor<TFromTypes<Properties, Parameters>, TFromType<Properties, InstanceType>> : Type extends TFunction<infer Parameters extends TSchema[], infer ReturnType extends TSchema> ? TFunction<TFromTypes<Properties, Parameters>, TFromType<Properties, ReturnType>> : Type extends TTuple<infer Types extends TSchema[]> ? TTuple<TFromTypes<Properties, Types>> : Type extends TUnion<infer Types extends TSchema[]> ? TUnion<TFromTypes<Properties, Types>> : Type extends TIntersect<infer Types extends TSchema[]> ? TIntersect<TFromTypes<Properties, Types>> : Type extends TThis ? TObject<Properties> : Type);
16
13
  export declare function FromType<Properties extends TProperties, Type extends TSchema>(properties: Properties, type: Type): TFromType<Properties, Type>;
17
14
  export type TExpandThis<Properties extends TProperties, Type extends TSchema, Result extends TSchema = TFromType<Properties, Type>> = Result;
18
15
  export declare function ExpandThis<Properties extends TProperties, Type extends TSchema>(properties: TProperties, type: Type): TExpandThis<Properties, Type>;
@@ -1,12 +1,9 @@
1
1
  // deno-fmt-ignore-file
2
2
  import { IsArray, _Array_ } from '../../types/array.mjs';
3
- import { IsAsyncIterator, AsyncIterator } from '../../types/async_iterator.mjs';
4
3
  import { IsConstructor, Constructor } from '../../types/constructor.mjs';
5
4
  import { IsFunction, _Function_ } from '../../types/function.mjs';
6
- import { IsIterator, Iterator } from '../../types/iterator.mjs';
7
5
  import { IsIntersect, Intersect } from '../../types/intersect.mjs';
8
6
  import { _Object_ } from '../../types/object.mjs';
9
- import { IsPromise, Promise } from '../../types/promise.mjs';
10
7
  import { IsTuple, Tuple } from '../../types/tuple.mjs';
11
8
  import { IsThis } from '../../types/this.mjs';
12
9
  import { IsUnion, Union } from '../../types/union.mjs';
@@ -15,16 +12,13 @@ function FromTypes(properties, types) {
15
12
  }
16
13
  export function FromType(properties, type) {
17
14
  return (IsArray(type) ? _Array_(FromType(properties, type.items)) :
18
- IsAsyncIterator(type) ? AsyncIterator(FromType(properties, type.iteratorItems)) :
19
- IsConstructor(type) ? Constructor(FromTypes(properties, type.parameters), FromType(properties, type.instanceType)) :
20
- IsFunction(type) ? _Function_(FromTypes(properties, type.parameters), FromType(properties, type.returnType)) :
21
- IsIterator(type) ? Iterator(FromType(properties, type.iteratorItems)) :
22
- IsPromise(type) ? Promise(FromType(properties, type.item)) :
23
- IsTuple(type) ? Tuple(FromTypes(properties, type.items)) :
24
- IsUnion(type) ? Union(FromTypes(properties, type.anyOf)) :
25
- IsIntersect(type) ? Intersect(FromTypes(properties, type.allOf)) :
26
- IsThis(type) ? _Object_(properties) :
27
- type);
15
+ IsConstructor(type) ? Constructor(FromTypes(properties, type.parameters), FromType(properties, type.instanceType)) :
16
+ IsFunction(type) ? _Function_(FromTypes(properties, type.parameters), FromType(properties, type.returnType)) :
17
+ IsTuple(type) ? Tuple(FromTypes(properties, type.items)) :
18
+ IsUnion(type) ? Union(FromTypes(properties, type.anyOf)) :
19
+ IsIntersect(type) ? Intersect(FromTypes(properties, type.allOf)) :
20
+ IsThis(type) ? _Object_(properties) :
21
+ type);
28
22
  }
29
23
  export function ExpandThis(properties, type) {
30
24
  const result = FromType(properties, type);
@@ -0,0 +1,8 @@
1
+ import { type TProperties } from '../../types/properties.mjs';
2
+ import { type TSchema } from '../../types/schema.mjs';
3
+ import { type TState, type TInstantiateType, type TCanInstantiate } from '../instantiate.mjs';
4
+ import { type TWithDeferred, type TWith } from '../../action/with.mjs';
5
+ export type TWithAction<Type extends TSchema, Options extends TSchema, Result extends TSchema = TCanInstantiate<[Type]> extends true ? TWith<Type, Options> : TWithDeferred<Type, Options>> = Result;
6
+ export declare function WithAction<Type extends TSchema, Options extends TSchema>(type: Type, options: Options): TWithAction<Type, Options>;
7
+ export type TWithInstantiate<Context extends TProperties, State extends TState, Type extends TSchema, Options extends TSchema, InstantiatedType extends TSchema = TInstantiateType<Context, State, Type>> = TWithAction<InstantiatedType, Options>;
8
+ export declare function WithInstantiate<Context extends TProperties, State extends TState, Type extends TSchema, Options extends TSchema>(context: Context, state: State, type: Type, options: Options): TWithInstantiate<Context, State, Type, Options>;
@@ -1,14 +1,14 @@
1
1
  // deno-fmt-ignore-file
2
2
  import { Memory } from '../../../system/memory/index.mjs';
3
3
  import { InstantiateType, CanInstantiate } from '../instantiate.mjs';
4
- import { OptionsDeferred } from '../../action/options.mjs';
5
- export function OptionsAction(type, options) {
4
+ import { WithDeferred } from '../../action/with.mjs';
5
+ export function WithAction(type, options) {
6
6
  const result = CanInstantiate([type])
7
7
  ? Memory.Update(type, {}, options)
8
- : OptionsDeferred(type, options);
8
+ : WithDeferred(type, options);
9
9
  return result;
10
10
  }
11
- export function OptionsInstantiate(context, state, type, options) {
11
+ export function WithInstantiate(context, state, type, options) {
12
12
  const instaniatedType = InstantiateType(context, state, type);
13
- return OptionsAction(instaniatedType, options);
13
+ return WithAction(instaniatedType, options);
14
14
  }
@@ -0,0 +1,6 @@
1
+ import { type TProperties } from '../types/properties.mjs';
2
+ import { type TSchema } from '../types/schema.mjs';
3
+ import { type TExtendsLeft } from './extends_left.mjs';
4
+ import * as Result from './result.mjs';
5
+ export type TExtendsDependent<Inferred extends TProperties, If extends TSchema, Then extends TSchema, Else extends TSchema, Right extends TSchema> = (TExtendsLeft<Inferred, If, Right> extends Result.TExtendsTrueLike<infer Inferred extends TProperties> ? TExtendsLeft<Inferred, Then, Right> : TExtendsLeft<Inferred, Else, Right>);
6
+ export declare function ExtendsDependent<Inferred extends TProperties, If extends TSchema, Then extends TSchema, Else extends TSchema, Right extends TSchema>(inferred: Inferred, if_: If, then_: Then, else_: Else, right: Right): TExtendsDependent<Inferred, If, Then, Else, Right>;
@@ -0,0 +1,6 @@
1
+ // deno-fmt-ignore-file
2
+ import { ExtendsLeft } from './extends_left.mjs';
3
+ import * as Result from './result.mjs';
4
+ export function ExtendsDependent(inferred, if_, then_, else_, right) {
5
+ return Result.Match(ExtendsLeft(inferred, if_, right), () => ExtendsLeft(inferred, then_, right), () => ExtendsLeft(inferred, else_, right));
6
+ }
@@ -1,7 +1,7 @@
1
1
  import { type TSchema } from '../types/schema.mjs';
2
2
  import { type TProperties } from '../types/properties.mjs';
3
- import { type TEnum } from '../types/enum.mjs';
3
+ import { type TEnumValue } from '../types/enum.mjs';
4
4
  import { type TExtendsLeft } from './extends_left.mjs';
5
- import { type TEnumToUnion } from '../engine/enum/index.mjs';
6
- export type TExtendsEnum<Inferred extends TProperties, Left extends TEnum, Right extends TSchema> = (TExtendsLeft<Inferred, TEnumToUnion<Left>, Right>);
7
- export declare function ExtendsEnum<Inferred extends TProperties, Left extends TEnum, Right extends TSchema>(inferred: Inferred, left: Left, right: Right): TExtendsEnum<Inferred, Left, Right>;
5
+ import { type TEvaluateEnum } from '../engine/evaluate/evaluate.mjs';
6
+ export type TExtendsEnum<Inferred extends TProperties, Left extends TEnumValue[], Right extends TSchema, Evaluated extends TSchema = TEvaluateEnum<Left>> = TExtendsLeft<Inferred, Evaluated, Right>;
7
+ export declare function ExtendsEnum<Inferred extends TProperties, Left extends TEnumValue[], Right extends TSchema>(inferred: Inferred, left: Left, right: Right): TExtendsEnum<Inferred, Left, Right>;
@@ -1,6 +1,7 @@
1
1
  // deno-fmt-ignore-file
2
2
  import { ExtendsLeft } from './extends_left.mjs';
3
- import { EnumToUnion } from '../engine/enum/index.mjs';
3
+ import { EvaluateEnum } from '../engine/evaluate/evaluate.mjs';
4
4
  export function ExtendsEnum(inferred, left, right) {
5
- return ExtendsLeft(inferred, EnumToUnion(left), right);
5
+ const evaluated = EvaluateEnum(left);
6
+ return ExtendsLeft(inferred, evaluated, right);
6
7
  }
@@ -1,20 +1,19 @@
1
1
  import { type TExtendsAny } from './any.mjs';
2
2
  import { type TExtendsArray } from './array.mjs';
3
- import { type TExtendsAsyncIterator } from './async_iterator.mjs';
4
3
  import { type TExtendsBigInt } from './bigint.mjs';
5
4
  import { type TExtendsBoolean } from './boolean.mjs';
6
5
  import { type TExtendsConstructor } from './constructor.mjs';
6
+ import { type TExtendsDependent } from './dependent.mjs';
7
7
  import { type TExtendsEnum } from './enum.mjs';
8
8
  import { type TExtendsFunction } from './function.mjs';
9
9
  import { type TExtendsInteger } from './integer.mjs';
10
10
  import { type TExtendsIntersect } from './intersect.mjs';
11
- import { type TExtendsIterator } from './iterator.mjs';
12
11
  import { type TExtendsLiteral } from './literal.mjs';
13
12
  import { type TExtendsNever } from './never.mjs';
14
13
  import { type TExtendsNull } from './null.mjs';
15
14
  import { type TExtendsNumber } from './number.mjs';
16
15
  import { type TExtendsObject } from './object.mjs';
17
- import { type TExtendsPromise } from './promise.mjs';
16
+ import { type TExtendsRecord } from './record.mjs';
18
17
  import { type TExtendsString } from './string.mjs';
19
18
  import { type TExtendsSymbol } from './symbol.mjs';
20
19
  import { type TExtendsTemplateLiteral } from './template_literal.mjs';
@@ -25,21 +24,20 @@ import { type TExtendsUnknown } from './unknown.mjs';
25
24
  import { type TExtendsVoid } from './void.mjs';
26
25
  import { type TAny } from '../types/any.mjs';
27
26
  import { type TArray } from '../types/array.mjs';
28
- import { type TAsyncIterator } from '../types/async_iterator.mjs';
29
27
  import { type TBigInt } from '../types/bigint.mjs';
30
28
  import { type TBoolean } from '../types/boolean.mjs';
31
29
  import { type TConstructor } from '../types/constructor.mjs';
30
+ import { type TDependent } from '../types/dependent.mjs';
32
31
  import { type TEnum, type TEnumValue } from '../types/enum.mjs';
33
32
  import { type TFunction } from '../types/function.mjs';
34
33
  import { type TInteger } from '../types/integer.mjs';
35
34
  import { type TIntersect } from '../types/intersect.mjs';
36
- import { type TIterator } from '../types/iterator.mjs';
37
35
  import { type TLiteral } from '../types/literal.mjs';
38
36
  import { type TNever } from '../types/never.mjs';
39
37
  import { type TNull } from '../types/null.mjs';
40
38
  import { type TNumber } from '../types/number.mjs';
41
39
  import { type TObject } from '../types/object.mjs';
42
- import { type TPromise } from '../types/promise.mjs';
40
+ import { type TRecord } from '../types/record.mjs';
43
41
  import { type TSchema } from '../types/schema.mjs';
44
42
  import { type TString } from '../types/string.mjs';
45
43
  import { type TSymbol } from '../types/symbol.mjs';
@@ -51,5 +49,5 @@ import { type TProperties } from '../types/properties.mjs';
51
49
  import { type TUnion } from '../types/union.mjs';
52
50
  import { type TVoid } from '../types/void.mjs';
53
51
  import * as Result from './result.mjs';
54
- export type TExtendsLeft<Inferred extends TProperties, Left extends TSchema, Right extends TSchema> = (Left extends TAny ? TExtendsAny<Inferred, Left, Right> : Left extends TArray<infer Items extends TSchema> ? TExtendsArray<Inferred, Left, Items, Right> : Left extends TAsyncIterator<infer Type extends TSchema> ? TExtendsAsyncIterator<Inferred, Type, Right> : Left extends TBigInt ? TExtendsBigInt<Inferred, Left, Right> : Left extends TBoolean ? TExtendsBoolean<Inferred, Left, Right> : Left extends TConstructor<infer Parameters extends TSchema[], infer InstanceType extends TSchema> ? TExtendsConstructor<Inferred, Parameters, InstanceType, Right> : Left extends TEnum<infer Values extends TEnumValue[]> ? TExtendsEnum<Inferred, TEnum<Values>, Right> : Left extends TFunction<infer Parameters extends TSchema[], infer ReturnType extends TSchema> ? TExtendsFunction<Inferred, Parameters, ReturnType, Right> : Left extends TInteger ? TExtendsInteger<Inferred, Left, Right> : Left extends TIntersect<infer Types extends TSchema[]> ? TExtendsIntersect<Inferred, Types, Right> : Left extends TIterator<infer Type extends TSchema> ? TExtendsIterator<Inferred, Type, Right> : Left extends TLiteral ? TExtendsLiteral<Inferred, Left, Right> : Left extends TNever ? TExtendsNever<Inferred, Left, Right> : Left extends TNull ? TExtendsNull<Inferred, Left, Right> : Left extends TNumber ? TExtendsNumber<Inferred, Left, Right> : Left extends TObject<infer Properties extends TProperties> ? TExtendsObject<Inferred, Properties, Right> : Left extends TPromise<infer Type extends TSchema> ? TExtendsPromise<Inferred, Type, Right> : Left extends TString ? TExtendsString<Inferred, Left, Right> : Left extends TSymbol ? TExtendsSymbol<Inferred, Left, Right> : Left extends TTemplateLiteral<infer Pattern extends string> ? TExtendsTemplateLiteral<Inferred, Pattern, Right> : Left extends TTuple<infer Types extends TSchema[]> ? TExtendsTuple<Inferred, Types, Right> : Left extends TUndefined ? TExtendsUndefined<Inferred, Left, Right> : Left extends TUnion<infer Types extends TSchema[]> ? TExtendsUnion<Inferred, Types, Right> : Left extends TUnknown ? TExtendsUnknown<Inferred, Left, Right> : Left extends TVoid ? TExtendsVoid<Inferred, Left, Right> : Result.TExtendsFalse);
52
+ export type TExtendsLeft<Inferred extends TProperties, Left extends TSchema, Right extends TSchema> = (Left extends TAny ? TExtendsAny<Inferred, Left, Right> : Left extends TArray<infer Items extends TSchema> ? TExtendsArray<Inferred, Left, Items, Right> : Left extends TBigInt ? TExtendsBigInt<Inferred, Left, Right> : Left extends TBoolean ? TExtendsBoolean<Inferred, Left, Right> : Left extends TConstructor<infer Parameters extends TSchema[], infer InstanceType extends TSchema> ? TExtendsConstructor<Inferred, Parameters, InstanceType, Right> : Left extends TDependent<infer If extends TSchema, infer Then extends TSchema, infer Else extends TSchema> ? TExtendsDependent<Inferred, If, Then, Else, Right> : Left extends TEnum<infer Values extends TEnumValue[]> ? TExtendsEnum<Inferred, Values, Right> : Left extends TFunction<infer Parameters extends TSchema[], infer ReturnType extends TSchema> ? TExtendsFunction<Inferred, Parameters, ReturnType, Right> : Left extends TInteger ? TExtendsInteger<Inferred, Left, Right> : Left extends TIntersect<infer Types extends TSchema[]> ? TExtendsIntersect<Inferred, Types, Right> : Left extends TLiteral ? TExtendsLiteral<Inferred, Left, Right> : Left extends TNever ? TExtendsNever<Inferred, Left, Right> : Left extends TNull ? TExtendsNull<Inferred, Left, Right> : Left extends TNumber ? TExtendsNumber<Inferred, Left, Right> : Left extends TObject<infer Properties extends TProperties> ? TExtendsObject<Inferred, Properties, Right> : Left extends TRecord<infer Pattern extends string, infer Value extends TSchema> ? TExtendsRecord<Inferred, Pattern, Value, Right> : Left extends TString ? TExtendsString<Inferred, Left, Right> : Left extends TSymbol ? TExtendsSymbol<Inferred, Left, Right> : Left extends TTemplateLiteral<infer Pattern extends string> ? TExtendsTemplateLiteral<Inferred, Pattern, Right> : Left extends TTuple<infer Types extends TSchema[]> ? TExtendsTuple<Inferred, Types, Right> : Left extends TUndefined ? TExtendsUndefined<Inferred, Left, Right> : Left extends TUnion<infer Types extends TSchema[]> ? TExtendsUnion<Inferred, Types, Right> : Left extends TUnknown ? TExtendsUnknown<Inferred, Left, Right> : Left extends TVoid ? TExtendsVoid<Inferred, Left, Right> : Result.TExtendsFalse);
55
53
  export declare function ExtendsLeft<Inferred extends TProperties, Left extends TSchema, Right extends TSchema>(inferred: Inferred, left: Left, right: Right): TExtendsLeft<Inferred, Left, Right>;
@@ -1,21 +1,20 @@
1
1
  // deno-fmt-ignore-file
2
2
  import { ExtendsAny } from './any.mjs';
3
3
  import { ExtendsArray } from './array.mjs';
4
- import { ExtendsAsyncIterator } from './async_iterator.mjs';
5
4
  import { ExtendsBigInt } from './bigint.mjs';
6
5
  import { ExtendsBoolean } from './boolean.mjs';
7
6
  import { ExtendsConstructor } from './constructor.mjs';
7
+ import { ExtendsDependent } from './dependent.mjs';
8
8
  import { ExtendsEnum } from './enum.mjs';
9
9
  import { ExtendsFunction } from './function.mjs';
10
10
  import { ExtendsInteger } from './integer.mjs';
11
11
  import { ExtendsIntersect } from './intersect.mjs';
12
- import { ExtendsIterator } from './iterator.mjs';
13
12
  import { ExtendsLiteral } from './literal.mjs';
14
13
  import { ExtendsNever } from './never.mjs';
15
14
  import { ExtendsNull } from './null.mjs';
16
15
  import { ExtendsNumber } from './number.mjs';
17
16
  import { ExtendsObject } from './object.mjs';
18
- import { ExtendsPromise } from './promise.mjs';
17
+ import { ExtendsRecord } from './record.mjs';
19
18
  import { ExtendsString } from './string.mjs';
20
19
  import { ExtendsSymbol } from './symbol.mjs';
21
20
  import { ExtendsTemplateLiteral } from './template_literal.mjs';
@@ -29,21 +28,20 @@ import { ExtendsVoid } from './void.mjs';
29
28
  // ----------------------------------------------------------------------------
30
29
  import { IsAny } from '../types/any.mjs';
31
30
  import { IsArray } from '../types/array.mjs';
32
- import { IsAsyncIterator } from '../types/async_iterator.mjs';
33
31
  import { IsBigInt } from '../types/bigint.mjs';
34
32
  import { IsBoolean } from '../types/boolean.mjs';
35
33
  import { IsConstructor } from '../types/constructor.mjs';
34
+ import { IsDependent } from '../types/dependent.mjs';
36
35
  import { IsEnum } from '../types/enum.mjs';
37
36
  import { IsFunction } from '../types/function.mjs';
38
37
  import { IsInteger } from '../types/integer.mjs';
39
38
  import { IsIntersect } from '../types/intersect.mjs';
40
- import { IsIterator } from '../types/iterator.mjs';
41
39
  import { IsLiteral } from '../types/literal.mjs';
42
40
  import { IsNever } from '../types/never.mjs';
43
41
  import { IsNull } from '../types/null.mjs';
44
42
  import { IsNumber } from '../types/number.mjs';
45
43
  import { IsObject } from '../types/object.mjs';
46
- import { IsPromise } from '../types/promise.mjs';
44
+ import { IsRecord, RecordPattern, RecordValue } from '../types/record.mjs';
47
45
  import { IsString } from '../types/string.mjs';
48
46
  import { IsSymbol } from '../types/symbol.mjs';
49
47
  import { IsTemplateLiteral } from '../types/template_literal.mjs';
@@ -56,28 +54,27 @@ import * as Result from './result.mjs';
56
54
  export function ExtendsLeft(inferred, left, right) {
57
55
  return (IsAny(left) ? ExtendsAny(inferred, left, right) :
58
56
  IsArray(left) ? ExtendsArray(inferred, left, left.items, right) :
59
- IsAsyncIterator(left) ? ExtendsAsyncIterator(inferred, left.iteratorItems, right) :
60
- IsBigInt(left) ? ExtendsBigInt(inferred, left, right) :
61
- IsBoolean(left) ? ExtendsBoolean(inferred, left, right) :
62
- IsConstructor(left) ? ExtendsConstructor(inferred, left.parameters, left.instanceType, right) :
63
- IsEnum(left) ? ExtendsEnum(inferred, left, right) :
57
+ IsBigInt(left) ? ExtendsBigInt(inferred, left, right) :
58
+ IsBoolean(left) ? ExtendsBoolean(inferred, left, right) :
59
+ IsConstructor(left) ? ExtendsConstructor(inferred, left.parameters, left.instanceType, right) :
60
+ IsDependent(left) ? ExtendsDependent(inferred, left.if, left.then, left.else, right) :
61
+ IsEnum(left) ? ExtendsEnum(inferred, left.enum, right) :
64
62
  IsFunction(left) ? ExtendsFunction(inferred, left.parameters, left.returnType, right) :
65
63
  IsInteger(left) ? ExtendsInteger(inferred, left, right) :
66
64
  IsIntersect(left) ? ExtendsIntersect(inferred, left.allOf, right) :
67
- IsIterator(left) ? ExtendsIterator(inferred, left.iteratorItems, right) :
68
- IsLiteral(left) ? ExtendsLiteral(inferred, left, right) :
69
- IsNever(left) ? ExtendsNever(inferred, left, right) :
70
- IsNull(left) ? ExtendsNull(inferred, left, right) :
71
- IsNumber(left) ? ExtendsNumber(inferred, left, right) :
72
- IsObject(left) ? ExtendsObject(inferred, left.properties, right) :
73
- IsPromise(left) ? ExtendsPromise(inferred, left.item, right) :
74
- IsString(left) ? ExtendsString(inferred, left, right) :
75
- IsSymbol(left) ? ExtendsSymbol(inferred, left, right) :
76
- IsTemplateLiteral(left) ? ExtendsTemplateLiteral(inferred, left.pattern, right) :
77
- IsTuple(left) ? ExtendsTuple(inferred, left.items, right) :
78
- IsUndefined(left) ? ExtendsUndefined(inferred, left, right) :
79
- IsUnion(left) ? ExtendsUnion(inferred, left.anyOf, right) :
80
- IsUnknown(left) ? ExtendsUnknown(inferred, left, right) :
81
- IsVoid(left) ? ExtendsVoid(inferred, left, right) :
82
- Result.ExtendsFalse());
65
+ IsLiteral(left) ? ExtendsLiteral(inferred, left, right) :
66
+ IsNever(left) ? ExtendsNever(inferred, left, right) :
67
+ IsNull(left) ? ExtendsNull(inferred, left, right) :
68
+ IsNumber(left) ? ExtendsNumber(inferred, left, right) :
69
+ IsObject(left) ? ExtendsObject(inferred, left.properties, right) :
70
+ IsRecord(left) ? ExtendsRecord(inferred, RecordPattern(left), RecordValue(left), right) :
71
+ IsString(left) ? ExtendsString(inferred, left, right) :
72
+ IsSymbol(left) ? ExtendsSymbol(inferred, left, right) :
73
+ IsTemplateLiteral(left) ? ExtendsTemplateLiteral(inferred, left.pattern, right) :
74
+ IsTuple(left) ? ExtendsTuple(inferred, left.items, right) :
75
+ IsUndefined(left) ? ExtendsUndefined(inferred, left, right) :
76
+ IsUnion(left) ? ExtendsUnion(inferred, left.anyOf, right) :
77
+ IsUnknown(left) ? ExtendsUnknown(inferred, left, right) :
78
+ IsVoid(left) ? ExtendsVoid(inferred, left, right) :
79
+ Result.ExtendsFalse());
83
80
  }
@@ -2,6 +2,7 @@ import { Memory } from '../../system/memory/index.mjs';
2
2
  import { type TSchema } from '../types/schema.mjs';
3
3
  import { type TProperties } from '../types/properties.mjs';
4
4
  import { type TAny } from '../types/any.mjs';
5
+ import { type TDependent } from '../types/dependent.mjs';
5
6
  import { type TEnum, type TEnumValue } from '../types/enum.mjs';
6
7
  import { type TInfer } from '../types/infer.mjs';
7
8
  import { type TIntersect } from '../types/intersect.mjs';
@@ -10,16 +11,17 @@ import { type TUnion } from '../types/union.mjs';
10
11
  import { type TUnknown } from '../types/unknown.mjs';
11
12
  import { type TExtendsLeft } from './extends_left.mjs';
12
13
  import * as Result from './result.mjs';
13
- import { type TTemplateLiteralDecode } from '../engine/template_literal/decode.mjs';
14
- import { type TEnumValuesToUnion } from '../engine/enum/index.mjs';
14
+ import { type TEvaluateEnum } from '../engine/evaluate/evaluate.mjs';
15
+ import { type TEvaluateTemplateLiteral } from '../engine/evaluate/evaluate.mjs';
15
16
  type TExtendsRightInfer<Inferred extends TProperties, Name extends string, Left extends TSchema, Right extends TSchema, Result extends Result.TResult = (TExtendsLeft<Inferred, Left, Right> extends Result.TExtendsTrueLike<infer CheckInferred extends TProperties> ? Result.TExtendsTrue<Memory.TAssign<Memory.TAssign<Inferred, CheckInferred>, {
16
17
  [_ in Name]: Left;
17
18
  }>> : Result.TExtendsFalse)> = Result;
18
19
  type TExtendsRightAny<Inferred extends TProperties, _Left extends TSchema, Result extends Result.TResult = Result.TExtendsTrue<Inferred>> = Result;
19
- type TExtendsRightEnum<Inferred extends TProperties, Left extends TSchema, Right extends TEnumValue[], Union extends TSchema = TEnumValuesToUnion<Right>> = TExtendsLeft<Inferred, Left, Union>;
20
+ type TExtendsRightDependent<Inferred extends TProperties, Left extends TSchema, If extends TSchema, Then extends TSchema, Else extends TSchema, Result extends Result.TResult = TExtendsLeft<Inferred, Left, If> extends Result.TExtendsTrueLike<infer Inferred extends TProperties> ? (TExtendsLeft<Inferred, Left, Then> extends Result.TExtendsTrueLike<infer Inferred extends TProperties> ? Result.TExtendsTrue<Inferred> : Result.TExtendsFalse) : (TExtendsLeft<Inferred, Left, Else> extends Result.TExtendsTrueLike<infer Inferred extends TProperties> ? Result.TExtendsTrue<Inferred> : Result.TExtendsFalse)> = Result;
21
+ type TExtendsRightEnum<Inferred extends TProperties, Left extends TSchema, Right extends TEnumValue[], Evaluated extends TSchema = TEvaluateEnum<Right>> = TExtendsLeft<Inferred, Left, Evaluated>;
20
22
  type TExtendsRightIntersect<Inferred extends TProperties, Left extends TSchema, Right extends TSchema[]> = (Right extends [infer Head extends TSchema, ...infer Tail extends TSchema[]] ? TExtendsLeft<Inferred, Left, Head> extends Result.TExtendsTrueLike<infer Inferred extends TProperties> ? TExtendsRightIntersect<Inferred, Left, Tail> : Result.TExtendsFalse : Result.TExtendsTrue<Inferred>);
21
- type TExtendsRightTemplateLiteral<Inferred extends TProperties, Left extends TSchema, Right extends string, Decoded extends TSchema = TTemplateLiteralDecode<Right>> = TExtendsLeft<Inferred, Left, Decoded>;
23
+ type TExtendsRightTemplateLiteral<Inferred extends TProperties, Left extends TSchema, Right extends string, Evaluated extends TSchema = TEvaluateTemplateLiteral<Right>> = TExtendsLeft<Inferred, Left, Evaluated>;
22
24
  type TExtendsRightUnion<Inferred extends TProperties, Left extends TSchema, Right extends TSchema[]> = (Right extends [infer Head extends TSchema, ...infer Tail extends TSchema[]] ? TExtendsLeft<Inferred, Left, Head> extends Result.TExtendsTrueLike<infer Inferred extends TProperties> ? Result.TExtendsTrue<Inferred> : TExtendsRightUnion<Inferred, Left, Tail> : Result.TExtendsFalse);
23
- export type TExtendsRight<Inferred extends TProperties, Left extends TSchema, Right extends TSchema> = (Right extends TAny ? TExtendsRightAny<Inferred, Left> : Right extends TEnum<infer Values extends TEnumValue[]> ? TExtendsRightEnum<Inferred, Left, Values> : Right extends TInfer<infer Name extends string, infer Type extends TSchema> ? TExtendsRightInfer<Inferred, Name, Left, Type> : Right extends TTemplateLiteral<infer Pattern extends string> ? TExtendsRightTemplateLiteral<Inferred, Left, Pattern> : Right extends TIntersect<infer Types extends TSchema[]> ? TExtendsRightIntersect<Inferred, Left, Types> : Right extends TUnion<infer Types extends TSchema[]> ? TExtendsRightUnion<Inferred, Left, Types> : Right extends TUnknown ? Result.TExtendsTrue<Inferred> : Result.TExtendsFalse);
25
+ export type TExtendsRight<Inferred extends TProperties, Left extends TSchema, Right extends TSchema> = (Right extends TAny ? TExtendsRightAny<Inferred, Left> : Right extends TDependent<infer If extends TSchema, infer Then extends TSchema, infer Else extends TSchema> ? TExtendsRightDependent<Inferred, Left, If, Then, Else> : Right extends TEnum<infer Values extends TEnumValue[]> ? TExtendsRightEnum<Inferred, Left, Values> : Right extends TInfer<infer Name extends string, infer Type extends TSchema> ? TExtendsRightInfer<Inferred, Name, Left, Type> : Right extends TTemplateLiteral<infer Pattern extends string> ? TExtendsRightTemplateLiteral<Inferred, Left, Pattern> : Right extends TIntersect<infer Types extends TSchema[]> ? TExtendsRightIntersect<Inferred, Left, Types> : Right extends TUnion<infer Types extends TSchema[]> ? TExtendsRightUnion<Inferred, Left, Types> : Right extends TUnknown ? Result.TExtendsTrue<Inferred> : Result.TExtendsFalse);
24
26
  export declare function ExtendsRight<Inferred extends TProperties, Left extends TSchema, Right extends TSchema>(inferred: Inferred, left: Left, right: Right): TExtendsRight<Inferred, Left, Right>;
25
27
  export {};
@@ -2,6 +2,7 @@
2
2
  import { Guard } from '../../guard/index.mjs';
3
3
  import { Memory } from '../../system/memory/index.mjs';
4
4
  import { IsAny } from '../types/any.mjs';
5
+ import { IsDependent } from '../types/dependent.mjs';
5
6
  import { IsEnum } from '../types/enum.mjs';
6
7
  import { IsInfer } from '../types/infer.mjs';
7
8
  import { IsIntersect } from '../types/intersect.mjs';
@@ -10,35 +11,39 @@ import { IsUnion } from '../types/union.mjs';
10
11
  import { IsUnknown } from '../types/unknown.mjs';
11
12
  import { ExtendsLeft } from './extends_left.mjs';
12
13
  import * as Result from './result.mjs';
13
- import { TemplateLiteralDecode } from '../engine/template_literal/decode.mjs';
14
- import { EnumValuesToUnion } from '../engine/enum/index.mjs';
14
+ import { EvaluateEnum } from '../engine/evaluate/evaluate.mjs';
15
+ import { EvaluateTemplateLiteral } from '../engine/evaluate/evaluate.mjs';
15
16
  function ExtendsRightInfer(inferred, name, left, right) {
16
17
  return Result.Match(ExtendsLeft(inferred, left, right), checkInferred => Result.ExtendsTrue(Memory.Assign(Memory.Assign(inferred, checkInferred), { [name]: left })), () => Result.ExtendsFalse());
17
18
  }
18
19
  function ExtendsRightAny(inferred, _left) {
19
20
  return Result.ExtendsTrue(inferred);
20
21
  }
22
+ function ExtendsRightDependent(inferred, left, if_, then_, else_) {
23
+ return Result.Match(ExtendsLeft(inferred, left, if_), inferred => Result.Match(ExtendsLeft(inferred, left, then_), inferred => Result.ExtendsTrue(inferred), () => Result.ExtendsFalse()), () => Result.Match(ExtendsLeft(inferred, left, else_), inferred => Result.ExtendsTrue(inferred), () => Result.ExtendsFalse()));
24
+ }
21
25
  function ExtendsRightEnum(inferred, left, right) {
22
- const union = EnumValuesToUnion(right);
23
- return ExtendsLeft(inferred, left, union);
26
+ const evaluated = EvaluateEnum(right);
27
+ return ExtendsLeft(inferred, left, evaluated);
24
28
  }
25
29
  function ExtendsRightIntersect(inferred, left, right) {
26
- return Guard.TakeLeft(right, (head, tail) => Result.Match(ExtendsLeft(inferred, left, head), inferred => ExtendsRightIntersect(inferred, left, tail), () => Result.ExtendsFalse()), () => Result.ExtendsTrue(inferred));
30
+ return Guard.ShiftLeft(right, (head, tail) => Result.Match(ExtendsLeft(inferred, left, head), inferred => ExtendsRightIntersect(inferred, left, tail), () => Result.ExtendsFalse()), () => Result.ExtendsTrue(inferred));
27
31
  }
28
32
  function ExtendsRightTemplateLiteral(inferred, left, right) {
29
- const decoded = TemplateLiteralDecode(right);
30
- return ExtendsLeft(inferred, left, decoded);
33
+ const evaluated = EvaluateTemplateLiteral(right);
34
+ return ExtendsLeft(inferred, left, evaluated);
31
35
  }
32
36
  function ExtendsRightUnion(inferred, left, right) {
33
- return Guard.TakeLeft(right, (head, tail) => Result.Match(ExtendsLeft(inferred, left, head), inferred => Result.ExtendsTrue(inferred), () => ExtendsRightUnion(inferred, left, tail)), () => Result.ExtendsFalse());
37
+ return Guard.ShiftLeft(right, (head, tail) => Result.Match(ExtendsLeft(inferred, left, head), inferred => Result.ExtendsTrue(inferred), () => ExtendsRightUnion(inferred, left, tail)), () => Result.ExtendsFalse());
34
38
  }
35
39
  export function ExtendsRight(inferred, left, right) {
36
40
  return (IsAny(right) ? ExtendsRightAny(inferred, left) :
37
- IsEnum(right) ? ExtendsRightEnum(inferred, left, right.enum) :
38
- IsInfer(right) ? ExtendsRightInfer(inferred, right.name, left, right.extends) :
39
- IsIntersect(right) ? ExtendsRightIntersect(inferred, left, right.allOf) :
40
- IsTemplateLiteral(right) ? ExtendsRightTemplateLiteral(inferred, left, right.pattern) :
41
- IsUnion(right) ? ExtendsRightUnion(inferred, left, right.anyOf) :
42
- IsUnknown(right) ? Result.ExtendsTrue(inferred) :
43
- Result.ExtendsFalse());
41
+ IsDependent(right) ? ExtendsRightDependent(inferred, left, right.if, right.then, right.else) :
42
+ IsEnum(right) ? ExtendsRightEnum(inferred, left, right.enum) :
43
+ IsInfer(right) ? ExtendsRightInfer(inferred, right.name, left, right.extends) :
44
+ IsIntersect(right) ? ExtendsRightIntersect(inferred, left, right.allOf) :
45
+ IsTemplateLiteral(right) ? ExtendsRightTemplateLiteral(inferred, left, right.pattern) :
46
+ IsUnion(right) ? ExtendsRightUnion(inferred, left, right.anyOf) :
47
+ IsUnknown(right) ? Result.ExtendsTrue(inferred) :
48
+ Result.ExtendsFalse());
44
49
  }
@@ -46,7 +46,7 @@ export function TryInferable(type) {
46
46
  undefined);
47
47
  }
48
48
  function TryInferResults(rest, right, result = []) {
49
- return Guard.TakeLeft(rest, (head, tail) => Result.Match(ExtendsLeft({}, head, right), () => TryInferResults(tail, right, [...result, head]), () => undefined), () => result);
49
+ return Guard.ShiftLeft(rest, (head, tail) => Result.Match(ExtendsLeft({}, head, right), () => TryInferResults(tail, right, [...result, head]), () => undefined), () => result);
50
50
  }
51
51
  export function InferTupleResult(inferred, name, left, right) {
52
52
  const results = TryInferResults(left, right);
@@ -6,6 +6,8 @@ import { type TOptional } from '../types/_optional.mjs';
6
6
  import { type TInfer } from '../types/infer.mjs';
7
7
  import { type TNever } from '../types/never.mjs';
8
8
  import { type TObject } from '../types/object.mjs';
9
+ import { type TRecord } from '../types/record.mjs';
10
+ import { type TUnion } from '../types/union.mjs';
9
11
  import { type TExtendsLeft } from './extends_left.mjs';
10
12
  import { type TExtendsRight } from './extends_right.mjs';
11
13
  import { type TUnionToTuple } from '../engine/helpers/union.mjs';
@@ -20,6 +22,11 @@ type TExtendsPropertiesComparer<Inferred extends TProperties, Left extends TProp
20
22
  }, Checked extends boolean = Properties[keyof Right] extends Result.TExtendsTrueLike ? true : false, Extracted extends TProperties = Checked extends true ? TExtractInferredProperties<TUnionToTuple<keyof Properties>, Properties> : {}> = (Checked extends true ? Result.TExtendsTrue<Extracted> : Result.TExtendsFalse);
21
23
  type TExtendsProperties<Inferred extends TProperties, Left extends TProperties, Right extends TProperties, Compared extends Result.TResult = TExtendsPropertiesComparer<Inferred, Left, Right>> = (Compared extends Result.TExtendsTrueLike<infer ComparedInferred extends TProperties> ? Result.TExtendsTrue<Memory.TAssign<Inferred, ComparedInferred>> : Result.TExtendsFalse);
22
24
  type TExtendsObjectToObject<Inferred extends TProperties, Left extends TProperties, Right extends TProperties> = (TExtendsProperties<Inferred, Left, Right>);
23
- export type TExtendsObject<Inferred extends TProperties, Left extends TProperties, Right extends TSchema> = (Right extends TObject<infer Properties extends TProperties> ? TExtendsObjectToObject<Inferred, Left, Properties> : TExtendsRight<Inferred, TObject<Left>, Right>);
25
+ type TRecordMergeInferred<Left extends TProperties, Right extends TProperties, Result extends TProperties = {
26
+ [Key in keyof Right]: Key extends keyof Left ? Left[Key] extends TUnion<infer Types extends TSchema[]> ? TUnion<[...Types, Right[Key]]> : TUnion<[Left[Key], Right[Key]]> : Right[Key];
27
+ }> = Result;
28
+ type TExtendsRecordComparer<Properties extends TProperties, Keys extends (keyof Properties)[], Type extends TSchema, Result extends TProperties> = (Keys extends [infer Left extends (keyof Properties), ...infer Right extends (keyof Properties)[]] ? TExtendsLeft<{}, Properties[Left], Type> extends Result.TExtendsTrueLike<infer Inferred extends TProperties> ? TExtendsRecordComparer<Properties, Right, Type, TRecordMergeInferred<Result, Inferred>> : Result.TExtendsFalse : Result.TExtendsTrue<Result>);
29
+ type TExtendsObjectToRecord<Inferred extends TProperties, Properties extends TProperties, _Pattern extends string, Value extends TSchema, Keys extends (keyof Properties)[] = TUnionToTuple<keyof Properties>, Result extends Result.TResult = TExtendsRecordComparer<Properties, Keys, Value, Inferred>> = Result;
30
+ export type TExtendsObject<Inferred extends TProperties, Left extends TProperties, Right extends TSchema> = (Right extends TRecord<infer Pattern extends string, infer Value extends TSchema> ? TExtendsObjectToRecord<Inferred, Left, Pattern, Value> : Right extends TObject<infer Properties extends TProperties> ? TExtendsObjectToObject<Inferred, Left, Properties> : TExtendsRight<Inferred, TObject<Left>, Right>);
24
31
  export declare function ExtendsObject<Inferred extends TProperties, Left extends TProperties, Right extends TSchema>(inferred: Inferred, left: Left, right: Right): TExtendsObject<Inferred, Left, Right>;
25
32
  export {};