@blade-hq/agent-client 1.1.1 → 1.1.2

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 (583) hide show
  1. package/README.md +48 -25
  2. package/dist/blade-client.d.ts +2 -14
  3. package/dist/index.d.ts +5 -2
  4. package/dist/index.js +212 -106
  5. package/dist/index.js.map +1 -1
  6. package/dist/resources/models.d.ts +15 -0
  7. package/dist/resources/sessions.d.ts +8 -1
  8. package/dist/session/agent-session.d.ts +10 -0
  9. package/dist/session/definition.d.ts +49 -0
  10. package/dist/shared/projection/helpers.d.ts +1 -1
  11. package/dist/types/rest.d.ts +378 -10
  12. package/dist/version.d.ts +4 -42
  13. package/node_modules/@ark/schema/LICENSE +7 -0
  14. package/node_modules/@ark/schema/README.md +18 -0
  15. package/node_modules/@ark/schema/out/config.d.ts +58 -0
  16. package/node_modules/@ark/schema/out/config.js +95 -0
  17. package/node_modules/@ark/schema/out/constraint.d.ts +67 -0
  18. package/node_modules/@ark/schema/out/constraint.js +136 -0
  19. package/node_modules/@ark/schema/out/generic.d.ts +73 -0
  20. package/node_modules/@ark/schema/out/generic.js +76 -0
  21. package/node_modules/@ark/schema/out/index.d.ts +47 -0
  22. package/node_modules/@ark/schema/out/index.js +47 -0
  23. package/node_modules/@ark/schema/out/intrinsic.d.ts +24 -0
  24. package/node_modules/@ark/schema/out/intrinsic.js +56 -0
  25. package/node_modules/@ark/schema/out/kinds.d.ts +73 -0
  26. package/node_modules/@ark/schema/out/kinds.js +71 -0
  27. package/node_modules/@ark/schema/out/module.d.ts +24 -0
  28. package/node_modules/@ark/schema/out/module.js +15 -0
  29. package/node_modules/@ark/schema/out/node.d.ts +154 -0
  30. package/node_modules/@ark/schema/out/node.js +438 -0
  31. package/node_modules/@ark/schema/out/parse.d.ts +52 -0
  32. package/node_modules/@ark/schema/out/parse.js +215 -0
  33. package/node_modules/@ark/schema/out/predicate.d.ts +52 -0
  34. package/node_modules/@ark/schema/out/predicate.js +63 -0
  35. package/node_modules/@ark/schema/out/refinements/after.d.ts +41 -0
  36. package/node_modules/@ark/schema/out/refinements/after.js +35 -0
  37. package/node_modules/@ark/schema/out/refinements/before.d.ts +41 -0
  38. package/node_modules/@ark/schema/out/refinements/before.js +41 -0
  39. package/node_modules/@ark/schema/out/refinements/divisor.d.ts +43 -0
  40. package/node_modules/@ark/schema/out/refinements/divisor.js +58 -0
  41. package/node_modules/@ark/schema/out/refinements/exactLength.d.ts +49 -0
  42. package/node_modules/@ark/schema/out/refinements/exactLength.js +55 -0
  43. package/node_modules/@ark/schema/out/refinements/kinds.d.ts +34 -0
  44. package/node_modules/@ark/schema/out/refinements/kinds.js +25 -0
  45. package/node_modules/@ark/schema/out/refinements/max.d.ts +37 -0
  46. package/node_modules/@ark/schema/out/refinements/max.js +45 -0
  47. package/node_modules/@ark/schema/out/refinements/maxLength.d.ts +40 -0
  48. package/node_modules/@ark/schema/out/refinements/maxLength.js +49 -0
  49. package/node_modules/@ark/schema/out/refinements/min.d.ts +37 -0
  50. package/node_modules/@ark/schema/out/refinements/min.js +39 -0
  51. package/node_modules/@ark/schema/out/refinements/minLength.d.ts +40 -0
  52. package/node_modules/@ark/schema/out/refinements/minLength.js +47 -0
  53. package/node_modules/@ark/schema/out/refinements/pattern.d.ts +43 -0
  54. package/node_modules/@ark/schema/out/refinements/pattern.js +52 -0
  55. package/node_modules/@ark/schema/out/refinements/range.d.ts +106 -0
  56. package/node_modules/@ark/schema/out/refinements/range.js +103 -0
  57. package/node_modules/@ark/schema/out/roots/alias.d.ts +45 -0
  58. package/node_modules/@ark/schema/out/roots/alias.js +115 -0
  59. package/node_modules/@ark/schema/out/roots/basis.d.ts +12 -0
  60. package/node_modules/@ark/schema/out/roots/basis.js +26 -0
  61. package/node_modules/@ark/schema/out/roots/domain.d.ts +45 -0
  62. package/node_modules/@ark/schema/out/roots/domain.js +72 -0
  63. package/node_modules/@ark/schema/out/roots/intersection.d.ts +98 -0
  64. package/node_modules/@ark/schema/out/roots/intersection.js +292 -0
  65. package/node_modules/@ark/schema/out/roots/morph.d.ts +62 -0
  66. package/node_modules/@ark/schema/out/roots/morph.js +159 -0
  67. package/node_modules/@ark/schema/out/roots/proto.d.ts +53 -0
  68. package/node_modules/@ark/schema/out/roots/proto.js +101 -0
  69. package/node_modules/@ark/schema/out/roots/root.d.ts +145 -0
  70. package/node_modules/@ark/schema/out/roots/root.js +455 -0
  71. package/node_modules/@ark/schema/out/roots/union.d.ts +99 -0
  72. package/node_modules/@ark/schema/out/roots/union.js +718 -0
  73. package/node_modules/@ark/schema/out/roots/unit.d.ts +41 -0
  74. package/node_modules/@ark/schema/out/roots/unit.js +86 -0
  75. package/node_modules/@ark/schema/out/roots/utils.d.ts +3 -0
  76. package/node_modules/@ark/schema/out/roots/utils.js +6 -0
  77. package/node_modules/@ark/schema/out/scope.d.ts +158 -0
  78. package/node_modules/@ark/schema/out/scope.js +481 -0
  79. package/node_modules/@ark/schema/out/shared/compile.d.ts +62 -0
  80. package/node_modules/@ark/schema/out/shared/compile.js +145 -0
  81. package/node_modules/@ark/schema/out/shared/declare.d.ts +80 -0
  82. package/node_modules/@ark/schema/out/shared/declare.js +1 -0
  83. package/node_modules/@ark/schema/out/shared/disjoint.d.ts +41 -0
  84. package/node_modules/@ark/schema/out/shared/disjoint.js +65 -0
  85. package/node_modules/@ark/schema/out/shared/errors.d.ts +145 -0
  86. package/node_modules/@ark/schema/out/shared/errors.js +252 -0
  87. package/node_modules/@ark/schema/out/shared/implement.d.ts +151 -0
  88. package/node_modules/@ark/schema/out/shared/implement.js +98 -0
  89. package/node_modules/@ark/schema/out/shared/intersections.d.ts +10 -0
  90. package/node_modules/@ark/schema/out/shared/intersections.js +132 -0
  91. package/node_modules/@ark/schema/out/shared/jsonSchema.d.ts +93 -0
  92. package/node_modules/@ark/schema/out/shared/jsonSchema.js +1 -0
  93. package/node_modules/@ark/schema/out/shared/registry.d.ts +7 -0
  94. package/node_modules/@ark/schema/out/shared/registry.js +10 -0
  95. package/node_modules/@ark/schema/out/shared/standardSchema.d.ts +122 -0
  96. package/node_modules/@ark/schema/out/shared/standardSchema.js +2 -0
  97. package/node_modules/@ark/schema/out/shared/toJsonSchema.d.ts +139 -0
  98. package/node_modules/@ark/schema/out/shared/toJsonSchema.js +40 -0
  99. package/node_modules/@ark/schema/out/shared/traversal.d.ts +117 -0
  100. package/node_modules/@ark/schema/out/shared/traversal.js +226 -0
  101. package/node_modules/@ark/schema/out/shared/utils.d.ts +34 -0
  102. package/node_modules/@ark/schema/out/shared/utils.js +8 -0
  103. package/node_modules/@ark/schema/out/structure/index.d.ts +46 -0
  104. package/node_modules/@ark/schema/out/structure/index.js +89 -0
  105. package/node_modules/@ark/schema/out/structure/optional.d.ts +49 -0
  106. package/node_modules/@ark/schema/out/structure/optional.js +127 -0
  107. package/node_modules/@ark/schema/out/structure/prop.d.ts +45 -0
  108. package/node_modules/@ark/schema/out/structure/prop.js +85 -0
  109. package/node_modules/@ark/schema/out/structure/required.d.ts +39 -0
  110. package/node_modules/@ark/schema/out/structure/required.js +38 -0
  111. package/node_modules/@ark/schema/out/structure/sequence.d.ts +110 -0
  112. package/node_modules/@ark/schema/out/structure/sequence.js +521 -0
  113. package/node_modules/@ark/schema/out/structure/shared.d.ts +4 -0
  114. package/node_modules/@ark/schema/out/structure/shared.js +4 -0
  115. package/node_modules/@ark/schema/out/structure/structure.d.ts +113 -0
  116. package/node_modules/@ark/schema/out/structure/structure.js +747 -0
  117. package/node_modules/@ark/schema/package.json +51 -0
  118. package/node_modules/@ark/util/LICENSE +7 -0
  119. package/node_modules/@ark/util/out/arrays.d.ts +166 -0
  120. package/node_modules/@ark/util/out/arrays.js +147 -0
  121. package/node_modules/@ark/util/out/clone.d.ts +4 -0
  122. package/node_modules/@ark/util/out/clone.js +33 -0
  123. package/node_modules/@ark/util/out/describe.d.ts +25 -0
  124. package/node_modules/@ark/util/out/describe.js +1 -0
  125. package/node_modules/@ark/util/out/domain.d.ts +48 -0
  126. package/node_modules/@ark/util/out/domain.js +25 -0
  127. package/node_modules/@ark/util/out/errors.d.ts +29 -0
  128. package/node_modules/@ark/util/out/errors.js +17 -0
  129. package/node_modules/@ark/util/out/flatMorph.d.ts +41 -0
  130. package/node_modules/@ark/util/out/flatMorph.js +24 -0
  131. package/node_modules/@ark/util/out/functions.d.ts +33 -0
  132. package/node_modules/@ark/util/out/functions.js +53 -0
  133. package/node_modules/@ark/util/out/generics.d.ts +59 -0
  134. package/node_modules/@ark/util/out/generics.js +5 -0
  135. package/node_modules/@ark/util/out/get.d.ts +9 -0
  136. package/node_modules/@ark/util/out/get.js +7 -0
  137. package/node_modules/@ark/util/out/hkt.d.ts +27 -0
  138. package/node_modules/@ark/util/out/hkt.js +5 -0
  139. package/node_modules/@ark/util/out/index.d.ts +24 -0
  140. package/node_modules/@ark/util/out/index.js +24 -0
  141. package/node_modules/@ark/util/out/intersections.d.ts +50 -0
  142. package/node_modules/@ark/util/out/intersections.js +1 -0
  143. package/node_modules/@ark/util/out/isomorphic.d.ts +5 -0
  144. package/node_modules/@ark/util/out/isomorphic.js +19 -0
  145. package/node_modules/@ark/util/out/keys.d.ts +18 -0
  146. package/node_modules/@ark/util/out/keys.js +1 -0
  147. package/node_modules/@ark/util/out/lazily.d.ts +1 -0
  148. package/node_modules/@ark/util/out/lazily.js +16 -0
  149. package/node_modules/@ark/util/out/numbers.d.ts +72 -0
  150. package/node_modules/@ark/util/out/numbers.js +138 -0
  151. package/node_modules/@ark/util/out/objectKinds.d.ts +205 -0
  152. package/node_modules/@ark/util/out/objectKinds.js +150 -0
  153. package/node_modules/@ark/util/out/path.d.ts +22 -0
  154. package/node_modules/@ark/util/out/path.js +65 -0
  155. package/node_modules/@ark/util/out/primitive.d.ts +16 -0
  156. package/node_modules/@ark/util/out/primitive.js +3 -0
  157. package/node_modules/@ark/util/out/records.d.ts +183 -0
  158. package/node_modules/@ark/util/out/records.js +63 -0
  159. package/node_modules/@ark/util/out/registry.d.ts +21 -0
  160. package/node_modules/@ark/util/out/registry.js +49 -0
  161. package/node_modules/@ark/util/out/scanner.d.ts +44 -0
  162. package/node_modules/@ark/util/out/scanner.js +87 -0
  163. package/node_modules/@ark/util/out/serialize.d.ts +34 -0
  164. package/node_modules/@ark/util/out/serialize.js +150 -0
  165. package/node_modules/@ark/util/out/strings.d.ts +33 -0
  166. package/node_modules/@ark/util/out/strings.js +59 -0
  167. package/node_modules/@ark/util/out/traits.d.ts +89 -0
  168. package/node_modules/@ark/util/out/traits.js +75 -0
  169. package/node_modules/@ark/util/out/unionToTuple.d.ts +14 -0
  170. package/node_modules/@ark/util/out/unionToTuple.js +1 -0
  171. package/node_modules/@ark/util/package.json +39 -0
  172. package/node_modules/@ark/util/tsconfig.base.json +18 -0
  173. package/node_modules/@socket.io/component-emitter/LICENSE +24 -0
  174. package/node_modules/@socket.io/component-emitter/Readme.md +79 -0
  175. package/node_modules/@socket.io/component-emitter/lib/cjs/index.d.ts +179 -0
  176. package/node_modules/@socket.io/component-emitter/lib/cjs/index.js +176 -0
  177. package/node_modules/@socket.io/component-emitter/lib/cjs/package.json +4 -0
  178. package/node_modules/@socket.io/component-emitter/lib/esm/index.d.ts +179 -0
  179. package/node_modules/@socket.io/component-emitter/lib/esm/index.js +169 -0
  180. package/node_modules/@socket.io/component-emitter/lib/esm/package.json +4 -0
  181. package/node_modules/@socket.io/component-emitter/package.json +28 -0
  182. package/node_modules/arkregex/LICENSE +7 -0
  183. package/node_modules/arkregex/README.md +61 -0
  184. package/node_modules/arkregex/out/charset.d.ts +15 -0
  185. package/node_modules/arkregex/out/charset.js +1 -0
  186. package/node_modules/arkregex/out/escape.d.ts +29 -0
  187. package/node_modules/arkregex/out/escape.js +10 -0
  188. package/node_modules/arkregex/out/execArray.d.ts +23 -0
  189. package/node_modules/arkregex/out/execArray.js +1 -0
  190. package/node_modules/arkregex/out/group.d.ts +33 -0
  191. package/node_modules/arkregex/out/group.js +6 -0
  192. package/node_modules/arkregex/out/index.d.ts +1 -0
  193. package/node_modules/arkregex/out/index.js +1 -0
  194. package/node_modules/arkregex/out/parse.d.ts +10 -0
  195. package/node_modules/arkregex/out/parse.js +1 -0
  196. package/node_modules/arkregex/out/quantify.d.ts +43 -0
  197. package/node_modules/arkregex/out/quantify.js +2 -0
  198. package/node_modules/arkregex/out/regex.d.ts +38 -0
  199. package/node_modules/arkregex/out/regex.js +2 -0
  200. package/node_modules/arkregex/out/state.d.ts +359 -0
  201. package/node_modules/arkregex/out/state.js +2 -0
  202. package/node_modules/arkregex/package.json +42 -0
  203. package/node_modules/arktype/LICENSE +7 -0
  204. package/node_modules/arktype/README.md +157 -0
  205. package/node_modules/arktype/out/attributes.d.ts +104 -0
  206. package/node_modules/arktype/out/attributes.js +3 -0
  207. package/node_modules/arktype/out/config.d.ts +35 -0
  208. package/node_modules/arktype/out/config.js +3 -0
  209. package/node_modules/arktype/out/declare.d.ts +35 -0
  210. package/node_modules/arktype/out/declare.js +1 -0
  211. package/node_modules/arktype/out/fn.d.ts +61 -0
  212. package/node_modules/arktype/out/fn.js +54 -0
  213. package/node_modules/arktype/out/generic.d.ts +118 -0
  214. package/node_modules/arktype/out/generic.js +37 -0
  215. package/node_modules/arktype/out/index.d.ts +12 -0
  216. package/node_modules/arktype/out/index.js +9 -0
  217. package/node_modules/arktype/out/keywords/Array.d.ts +20 -0
  218. package/node_modules/arktype/out/keywords/Array.js +21 -0
  219. package/node_modules/arktype/out/keywords/FormData.d.ts +15 -0
  220. package/node_modules/arktype/out/keywords/FormData.js +40 -0
  221. package/node_modules/arktype/out/keywords/TypedArray.d.ts +19 -0
  222. package/node_modules/arktype/out/keywords/TypedArray.js +16 -0
  223. package/node_modules/arktype/out/keywords/builtins.d.ts +18 -0
  224. package/node_modules/arktype/out/keywords/builtins.js +11 -0
  225. package/node_modules/arktype/out/keywords/constructors.d.ts +31 -0
  226. package/node_modules/arktype/out/keywords/constructors.js +16 -0
  227. package/node_modules/arktype/out/keywords/keywords.d.ts +70 -0
  228. package/node_modules/arktype/out/keywords/keywords.js +48 -0
  229. package/node_modules/arktype/out/keywords/number.d.ts +23 -0
  230. package/node_modules/arktype/out/keywords/number.js +49 -0
  231. package/node_modules/arktype/out/keywords/string.d.ts +334 -0
  232. package/node_modules/arktype/out/keywords/string.js +463 -0
  233. package/node_modules/arktype/out/keywords/ts.d.ts +108 -0
  234. package/node_modules/arktype/out/keywords/ts.js +82 -0
  235. package/node_modules/arktype/out/match.d.ts +152 -0
  236. package/node_modules/arktype/out/match.js +95 -0
  237. package/node_modules/arktype/out/module.d.ts +22 -0
  238. package/node_modules/arktype/out/module.js +3 -0
  239. package/node_modules/arktype/out/nary.d.ts +473 -0
  240. package/node_modules/arktype/out/nary.js +1 -0
  241. package/node_modules/arktype/out/parser/ast/bounds.d.ts +18 -0
  242. package/node_modules/arktype/out/parser/ast/bounds.js +1 -0
  243. package/node_modules/arktype/out/parser/ast/default.d.ts +8 -0
  244. package/node_modules/arktype/out/parser/ast/default.js +1 -0
  245. package/node_modules/arktype/out/parser/ast/divisor.d.ts +9 -0
  246. package/node_modules/arktype/out/parser/ast/divisor.js +1 -0
  247. package/node_modules/arktype/out/parser/ast/generic.d.ts +17 -0
  248. package/node_modules/arktype/out/parser/ast/generic.js +1 -0
  249. package/node_modules/arktype/out/parser/ast/infer.d.ts +25 -0
  250. package/node_modules/arktype/out/parser/ast/infer.js +1 -0
  251. package/node_modules/arktype/out/parser/ast/keyof.d.ts +7 -0
  252. package/node_modules/arktype/out/parser/ast/keyof.js +1 -0
  253. package/node_modules/arktype/out/parser/ast/utils.d.ts +8 -0
  254. package/node_modules/arktype/out/parser/ast/utils.js +1 -0
  255. package/node_modules/arktype/out/parser/ast/validate.d.ts +30 -0
  256. package/node_modules/arktype/out/parser/ast/validate.js +3 -0
  257. package/node_modules/arktype/out/parser/definition.d.ts +30 -0
  258. package/node_modules/arktype/out/parser/definition.js +74 -0
  259. package/node_modules/arktype/out/parser/objectLiteral.d.ts +70 -0
  260. package/node_modules/arktype/out/parser/objectLiteral.js +113 -0
  261. package/node_modules/arktype/out/parser/property.d.ts +34 -0
  262. package/node_modules/arktype/out/parser/property.js +16 -0
  263. package/node_modules/arktype/out/parser/reduce/dynamic.d.ts +42 -0
  264. package/node_modules/arktype/out/parser/reduce/dynamic.js +153 -0
  265. package/node_modules/arktype/out/parser/reduce/shared.d.ts +39 -0
  266. package/node_modules/arktype/out/parser/reduce/shared.js +25 -0
  267. package/node_modules/arktype/out/parser/reduce/static.d.ts +186 -0
  268. package/node_modules/arktype/out/parser/reduce/static.js +1 -0
  269. package/node_modules/arktype/out/parser/shift/operand/date.d.ts +11 -0
  270. package/node_modules/arktype/out/parser/shift/operand/date.js +23 -0
  271. package/node_modules/arktype/out/parser/shift/operand/enclosed.d.ts +57 -0
  272. package/node_modules/arktype/out/parser/shift/operand/enclosed.js +78 -0
  273. package/node_modules/arktype/out/parser/shift/operand/genericArgs.d.ts +27 -0
  274. package/node_modules/arktype/out/parser/shift/operand/genericArgs.js +16 -0
  275. package/node_modules/arktype/out/parser/shift/operand/operand.d.ts +8 -0
  276. package/node_modules/arktype/out/parser/shift/operand/operand.js +16 -0
  277. package/node_modules/arktype/out/parser/shift/operand/unenclosed.d.ts +43 -0
  278. package/node_modules/arktype/out/parser/shift/operand/unenclosed.js +59 -0
  279. package/node_modules/arktype/out/parser/shift/operator/bounds.d.ts +24 -0
  280. package/node_modules/arktype/out/parser/shift/operator/bounds.js +91 -0
  281. package/node_modules/arktype/out/parser/shift/operator/brand.d.ts +7 -0
  282. package/node_modules/arktype/out/parser/shift/operator/brand.js +6 -0
  283. package/node_modules/arktype/out/parser/shift/operator/default.d.ts +24 -0
  284. package/node_modules/arktype/out/parser/shift/operator/default.js +15 -0
  285. package/node_modules/arktype/out/parser/shift/operator/divisor.d.ts +8 -0
  286. package/node_modules/arktype/out/parser/shift/operator/divisor.js +13 -0
  287. package/node_modules/arktype/out/parser/shift/operator/operator.d.ts +14 -0
  288. package/node_modules/arktype/out/parser/shift/operator/operator.js +28 -0
  289. package/node_modules/arktype/out/parser/shift/tokens.d.ts +33 -0
  290. package/node_modules/arktype/out/parser/shift/tokens.js +37 -0
  291. package/node_modules/arktype/out/parser/string.d.ts +30 -0
  292. package/node_modules/arktype/out/parser/string.js +42 -0
  293. package/node_modules/arktype/out/parser/tupleExpressions.d.ts +79 -0
  294. package/node_modules/arktype/out/parser/tupleExpressions.js +75 -0
  295. package/node_modules/arktype/out/parser/tupleLiteral.d.ts +95 -0
  296. package/node_modules/arktype/out/parser/tupleLiteral.js +128 -0
  297. package/node_modules/arktype/out/scope.d.ts +158 -0
  298. package/node_modules/arktype/out/scope.js +106 -0
  299. package/node_modules/arktype/out/type.d.ts +144 -0
  300. package/node_modules/arktype/out/type.js +55 -0
  301. package/node_modules/arktype/out/variants/array.d.ts +12 -0
  302. package/node_modules/arktype/out/variants/array.js +1 -0
  303. package/node_modules/arktype/out/variants/base.d.ts +542 -0
  304. package/node_modules/arktype/out/variants/base.js +1 -0
  305. package/node_modules/arktype/out/variants/date.d.ts +10 -0
  306. package/node_modules/arktype/out/variants/date.js +1 -0
  307. package/node_modules/arktype/out/variants/instantiate.d.ts +12 -0
  308. package/node_modules/arktype/out/variants/instantiate.js +1 -0
  309. package/node_modules/arktype/out/variants/number.d.ts +11 -0
  310. package/node_modules/arktype/out/variants/number.js +1 -0
  311. package/node_modules/arktype/out/variants/object.d.ts +107 -0
  312. package/node_modules/arktype/out/variants/object.js +1 -0
  313. package/node_modules/arktype/out/variants/string.d.ts +15 -0
  314. package/node_modules/arktype/out/variants/string.js +1 -0
  315. package/node_modules/arktype/package.json +57 -0
  316. package/node_modules/debug/LICENSE +20 -0
  317. package/node_modules/debug/README.md +481 -0
  318. package/node_modules/debug/package.json +64 -0
  319. package/node_modules/debug/src/browser.js +272 -0
  320. package/node_modules/debug/src/common.js +292 -0
  321. package/node_modules/debug/src/index.js +10 -0
  322. package/node_modules/debug/src/node.js +263 -0
  323. package/node_modules/engine.io-client/LICENSE +22 -0
  324. package/node_modules/engine.io-client/README.md +331 -0
  325. package/node_modules/engine.io-client/build/cjs/browser-entrypoint.d.ts +3 -0
  326. package/node_modules/engine.io-client/build/cjs/browser-entrypoint.js +4 -0
  327. package/node_modules/engine.io-client/build/cjs/contrib/has-cors.d.ts +1 -0
  328. package/node_modules/engine.io-client/build/cjs/contrib/has-cors.js +14 -0
  329. package/node_modules/engine.io-client/build/cjs/contrib/parseqs.d.ts +15 -0
  330. package/node_modules/engine.io-client/build/cjs/contrib/parseqs.js +38 -0
  331. package/node_modules/engine.io-client/build/cjs/contrib/parseuri.d.ts +1 -0
  332. package/node_modules/engine.io-client/build/cjs/contrib/parseuri.js +67 -0
  333. package/node_modules/engine.io-client/build/cjs/globals.d.ts +4 -0
  334. package/node_modules/engine.io-client/build/cjs/globals.js +26 -0
  335. package/node_modules/engine.io-client/build/cjs/globals.node.d.ts +21 -0
  336. package/node_modules/engine.io-client/build/cjs/globals.node.js +97 -0
  337. package/node_modules/engine.io-client/build/cjs/index.d.ts +15 -0
  338. package/node_modules/engine.io-client/build/cjs/index.js +32 -0
  339. package/node_modules/engine.io-client/build/cjs/package.json +10 -0
  340. package/node_modules/engine.io-client/build/cjs/socket.d.ts +482 -0
  341. package/node_modules/engine.io-client/build/cjs/socket.js +765 -0
  342. package/node_modules/engine.io-client/build/cjs/transport.d.ts +106 -0
  343. package/node_modules/engine.io-client/build/cjs/transport.js +153 -0
  344. package/node_modules/engine.io-client/build/cjs/transports/index.d.ts +8 -0
  345. package/node_modules/engine.io-client/build/cjs/transports/index.js +11 -0
  346. package/node_modules/engine.io-client/build/cjs/transports/polling-fetch.d.ts +15 -0
  347. package/node_modules/engine.io-client/build/cjs/transports/polling-fetch.js +60 -0
  348. package/node_modules/engine.io-client/build/cjs/transports/polling-xhr.d.ts +108 -0
  349. package/node_modules/engine.io-client/build/cjs/transports/polling-xhr.js +285 -0
  350. package/node_modules/engine.io-client/build/cjs/transports/polling-xhr.node.d.ts +11 -0
  351. package/node_modules/engine.io-client/build/cjs/transports/polling-xhr.node.js +44 -0
  352. package/node_modules/engine.io-client/build/cjs/transports/polling.d.ts +52 -0
  353. package/node_modules/engine.io-client/build/cjs/transports/polling.js +165 -0
  354. package/node_modules/engine.io-client/build/cjs/transports/websocket.d.ts +36 -0
  355. package/node_modules/engine.io-client/build/cjs/transports/websocket.js +136 -0
  356. package/node_modules/engine.io-client/build/cjs/transports/websocket.node.d.ts +14 -0
  357. package/node_modules/engine.io-client/build/cjs/transports/websocket.node.js +68 -0
  358. package/node_modules/engine.io-client/build/cjs/transports/webtransport.d.ts +18 -0
  359. package/node_modules/engine.io-client/build/cjs/transports/webtransport.js +94 -0
  360. package/node_modules/engine.io-client/build/cjs/util.d.ts +7 -0
  361. package/node_modules/engine.io-client/build/cjs/util.js +65 -0
  362. package/node_modules/engine.io-client/build/esm/browser-entrypoint.d.ts +3 -0
  363. package/node_modules/engine.io-client/build/esm/browser-entrypoint.js +2 -0
  364. package/node_modules/engine.io-client/build/esm/contrib/has-cors.d.ts +1 -0
  365. package/node_modules/engine.io-client/build/esm/contrib/has-cors.js +11 -0
  366. package/node_modules/engine.io-client/build/esm/contrib/parseqs.d.ts +15 -0
  367. package/node_modules/engine.io-client/build/esm/contrib/parseqs.js +34 -0
  368. package/node_modules/engine.io-client/build/esm/contrib/parseuri.d.ts +1 -0
  369. package/node_modules/engine.io-client/build/esm/contrib/parseuri.js +64 -0
  370. package/node_modules/engine.io-client/build/esm/globals.d.ts +4 -0
  371. package/node_modules/engine.io-client/build/esm/globals.js +22 -0
  372. package/node_modules/engine.io-client/build/esm/globals.node.d.ts +21 -0
  373. package/node_modules/engine.io-client/build/esm/globals.node.js +91 -0
  374. package/node_modules/engine.io-client/build/esm/index.d.ts +15 -0
  375. package/node_modules/engine.io-client/build/esm/index.js +15 -0
  376. package/node_modules/engine.io-client/build/esm/package.json +10 -0
  377. package/node_modules/engine.io-client/build/esm/socket.d.ts +482 -0
  378. package/node_modules/engine.io-client/build/esm/socket.js +727 -0
  379. package/node_modules/engine.io-client/build/esm/transport.d.ts +106 -0
  380. package/node_modules/engine.io-client/build/esm/transport.js +142 -0
  381. package/node_modules/engine.io-client/build/esm/transports/index.d.ts +8 -0
  382. package/node_modules/engine.io-client/build/esm/transports/index.js +8 -0
  383. package/node_modules/engine.io-client/build/esm/transports/polling-fetch.d.ts +15 -0
  384. package/node_modules/engine.io-client/build/esm/transports/polling-fetch.js +56 -0
  385. package/node_modules/engine.io-client/build/esm/transports/polling-xhr.d.ts +108 -0
  386. package/node_modules/engine.io-client/build/esm/transports/polling-xhr.js +271 -0
  387. package/node_modules/engine.io-client/build/esm/transports/polling-xhr.node.d.ts +11 -0
  388. package/node_modules/engine.io-client/build/esm/transports/polling-xhr.node.js +17 -0
  389. package/node_modules/engine.io-client/build/esm/transports/polling.d.ts +52 -0
  390. package/node_modules/engine.io-client/build/esm/transports/polling.js +145 -0
  391. package/node_modules/engine.io-client/build/esm/transports/websocket.d.ts +36 -0
  392. package/node_modules/engine.io-client/build/esm/transports/websocket.js +125 -0
  393. package/node_modules/engine.io-client/build/esm/transports/websocket.node.d.ts +14 -0
  394. package/node_modules/engine.io-client/build/esm/transports/websocket.node.js +41 -0
  395. package/node_modules/engine.io-client/build/esm/transports/webtransport.d.ts +18 -0
  396. package/node_modules/engine.io-client/build/esm/transports/webtransport.js +80 -0
  397. package/node_modules/engine.io-client/build/esm/util.d.ts +7 -0
  398. package/node_modules/engine.io-client/build/esm/util.js +59 -0
  399. package/node_modules/engine.io-client/build/esm-debug/browser-entrypoint.d.ts +3 -0
  400. package/node_modules/engine.io-client/build/esm-debug/browser-entrypoint.js +2 -0
  401. package/node_modules/engine.io-client/build/esm-debug/contrib/has-cors.d.ts +1 -0
  402. package/node_modules/engine.io-client/build/esm-debug/contrib/has-cors.js +11 -0
  403. package/node_modules/engine.io-client/build/esm-debug/contrib/parseqs.d.ts +15 -0
  404. package/node_modules/engine.io-client/build/esm-debug/contrib/parseqs.js +34 -0
  405. package/node_modules/engine.io-client/build/esm-debug/contrib/parseuri.d.ts +1 -0
  406. package/node_modules/engine.io-client/build/esm-debug/contrib/parseuri.js +64 -0
  407. package/node_modules/engine.io-client/build/esm-debug/globals.d.ts +4 -0
  408. package/node_modules/engine.io-client/build/esm-debug/globals.js +22 -0
  409. package/node_modules/engine.io-client/build/esm-debug/globals.node.d.ts +21 -0
  410. package/node_modules/engine.io-client/build/esm-debug/globals.node.js +91 -0
  411. package/node_modules/engine.io-client/build/esm-debug/index.d.ts +15 -0
  412. package/node_modules/engine.io-client/build/esm-debug/index.js +15 -0
  413. package/node_modules/engine.io-client/build/esm-debug/package.json +10 -0
  414. package/node_modules/engine.io-client/build/esm-debug/socket.d.ts +482 -0
  415. package/node_modules/engine.io-client/build/esm-debug/socket.js +756 -0
  416. package/node_modules/engine.io-client/build/esm-debug/transport.d.ts +106 -0
  417. package/node_modules/engine.io-client/build/esm-debug/transport.js +145 -0
  418. package/node_modules/engine.io-client/build/esm-debug/transports/index.d.ts +8 -0
  419. package/node_modules/engine.io-client/build/esm-debug/transports/index.js +8 -0
  420. package/node_modules/engine.io-client/build/esm-debug/transports/polling-fetch.d.ts +15 -0
  421. package/node_modules/engine.io-client/build/esm-debug/transports/polling-fetch.js +56 -0
  422. package/node_modules/engine.io-client/build/esm-debug/transports/polling-xhr.d.ts +108 -0
  423. package/node_modules/engine.io-client/build/esm-debug/transports/polling-xhr.js +276 -0
  424. package/node_modules/engine.io-client/build/esm-debug/transports/polling-xhr.node.d.ts +11 -0
  425. package/node_modules/engine.io-client/build/esm-debug/transports/polling-xhr.node.js +17 -0
  426. package/node_modules/engine.io-client/build/esm-debug/transports/polling.d.ts +52 -0
  427. package/node_modules/engine.io-client/build/esm-debug/transports/polling.js +158 -0
  428. package/node_modules/engine.io-client/build/esm-debug/transports/websocket.d.ts +36 -0
  429. package/node_modules/engine.io-client/build/esm-debug/transports/websocket.js +128 -0
  430. package/node_modules/engine.io-client/build/esm-debug/transports/websocket.node.d.ts +14 -0
  431. package/node_modules/engine.io-client/build/esm-debug/transports/websocket.node.js +41 -0
  432. package/node_modules/engine.io-client/build/esm-debug/transports/webtransport.d.ts +18 -0
  433. package/node_modules/engine.io-client/build/esm-debug/transports/webtransport.js +87 -0
  434. package/node_modules/engine.io-client/build/esm-debug/util.d.ts +7 -0
  435. package/node_modules/engine.io-client/build/esm-debug/util.js +59 -0
  436. package/node_modules/engine.io-client/dist/engine.io.esm.min.js +7 -0
  437. package/node_modules/engine.io-client/dist/engine.io.esm.min.js.map +1 -0
  438. package/node_modules/engine.io-client/dist/engine.io.js +3064 -0
  439. package/node_modules/engine.io-client/dist/engine.io.js.map +1 -0
  440. package/node_modules/engine.io-client/dist/engine.io.min.js +7 -0
  441. package/node_modules/engine.io-client/dist/engine.io.min.js.map +1 -0
  442. package/node_modules/engine.io-client/package.json +95 -0
  443. package/node_modules/engine.io-parser/LICENSE +22 -0
  444. package/node_modules/engine.io-parser/Readme.md +158 -0
  445. package/node_modules/engine.io-parser/build/cjs/commons.d.ts +14 -0
  446. package/node_modules/engine.io-parser/build/cjs/commons.js +19 -0
  447. package/node_modules/engine.io-parser/build/cjs/contrib/base64-arraybuffer.d.ts +2 -0
  448. package/node_modules/engine.io-parser/build/cjs/contrib/base64-arraybuffer.js +48 -0
  449. package/node_modules/engine.io-parser/build/cjs/decodePacket.browser.d.ts +2 -0
  450. package/node_modules/engine.io-parser/build/cjs/decodePacket.browser.js +66 -0
  451. package/node_modules/engine.io-parser/build/cjs/decodePacket.d.ts +2 -0
  452. package/node_modules/engine.io-parser/build/cjs/decodePacket.js +59 -0
  453. package/node_modules/engine.io-parser/build/cjs/encodePacket.browser.d.ts +4 -0
  454. package/node_modules/engine.io-parser/build/cjs/encodePacket.browser.js +72 -0
  455. package/node_modules/engine.io-parser/build/cjs/encodePacket.d.ts +3 -0
  456. package/node_modules/engine.io-parser/build/cjs/encodePacket.js +38 -0
  457. package/node_modules/engine.io-parser/build/cjs/index.d.ts +9 -0
  458. package/node_modules/engine.io-parser/build/cjs/index.js +164 -0
  459. package/node_modules/engine.io-parser/build/cjs/package.json +8 -0
  460. package/node_modules/engine.io-parser/build/esm/commons.d.ts +14 -0
  461. package/node_modules/engine.io-parser/build/esm/commons.js +14 -0
  462. package/node_modules/engine.io-parser/build/esm/contrib/base64-arraybuffer.d.ts +2 -0
  463. package/node_modules/engine.io-parser/build/esm/contrib/base64-arraybuffer.js +43 -0
  464. package/node_modules/engine.io-parser/build/esm/decodePacket.browser.d.ts +2 -0
  465. package/node_modules/engine.io-parser/build/esm/decodePacket.browser.js +62 -0
  466. package/node_modules/engine.io-parser/build/esm/decodePacket.d.ts +2 -0
  467. package/node_modules/engine.io-parser/build/esm/decodePacket.js +55 -0
  468. package/node_modules/engine.io-parser/build/esm/encodePacket.browser.d.ts +4 -0
  469. package/node_modules/engine.io-parser/build/esm/encodePacket.browser.js +68 -0
  470. package/node_modules/engine.io-parser/build/esm/encodePacket.d.ts +3 -0
  471. package/node_modules/engine.io-parser/build/esm/encodePacket.js +33 -0
  472. package/node_modules/engine.io-parser/build/esm/index.d.ts +9 -0
  473. package/node_modules/engine.io-parser/build/esm/index.js +156 -0
  474. package/node_modules/engine.io-parser/build/esm/package.json +8 -0
  475. package/node_modules/engine.io-parser/package.json +46 -0
  476. package/node_modules/ms/index.js +162 -0
  477. package/node_modules/ms/license.md +21 -0
  478. package/node_modules/ms/package.json +38 -0
  479. package/node_modules/ms/readme.md +59 -0
  480. package/node_modules/socket.io-client/LICENSE +21 -0
  481. package/node_modules/socket.io-client/README.md +29 -0
  482. package/node_modules/socket.io-client/build/cjs/browser-entrypoint.d.ts +2 -0
  483. package/node_modules/socket.io-client/build/cjs/browser-entrypoint.js +4 -0
  484. package/node_modules/socket.io-client/build/cjs/contrib/backo2.d.ts +12 -0
  485. package/node_modules/socket.io-client/build/cjs/contrib/backo2.js +69 -0
  486. package/node_modules/socket.io-client/build/cjs/index.d.ts +29 -0
  487. package/node_modules/socket.io-client/build/cjs/index.js +76 -0
  488. package/node_modules/socket.io-client/build/cjs/manager.d.ts +295 -0
  489. package/node_modules/socket.io-client/build/cjs/manager.js +416 -0
  490. package/node_modules/socket.io-client/build/cjs/on.d.ts +2 -0
  491. package/node_modules/socket.io-client/build/cjs/on.js +9 -0
  492. package/node_modules/socket.io-client/build/cjs/socket.d.ts +593 -0
  493. package/node_modules/socket.io-client/build/cjs/socket.js +909 -0
  494. package/node_modules/socket.io-client/build/cjs/url.d.ts +33 -0
  495. package/node_modules/socket.io-client/build/cjs/url.js +69 -0
  496. package/node_modules/socket.io-client/build/esm/browser-entrypoint.d.ts +2 -0
  497. package/node_modules/socket.io-client/build/esm/browser-entrypoint.js +2 -0
  498. package/node_modules/socket.io-client/build/esm/contrib/backo2.d.ts +12 -0
  499. package/node_modules/socket.io-client/build/esm/contrib/backo2.js +66 -0
  500. package/node_modules/socket.io-client/build/esm/index.d.ts +29 -0
  501. package/node_modules/socket.io-client/build/esm/index.js +58 -0
  502. package/node_modules/socket.io-client/build/esm/manager.d.ts +295 -0
  503. package/node_modules/socket.io-client/build/esm/manager.js +367 -0
  504. package/node_modules/socket.io-client/build/esm/on.d.ts +2 -0
  505. package/node_modules/socket.io-client/build/esm/on.js +6 -0
  506. package/node_modules/socket.io-client/build/esm/package.json +5 -0
  507. package/node_modules/socket.io-client/build/esm/socket.d.ts +593 -0
  508. package/node_modules/socket.io-client/build/esm/socket.js +880 -0
  509. package/node_modules/socket.io-client/build/esm/url.d.ts +33 -0
  510. package/node_modules/socket.io-client/build/esm/url.js +59 -0
  511. package/node_modules/socket.io-client/build/esm-debug/browser-entrypoint.d.ts +2 -0
  512. package/node_modules/socket.io-client/build/esm-debug/browser-entrypoint.js +2 -0
  513. package/node_modules/socket.io-client/build/esm-debug/contrib/backo2.d.ts +12 -0
  514. package/node_modules/socket.io-client/build/esm-debug/contrib/backo2.js +66 -0
  515. package/node_modules/socket.io-client/build/esm-debug/index.d.ts +29 -0
  516. package/node_modules/socket.io-client/build/esm-debug/index.js +62 -0
  517. package/node_modules/socket.io-client/build/esm-debug/manager.d.ts +295 -0
  518. package/node_modules/socket.io-client/build/esm-debug/manager.js +386 -0
  519. package/node_modules/socket.io-client/build/esm-debug/on.d.ts +2 -0
  520. package/node_modules/socket.io-client/build/esm-debug/on.js +6 -0
  521. package/node_modules/socket.io-client/build/esm-debug/package.json +5 -0
  522. package/node_modules/socket.io-client/build/esm-debug/socket.d.ts +593 -0
  523. package/node_modules/socket.io-client/build/esm-debug/socket.js +902 -0
  524. package/node_modules/socket.io-client/build/esm-debug/url.d.ts +33 -0
  525. package/node_modules/socket.io-client/build/esm-debug/url.js +63 -0
  526. package/node_modules/socket.io-client/dist/socket.io.esm.min.js +7 -0
  527. package/node_modules/socket.io-client/dist/socket.io.esm.min.js.map +1 -0
  528. package/node_modules/socket.io-client/dist/socket.io.js +4955 -0
  529. package/node_modules/socket.io-client/dist/socket.io.js.map +1 -0
  530. package/node_modules/socket.io-client/dist/socket.io.min.js +7 -0
  531. package/node_modules/socket.io-client/dist/socket.io.min.js.map +1 -0
  532. package/node_modules/socket.io-client/dist/socket.io.msgpack.min.js +7 -0
  533. package/node_modules/socket.io-client/dist/socket.io.msgpack.min.js.map +1 -0
  534. package/node_modules/socket.io-client/package.json +101 -0
  535. package/node_modules/socket.io-parser/LICENSE +20 -0
  536. package/node_modules/socket.io-parser/Readme.md +81 -0
  537. package/node_modules/socket.io-parser/build/cjs/binary.d.ts +20 -0
  538. package/node_modules/socket.io-parser/build/cjs/binary.js +87 -0
  539. package/node_modules/socket.io-parser/build/cjs/index.d.ts +91 -0
  540. package/node_modules/socket.io-parser/build/cjs/index.js +359 -0
  541. package/node_modules/socket.io-parser/build/cjs/is-binary.d.ts +7 -0
  542. package/node_modules/socket.io-parser/build/cjs/is-binary.js +54 -0
  543. package/node_modules/socket.io-parser/build/cjs/package.json +3 -0
  544. package/node_modules/socket.io-parser/build/esm/binary.d.ts +20 -0
  545. package/node_modules/socket.io-parser/build/esm/binary.js +83 -0
  546. package/node_modules/socket.io-parser/build/esm/index.d.ts +91 -0
  547. package/node_modules/socket.io-parser/build/esm/index.js +348 -0
  548. package/node_modules/socket.io-parser/build/esm/is-binary.d.ts +7 -0
  549. package/node_modules/socket.io-parser/build/esm/is-binary.js +50 -0
  550. package/node_modules/socket.io-parser/build/esm/package.json +3 -0
  551. package/node_modules/socket.io-parser/build/esm-debug/binary.d.ts +20 -0
  552. package/node_modules/socket.io-parser/build/esm-debug/binary.js +83 -0
  553. package/node_modules/socket.io-parser/build/esm-debug/index.d.ts +91 -0
  554. package/node_modules/socket.io-parser/build/esm-debug/index.js +353 -0
  555. package/node_modules/socket.io-parser/build/esm-debug/is-binary.d.ts +7 -0
  556. package/node_modules/socket.io-parser/build/esm-debug/is-binary.js +50 -0
  557. package/node_modules/socket.io-parser/build/esm-debug/package.json +3 -0
  558. package/node_modules/socket.io-parser/package.json +44 -0
  559. package/node_modules/ws/LICENSE +20 -0
  560. package/node_modules/ws/README.md +548 -0
  561. package/node_modules/ws/browser.js +8 -0
  562. package/node_modules/ws/index.js +13 -0
  563. package/node_modules/ws/lib/buffer-util.js +131 -0
  564. package/node_modules/ws/lib/constants.js +18 -0
  565. package/node_modules/ws/lib/event-target.js +292 -0
  566. package/node_modules/ws/lib/extension.js +203 -0
  567. package/node_modules/ws/lib/limiter.js +55 -0
  568. package/node_modules/ws/lib/permessage-deflate.js +528 -0
  569. package/node_modules/ws/lib/receiver.js +706 -0
  570. package/node_modules/ws/lib/sender.js +602 -0
  571. package/node_modules/ws/lib/stream.js +161 -0
  572. package/node_modules/ws/lib/subprotocol.js +62 -0
  573. package/node_modules/ws/lib/validation.js +152 -0
  574. package/node_modules/ws/lib/websocket-server.js +550 -0
  575. package/node_modules/ws/lib/websocket.js +1388 -0
  576. package/node_modules/ws/package.json +69 -0
  577. package/node_modules/ws/wrapper.mjs +8 -0
  578. package/node_modules/xmlhttprequest-ssl/LICENSE +22 -0
  579. package/node_modules/xmlhttprequest-ssl/README.md +67 -0
  580. package/node_modules/xmlhttprequest-ssl/lib/XMLHttpRequest.js +689 -0
  581. package/node_modules/xmlhttprequest-ssl/package.json +40 -0
  582. package/package.json +34 -4
  583. package/public-api.md +85 -23
@@ -0,0 +1,139 @@
1
+ import { type Constructor, type Domain, type Json, type requireKeys, type satisfy } from "@ark/util";
2
+ import type { Predicate } from "../predicate.ts";
3
+ import type { ConstraintKind } from "./implement.ts";
4
+ import type { JsonSchema } from "./jsonSchema.ts";
5
+ import type { StandardJSONSchemaV1 } from "./standardSchema.ts";
6
+ declare class ToJsonSchemaError<code extends ToJsonSchema.Code = ToJsonSchema.Code> extends Error {
7
+ readonly name = "ToJsonSchemaError";
8
+ readonly code: code;
9
+ readonly context: ToJsonSchema.ContextByCode[code];
10
+ constructor(code: code, context: ToJsonSchema.ContextByCode[code]);
11
+ hasCode<code extends ToJsonSchema.Code>(code: code): this is ToJsonSchemaError<code>;
12
+ }
13
+ export declare const ToJsonSchema: {
14
+ Error: typeof ToJsonSchemaError;
15
+ throw: (code: keyof ToJsonSchema.ContextByCode, context: ToJsonSchema.MorphContext | ToJsonSchema.UnitContext | ToJsonSchema.ProtoContext | ToJsonSchema.DomainContext | ToJsonSchema.PredicateContext | ToJsonSchema.DateContext | ToJsonSchema.ArrayObjectContext | ToJsonSchema.ArrayPostfixContext | ToJsonSchema.DefaultValueContext | ToJsonSchema.PatternIntersectionContext | ToJsonSchema.SymbolKeyContext) => never;
16
+ throwInternalOperandError: (kind: ConstraintKind, schema: JsonSchema) => never;
17
+ defaultConfig: ToJsonSchema.Context;
18
+ };
19
+ export declare namespace ToJsonSchema {
20
+ type Unjsonifiable = object | symbol | bigint | undefined;
21
+ type Error = InstanceType<typeof ToJsonSchema.Error>;
22
+ interface BaseContext<code extends Code, base extends JsonSchema = JsonSchema> {
23
+ code: code;
24
+ base: base;
25
+ }
26
+ interface ArrayObjectContext extends BaseContext<"arrayObject", JsonSchema.Array> {
27
+ object: JsonSchema.Object;
28
+ }
29
+ interface ArrayPostfixContext extends BaseContext<"arrayPostfix", VariadicArraySchema> {
30
+ elements: readonly JsonSchema[];
31
+ }
32
+ interface DefaultValueContext extends BaseContext<"defaultValue", JsonSchema> {
33
+ value: Unjsonifiable;
34
+ }
35
+ interface DomainContext extends BaseContext<"domain", JsonSchema> {
36
+ domain: satisfy<Domain, "symbol" | "bigint" | "undefined">;
37
+ }
38
+ interface MorphContext extends BaseContext<"morph", JsonSchema> {
39
+ out: JsonSchema | null;
40
+ }
41
+ interface PatternIntersectionContext extends BaseContext<"patternIntersection", StringSchemaWithPattern> {
42
+ pattern: string;
43
+ }
44
+ interface PredicateContext extends BaseContext<"predicate", JsonSchema> {
45
+ predicate: Predicate;
46
+ }
47
+ interface ProtoContext extends BaseContext<"proto", JsonSchema> {
48
+ proto: Constructor;
49
+ }
50
+ type SymbolKeyContext = IndexSymbolKeyContext | RequiredSymbolKeyContext | OptionalSymbolKeyContext;
51
+ interface IndexSymbolKeyContext extends BaseContext<"symbolKey", JsonSchema.Object> {
52
+ key: null;
53
+ value: JsonSchema;
54
+ optional: false;
55
+ }
56
+ interface RequiredSymbolKeyContext extends BaseContext<"symbolKey", JsonSchema.Object> {
57
+ key: symbol;
58
+ value: JsonSchema;
59
+ optional: false;
60
+ }
61
+ interface OptionalSymbolKeyContext extends BaseContext<"symbolKey", JsonSchema.Object> {
62
+ key: symbol;
63
+ value: JsonSchema;
64
+ optional: true;
65
+ default?: Json;
66
+ }
67
+ interface UnitContext extends BaseContext<"unit", JsonSchema> {
68
+ unit: Unjsonifiable;
69
+ }
70
+ interface DateContext extends BaseContext<"date", JsonSchema> {
71
+ before?: Date;
72
+ after?: Date;
73
+ }
74
+ interface ContextByCode {
75
+ arrayObject: ArrayObjectContext;
76
+ arrayPostfix: ArrayPostfixContext;
77
+ defaultValue: DefaultValueContext;
78
+ domain: DomainContext;
79
+ morph: MorphContext;
80
+ patternIntersection: PatternIntersectionContext;
81
+ predicate: PredicateContext;
82
+ proto: ProtoContext;
83
+ symbolKey: SymbolKeyContext;
84
+ unit: UnitContext;
85
+ date: DateContext;
86
+ }
87
+ type Code = keyof ContextByCode;
88
+ type FallbackContext = ContextByCode[Code];
89
+ type HandlerByCode = satisfy<{
90
+ [code in Code]: (ctx: ContextByCode[code]) => unknown;
91
+ }, {
92
+ arrayObject: (ctx: ArrayObjectContext) => JsonSchema.Structure;
93
+ arrayPostfix: (ctx: ArrayPostfixContext) => VariadicArraySchema;
94
+ defaultValue: (ctx: DefaultValueContext) => JsonSchema;
95
+ domain: (ctx: DomainContext) => JsonSchema;
96
+ morph: (ctx: MorphContext) => JsonSchema;
97
+ patternIntersection: (ctx: PatternIntersectionContext) => JsonSchema.String;
98
+ predicate: (ctx: PredicateContext) => JsonSchema;
99
+ proto: (ctx: ProtoContext) => JsonSchema;
100
+ symbolKey: (ctx: SymbolKeyContext) => JsonSchema.Object;
101
+ unit: (ctx: UnitContext) => JsonSchema;
102
+ date: (ctx: DateContext) => JsonSchema;
103
+ }>;
104
+ type VariadicArraySchema = requireKeys<JsonSchema.Array, "items">;
105
+ type StringSchemaWithPattern = requireKeys<JsonSchema.String, "pattern">;
106
+ type UniversalFallback = (ctx: FallbackContext) => JsonSchema;
107
+ interface FallbackObject extends Partial<HandlerByCode> {
108
+ default?: UniversalFallback;
109
+ }
110
+ type FallbackOption = UniversalFallback | FallbackObject;
111
+ type Target = satisfy<StandardJSONSchemaV1.Target, "draft-2020-12" | "draft-07">;
112
+ interface Options {
113
+ /** value to assign to the generated $schema key
114
+ *
115
+ * - set to `null` to omit the `$schema` key
116
+ * - does not affect the contents of the generated schema
117
+ * - if `target` is also specified, `dialect` takes precedence
118
+ *
119
+ * @default "https://json-schema.org/draft/2020-12/schema"
120
+ */
121
+ dialect?: string | null;
122
+ /**
123
+ * Shorthand for specifying the target JSON Schema version.
124
+ * Maps to the appropriate `dialect` URL.
125
+ *
126
+ * - "draft-2020-12" -> "https://json-schema.org/draft/2020-12/schema"
127
+ * - "draft-07" -> "http://json-schema.org/draft-07/schema#"
128
+ *
129
+ * If `dialect` is also specified, `dialect` takes precedence.
130
+ */
131
+ target?: Target;
132
+ useRefs?: boolean;
133
+ fallback?: FallbackOption;
134
+ }
135
+ interface Context extends Required<Options> {
136
+ fallback: HandlerByCode;
137
+ }
138
+ }
139
+ export {};
@@ -0,0 +1,40 @@
1
+ import { printable, throwInternalError } from "@ark/util";
2
+ class ToJsonSchemaError extends Error {
3
+ name = "ToJsonSchemaError";
4
+ code;
5
+ context;
6
+ constructor(code, context) {
7
+ super(printable(context, { quoteKeys: false, indent: 4 }));
8
+ this.code = code;
9
+ this.context = context;
10
+ }
11
+ hasCode(code) {
12
+ return this.code === code;
13
+ }
14
+ }
15
+ const defaultConfig = {
16
+ target: "draft-2020-12",
17
+ dialect: "https://json-schema.org/draft/2020-12/schema",
18
+ useRefs: false,
19
+ fallback: {
20
+ arrayObject: ctx => ToJsonSchema.throw("arrayObject", ctx),
21
+ arrayPostfix: ctx => ToJsonSchema.throw("arrayPostfix", ctx),
22
+ defaultValue: ctx => ToJsonSchema.throw("defaultValue", ctx),
23
+ domain: ctx => ToJsonSchema.throw("domain", ctx),
24
+ morph: ctx => ToJsonSchema.throw("morph", ctx),
25
+ patternIntersection: ctx => ToJsonSchema.throw("patternIntersection", ctx),
26
+ predicate: ctx => ToJsonSchema.throw("predicate", ctx),
27
+ proto: ctx => ToJsonSchema.throw("proto", ctx),
28
+ symbolKey: ctx => ToJsonSchema.throw("symbolKey", ctx),
29
+ unit: ctx => ToJsonSchema.throw("unit", ctx),
30
+ date: ctx => ToJsonSchema.throw("date", ctx)
31
+ }
32
+ };
33
+ export const ToJsonSchema = {
34
+ Error: ToJsonSchemaError,
35
+ throw: (...args) => {
36
+ throw new ToJsonSchema.Error(...args);
37
+ },
38
+ throwInternalOperandError: (kind, schema) => throwInternalError(`Unexpected JSON Schema input for ${kind}: ${printable(schema)}`),
39
+ defaultConfig
40
+ };
@@ -0,0 +1,117 @@
1
+ import { ReadonlyPath, type array } from "@ark/util";
2
+ import type { ResolvedConfig } from "../config.ts";
3
+ import type { Morph } from "../roots/morph.ts";
4
+ import { ArkError, ArkErrors, type ArkErrorCode, type ArkErrorInput, type NodeErrorContextInput } from "./errors.ts";
5
+ export type MorphsAtPath = {
6
+ path: ReadonlyPath;
7
+ morphs: array<Morph>;
8
+ };
9
+ export type BranchTraversal = {
10
+ error: ArkError | undefined;
11
+ queuedMorphs: MorphsAtPath[];
12
+ };
13
+ export type InternalTraversal = Omit<Traversal, "error" | "mustBe" | "reject">;
14
+ export declare class Traversal {
15
+ /**
16
+ * #### the path being validated or morphed
17
+ *
18
+ * ✅ array indices represented as numbers
19
+ * ⚠️ mutated during traversal - use `path.slice(0)` to snapshot
20
+ * 🔗 use {@link propString} for a stringified version
21
+ */
22
+ path: PropertyKey[];
23
+ /**
24
+ * #### {@link ArkErrors} that will be part of this traversal's finalized result
25
+ *
26
+ * ✅ will always be an empty array for a valid traversal
27
+ */
28
+ errors: ArkErrors;
29
+ /**
30
+ * #### the original value being traversed
31
+ */
32
+ root: unknown;
33
+ /**
34
+ * #### configuration for this traversal
35
+ *
36
+ * ✅ options can affect traversal results and error messages
37
+ * ✅ defaults < global config < scope config
38
+ * ✅ does not include options configured on individual types
39
+ */
40
+ config: ResolvedConfig;
41
+ queuedMorphs: MorphsAtPath[];
42
+ branches: BranchTraversal[];
43
+ seen: {
44
+ [id in string]?: unknown[];
45
+ };
46
+ constructor(root: unknown, config: ResolvedConfig);
47
+ /**
48
+ * #### the data being validated or morphed
49
+ *
50
+ * ✅ extracted from {@link root} at {@link path}
51
+ */
52
+ get data(): unknown;
53
+ /**
54
+ * #### a string representing {@link path}
55
+ *
56
+ * ✅ uses `.access` {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Property_accessors#dot_notation | where allowed by JS}, falling back to `[indexAccess]`
57
+ * @example
58
+ * const path = ["key1", Symbol("key2"), "key3", 4, "~key5"]
59
+ * const propString = 'key1[Symbol(key2)].key3[4]["~key5"]'
60
+ */
61
+ get propString(): string;
62
+ /**
63
+ * #### add an {@link ArkError} and return `false`
64
+ *
65
+ * ✅ useful for predicates like `.narrow`
66
+ */
67
+ reject(input: ArkErrorInput): false;
68
+ /**
69
+ * #### add an {@link ArkError} from a description and return `false`
70
+ *
71
+ * ✅ useful for predicates like `.narrow`
72
+ * 🔗 equivalent to {@link reject}({ expected })
73
+ */
74
+ mustBe(expected: string): false;
75
+ /**
76
+ * #### add and return an {@link ArkError}
77
+ *
78
+ * ✅ useful for morphs like `.pipe`
79
+ */
80
+ error<input extends ArkErrorInput>(input: input): ArkError<input extends {
81
+ code: ArkErrorCode;
82
+ } ? input["code"] : "predicate">;
83
+ /**
84
+ * #### whether {@link currentBranch} (or the traversal root, outside a union) has one or more errors
85
+ */
86
+ hasError(): boolean;
87
+ get currentBranch(): BranchTraversal | undefined;
88
+ queueMorphs(morphs: array<Morph>): void;
89
+ finalize(onFail?: ArkErrors.Handler | null): unknown;
90
+ get currentErrorCount(): number;
91
+ get failFast(): boolean;
92
+ pushBranch(): void;
93
+ popBranch(): BranchTraversal | undefined;
94
+ /**
95
+ * @internal
96
+ * Convenience for casting from InternalTraversal to Traversal
97
+ * for cases where the extra methods on the external type are expected, e.g.
98
+ * a morph or predicate.
99
+ */
100
+ get external(): this;
101
+ /**
102
+ * @internal
103
+ */
104
+ errorFromNodeContext<input extends NodeErrorContextInput>(input: input): ArkError<input["code"]>;
105
+ private errorFromContext;
106
+ private applyQueuedMorphs;
107
+ private applyMorphsAtPath;
108
+ }
109
+ export declare const traverseKey: <result>(key: PropertyKey, fn: () => result, ctx: InternalTraversal | undefined) => result;
110
+ export type TraversalMethodsByKind<input = unknown> = {
111
+ Allows: TraverseAllows<input>;
112
+ Apply: TraverseApply<input>;
113
+ Optimistic: TraverseApply<input>;
114
+ };
115
+ export type TraversalKind = keyof TraversalMethodsByKind & {};
116
+ export type TraverseAllows<data = unknown> = (data: data, ctx: InternalTraversal) => boolean;
117
+ export type TraverseApply<data = unknown> = (data: data, ctx: InternalTraversal) => void;
@@ -0,0 +1,226 @@
1
+ import { ReadonlyPath, stringifyPath } from "@ark/util";
2
+ import { ArkError, ArkErrors } from "./errors.js";
3
+ import { isNode } from "./utils.js";
4
+ export class Traversal {
5
+ /**
6
+ * #### the path being validated or morphed
7
+ *
8
+ * ✅ array indices represented as numbers
9
+ * ⚠️ mutated during traversal - use `path.slice(0)` to snapshot
10
+ * 🔗 use {@link propString} for a stringified version
11
+ */
12
+ path = [];
13
+ /**
14
+ * #### {@link ArkErrors} that will be part of this traversal's finalized result
15
+ *
16
+ * ✅ will always be an empty array for a valid traversal
17
+ */
18
+ errors = new ArkErrors(this);
19
+ /**
20
+ * #### the original value being traversed
21
+ */
22
+ root;
23
+ /**
24
+ * #### configuration for this traversal
25
+ *
26
+ * ✅ options can affect traversal results and error messages
27
+ * ✅ defaults < global config < scope config
28
+ * ✅ does not include options configured on individual types
29
+ */
30
+ config;
31
+ queuedMorphs = [];
32
+ branches = [];
33
+ seen = {};
34
+ constructor(root, config) {
35
+ this.root = root;
36
+ this.config = config;
37
+ }
38
+ /**
39
+ * #### the data being validated or morphed
40
+ *
41
+ * ✅ extracted from {@link root} at {@link path}
42
+ */
43
+ get data() {
44
+ let result = this.root;
45
+ for (const segment of this.path)
46
+ result = result?.[segment];
47
+ return result;
48
+ }
49
+ /**
50
+ * #### a string representing {@link path}
51
+ *
52
+ * @propString
53
+ */
54
+ get propString() {
55
+ return stringifyPath(this.path);
56
+ }
57
+ /**
58
+ * #### add an {@link ArkError} and return `false`
59
+ *
60
+ * ✅ useful for predicates like `.narrow`
61
+ */
62
+ reject(input) {
63
+ this.error(input);
64
+ return false;
65
+ }
66
+ /**
67
+ * #### add an {@link ArkError} from a description and return `false`
68
+ *
69
+ * ✅ useful for predicates like `.narrow`
70
+ * 🔗 equivalent to {@link reject}({ expected })
71
+ */
72
+ mustBe(expected) {
73
+ this.error(expected);
74
+ return false;
75
+ }
76
+ error(input) {
77
+ const errCtx = typeof input === "object" ?
78
+ input.code ?
79
+ input
80
+ : { ...input, code: "predicate" }
81
+ : { code: "predicate", expected: input };
82
+ return this.errorFromContext(errCtx);
83
+ }
84
+ /**
85
+ * #### whether {@link currentBranch} (or the traversal root, outside a union) has one or more errors
86
+ */
87
+ hasError() {
88
+ return this.currentErrorCount !== 0;
89
+ }
90
+ get currentBranch() {
91
+ return this.branches[this.branches.length - 1];
92
+ }
93
+ queueMorphs(morphs) {
94
+ const input = {
95
+ path: new ReadonlyPath(...this.path),
96
+ morphs
97
+ };
98
+ if (this.currentBranch)
99
+ this.currentBranch.queuedMorphs.push(input);
100
+ else
101
+ this.queuedMorphs.push(input);
102
+ }
103
+ finalize(onFail) {
104
+ if (this.queuedMorphs.length) {
105
+ if (typeof this.root === "object" &&
106
+ this.root !== null &&
107
+ this.config.clone)
108
+ this.root = this.config.clone(this.root);
109
+ this.applyQueuedMorphs();
110
+ }
111
+ if (this.hasError())
112
+ return onFail ? onFail(this.errors) : this.errors;
113
+ return this.root;
114
+ }
115
+ get currentErrorCount() {
116
+ return (this.currentBranch ?
117
+ this.currentBranch.error ?
118
+ 1
119
+ : 0
120
+ : this.errors.count);
121
+ }
122
+ get failFast() {
123
+ return this.branches.length !== 0;
124
+ }
125
+ pushBranch() {
126
+ this.branches.push({
127
+ error: undefined,
128
+ queuedMorphs: []
129
+ });
130
+ }
131
+ popBranch() {
132
+ return this.branches.pop();
133
+ }
134
+ /**
135
+ * @internal
136
+ * Convenience for casting from InternalTraversal to Traversal
137
+ * for cases where the extra methods on the external type are expected, e.g.
138
+ * a morph or predicate.
139
+ */
140
+ get external() {
141
+ return this;
142
+ }
143
+ errorFromNodeContext(input) {
144
+ return this.errorFromContext(input);
145
+ }
146
+ errorFromContext(errCtx) {
147
+ const error = new ArkError(errCtx, this);
148
+ if (this.currentBranch)
149
+ this.currentBranch.error = error;
150
+ else
151
+ this.errors.add(error);
152
+ return error;
153
+ }
154
+ applyQueuedMorphs() {
155
+ // invoking morphs that are Nodes will reuse this context, potentially
156
+ // adding additional morphs, so we have to continue looping until
157
+ // queuedMorphs is empty rather than iterating over the list once
158
+ while (this.queuedMorphs.length) {
159
+ const queuedMorphs = this.queuedMorphs;
160
+ this.queuedMorphs = [];
161
+ for (const { path, morphs } of queuedMorphs) {
162
+ // even if we already have an error, apply morphs that are not at a path
163
+ // with errors to capture potential validation errors
164
+ if (this.errors.affectsPath(path))
165
+ continue;
166
+ this.applyMorphsAtPath(path, morphs);
167
+ }
168
+ }
169
+ }
170
+ applyMorphsAtPath(path, morphs) {
171
+ const key = path[path.length - 1];
172
+ let parent;
173
+ if (key !== undefined) {
174
+ // find the object on which the key to be morphed exists
175
+ parent = this.root;
176
+ for (let pathIndex = 0; pathIndex < path.length - 1; pathIndex++)
177
+ parent = parent[path[pathIndex]];
178
+ }
179
+ for (const morph of morphs) {
180
+ // ensure morphs are applied relative to the correct path
181
+ // in case previous operations modified this.path
182
+ this.path = [...path];
183
+ const morphIsNode = isNode(morph);
184
+ const result = morph((parent === undefined ? this.root : parent[key]), this);
185
+ if (result instanceof ArkError) {
186
+ // if an ArkError was returned, ensure it has been added to errors
187
+ // (it may have already been added via ctx.error() within the morph)
188
+ // Only add if it's not already in the errors collection
189
+ if (!this.errors.includes(result))
190
+ this.errors.add(result);
191
+ // skip any remaining morphs at the current path
192
+ break;
193
+ }
194
+ if (result instanceof ArkErrors) {
195
+ // if the morph was a direct reference to another node,
196
+ // errors will have been added directly via this piped context
197
+ if (!morphIsNode) {
198
+ // otherwise, we have to ensure each error has been added
199
+ this.errors.merge(result);
200
+ }
201
+ // skip any remaining morphs at the current path
202
+ this.queuedMorphs = [];
203
+ break;
204
+ }
205
+ // if the morph was successful, assign the result to the
206
+ // corresponding property, or to root if path is empty
207
+ if (parent === undefined)
208
+ this.root = result;
209
+ else
210
+ parent[key] = result;
211
+ // if the current morph queued additional morphs,
212
+ // applying them before subsequent morphs
213
+ this.applyQueuedMorphs();
214
+ }
215
+ }
216
+ }
217
+ export const traverseKey = (key, fn,
218
+ // ctx will be undefined if this node isn't context-dependent
219
+ ctx) => {
220
+ if (!ctx)
221
+ return fn();
222
+ ctx.path.push(key);
223
+ const result = fn();
224
+ ctx.path.pop();
225
+ return result;
226
+ };
@@ -0,0 +1,34 @@
1
+ import { type array, type mutable, type show, type Thunk } from "@ark/util";
2
+ import type { BaseConstraint } from "../constraint.ts";
3
+ import type { GenericRoot } from "../generic.ts";
4
+ import type { InternalModule } from "../module.ts";
5
+ import type { BaseNode } from "../node.ts";
6
+ import type { BaseParseContext } from "../parse.ts";
7
+ import type { BaseRoot } from "../roots/root.ts";
8
+ import type { BaseScope } from "../scope.ts";
9
+ import type { ArkError, ArkErrors } from "./errors.ts";
10
+ export declare const makeRootAndArrayPropertiesMutable: <o extends object>(o: o) => makeRootAndArrayPropertiesMutable<o>;
11
+ export type makeRootAndArrayPropertiesMutable<inner> = {
12
+ -readonly [k in keyof inner]: inner[k] extends array | undefined ? mutable<inner[k]> : inner[k];
13
+ } & unknown;
14
+ export type internalImplementationOf<external, typeOnlyKey extends keyof external = never> = {
15
+ [k in Exclude<keyof external, typeOnlyKey>]: external[k] extends ((...args: infer args) => unknown) ? (...args: {
16
+ [i in keyof args]: never;
17
+ }) => unknown : unknown;
18
+ };
19
+ export type arkKind = typeof arkKind;
20
+ export declare const arkKind: " arkKind";
21
+ export interface ArkKinds {
22
+ constraint: BaseConstraint;
23
+ root: BaseRoot;
24
+ scope: BaseScope;
25
+ generic: GenericRoot;
26
+ module: InternalModule;
27
+ error: ArkError;
28
+ errors: ArkErrors;
29
+ context: BaseParseContext;
30
+ }
31
+ export type ArkKind = show<keyof ArkKinds>;
32
+ export declare const hasArkKind: <kind extends ArkKind>(value: unknown, kind: kind) => value is ArkKinds[kind];
33
+ export declare const isNode: (value: unknown) => value is BaseNode;
34
+ export type unwrapDefault<thunkableValue> = thunkableValue extends Thunk<infer returnValue> ? returnValue : thunkableValue;
@@ -0,0 +1,8 @@
1
+ import { flatMorph, isArray, noSuggest } from "@ark/util";
2
+ export const makeRootAndArrayPropertiesMutable = (o) =>
3
+ // this cast should not be required, but it seems TS is referencing
4
+ // the wrong parameters here?
5
+ flatMorph(o, (k, v) => [k, isArray(v) ? [...v] : v]);
6
+ export const arkKind = noSuggest("arkKind");
7
+ export const hasArkKind = (value, kind) => value?.[arkKind] === kind;
8
+ export const isNode = (value) => hasArkKind(value, "root") || hasArkKind(value, "constraint");
@@ -0,0 +1,46 @@
1
+ import { BaseConstraint } from "../constraint.ts";
2
+ import type { RootSchema, nodeOfKind } from "../kinds.ts";
3
+ import { type BaseNode, type DeepNodeTransformContext, type DeepNodeTransformation } from "../node.ts";
4
+ import type { BaseRoot } from "../roots/root.ts";
5
+ import type { BaseNormalizedSchema, declareNode } from "../shared/declare.ts";
6
+ import { type RootKind, type nodeImplementationOf } from "../shared/implement.ts";
7
+ import { type TraverseAllows, type TraverseApply } from "../shared/traversal.ts";
8
+ export declare namespace Index {
9
+ type KeyKind = Exclude<RootKind, "unit">;
10
+ type KeyNode = nodeOfKind<KeyKind>;
11
+ interface Schema extends BaseNormalizedSchema {
12
+ readonly signature: RootSchema<KeyKind>;
13
+ readonly value: RootSchema;
14
+ }
15
+ interface Inner {
16
+ readonly signature: KeyNode;
17
+ readonly value: BaseRoot;
18
+ }
19
+ interface Declaration extends declareNode<{
20
+ kind: "index";
21
+ schema: Schema;
22
+ normalizedSchema: Schema;
23
+ inner: Inner;
24
+ prerequisite: object;
25
+ intersectionIsOpen: true;
26
+ childKind: RootKind;
27
+ }> {
28
+ }
29
+ type Node = IndexNode;
30
+ }
31
+ export declare class IndexNode extends BaseConstraint<Index.Declaration> {
32
+ impliedBasis: BaseRoot;
33
+ expression: string;
34
+ flatRefs: import("../node.ts").FlatRef<BaseRoot<import("../roots/root.ts").InternalRootDeclaration>>[];
35
+ traverseAllows: TraverseAllows<object>;
36
+ traverseApply: TraverseApply<object>;
37
+ protected _transform(mapper: DeepNodeTransformation, ctx: DeepNodeTransformContext): BaseNode | null;
38
+ compile(): void;
39
+ }
40
+ export declare const Index: {
41
+ implementation: nodeImplementationOf<Index.Declaration>;
42
+ Node: typeof IndexNode;
43
+ };
44
+ export declare const writeEnumerableIndexBranches: (keys: string[]) => string;
45
+ export declare const writeInvalidPropertyKeyMessage: <indexSchema extends string>(indexSchema: indexSchema) => writeInvalidPropertyKeyMessage<indexSchema>;
46
+ export type writeInvalidPropertyKeyMessage<indexSchema extends string> = `Indexed key definition '${indexSchema}' must be a string or symbol`;