@sinclair/typebox 0.32.0-dev-16 → 0.32.0-dev-18

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 (575) hide show
  1. package/build/import/compiler/compiler.d.mts +9 -0
  2. package/build/import/compiler/compiler.mjs +60 -6
  3. package/build/import/errors/errors.d.mts +3 -0
  4. package/build/import/errors/errors.mjs +28 -3
  5. package/build/import/errors/function.d.mts +3 -0
  6. package/build/import/errors/function.mjs +4 -0
  7. package/build/import/index.mjs +9 -0
  8. package/build/import/system/policy.d.mts +10 -0
  9. package/build/import/system/policy.mjs +13 -0
  10. package/build/import/system/system.d.mts +3 -0
  11. package/build/import/system/system.mjs +9 -0
  12. package/build/import/type/any/any.d.mts +1 -0
  13. package/build/import/type/any/any.mjs +1 -0
  14. package/build/import/type/array/array.d.mts +7 -0
  15. package/build/import/type/array/array.mjs +1 -0
  16. package/build/import/type/async-iterator/async-iterator.d.mts +1 -0
  17. package/build/import/type/async-iterator/async-iterator.mjs +1 -0
  18. package/build/import/type/awaited/awaited.d.mts +7 -6
  19. package/build/import/type/awaited/awaited.mjs +23 -13
  20. package/build/import/type/bigint/bigint.d.mts +1 -0
  21. package/build/import/type/bigint/bigint.mjs +1 -0
  22. package/build/import/type/boolean/boolean.d.mts +1 -0
  23. package/build/import/type/boolean/boolean.mjs +1 -0
  24. package/build/import/type/clone/type.d.mts +2 -0
  25. package/build/import/type/clone/type.mjs +2 -0
  26. package/build/import/type/clone/value.d.mts +1 -0
  27. package/build/import/type/clone/value.mjs +2 -0
  28. package/build/import/type/composite/composite.d.mts +1 -0
  29. package/build/import/type/composite/composite.mjs +1 -0
  30. package/build/import/type/const/const.d.mts +2 -1
  31. package/build/import/type/const/const.mjs +5 -1
  32. package/build/import/type/constructor/constructor.d.mts +1 -0
  33. package/build/import/type/constructor/constructor.mjs +1 -0
  34. package/build/import/type/constructor-parameters/constructor-parameters.d.mts +1 -0
  35. package/build/import/type/constructor-parameters/constructor-parameters.mjs +1 -0
  36. package/build/import/type/date/date.d.mts +6 -0
  37. package/build/import/type/date/date.mjs +1 -0
  38. package/build/import/type/deref/deref.d.mts +1 -0
  39. package/build/import/type/deref/deref.mjs +18 -0
  40. package/build/import/type/enum/enum.d.mts +1 -0
  41. package/build/import/type/enum/enum.mjs +1 -0
  42. package/build/import/type/exclude/exclude-from-mapped-result.mjs +3 -0
  43. package/build/import/type/exclude/exclude.d.mts +2 -0
  44. package/build/import/type/exclude/exclude.mjs +3 -0
  45. package/build/import/type/extends/extends-check.mjs +173 -1
  46. package/build/import/type/extends/extends-from-mapped-key.mjs +4 -0
  47. package/build/import/type/extends/extends-from-mapped-result.mjs +3 -0
  48. package/build/import/type/extends/extends-undefined.d.mts +1 -0
  49. package/build/import/type/extends/extends-undefined.mjs +3 -0
  50. package/build/import/type/extends/extends.d.mts +3 -0
  51. package/build/import/type/extends/extends.mjs +7 -0
  52. package/build/import/type/extract/extract-from-mapped-result.mjs +3 -0
  53. package/build/import/type/extract/extract.d.mts +2 -0
  54. package/build/import/type/extract/extract.mjs +3 -0
  55. package/build/import/type/function/function.d.mts +1 -0
  56. package/build/import/type/function/function.mjs +1 -0
  57. package/build/import/type/guard/type.d.mts +46 -0
  58. package/build/import/type/guard/type.mjs +84 -1
  59. package/build/import/type/guard/value.d.mts +14 -0
  60. package/build/import/type/guard/value.mjs +14 -0
  61. package/build/import/type/helpers/helpers.d.mts +1 -0
  62. package/build/import/type/helpers/helpers.mjs +1 -0
  63. package/build/import/type/indexed/index.d.mts +0 -1
  64. package/build/import/type/indexed/index.mjs +0 -1
  65. package/build/import/type/indexed/indexed-from-mapped-key.d.mts +2 -2
  66. package/build/import/type/indexed/indexed-from-mapped-key.mjs +10 -3
  67. package/build/import/type/indexed/indexed-property-keys.d.mts +1 -0
  68. package/build/import/type/indexed/indexed-property-keys.mjs +9 -0
  69. package/build/import/type/indexed/indexed.d.mts +40 -4
  70. package/build/import/type/indexed/indexed.mjs +84 -5
  71. package/build/import/type/instance-type/instance-type.d.mts +1 -0
  72. package/build/import/type/instance-type/instance-type.mjs +1 -0
  73. package/build/import/type/integer/integer.d.mts +1 -0
  74. package/build/import/type/integer/integer.mjs +1 -0
  75. package/build/import/type/intersect/intersect-create.mjs +8 -0
  76. package/build/import/type/intersect/intersect-evaluated.d.mts +1 -0
  77. package/build/import/type/intersect/intersect-evaluated.mjs +9 -0
  78. package/build/import/type/intersect/intersect.d.mts +1 -0
  79. package/build/import/type/intersect/intersect.mjs +5 -0
  80. package/build/import/type/intrinsic/capitalize.d.mts +1 -0
  81. package/build/import/type/intrinsic/capitalize.mjs +1 -0
  82. package/build/import/type/intrinsic/intrinsic-from-mapped-key.mjs +4 -0
  83. package/build/import/type/intrinsic/intrinsic.d.mts +2 -0
  84. package/build/import/type/intrinsic/intrinsic.mjs +16 -1
  85. package/build/import/type/intrinsic/lowercase.d.mts +1 -0
  86. package/build/import/type/intrinsic/lowercase.mjs +1 -0
  87. package/build/import/type/intrinsic/uncapitalize.d.mts +1 -0
  88. package/build/import/type/intrinsic/uncapitalize.mjs +1 -0
  89. package/build/import/type/intrinsic/uppercase.d.mts +1 -0
  90. package/build/import/type/intrinsic/uppercase.mjs +1 -0
  91. package/build/import/type/iterator/iterator.d.mts +1 -0
  92. package/build/import/type/iterator/iterator.mjs +1 -0
  93. package/build/import/type/keyof/keyof-from-mapped-result.mjs +3 -0
  94. package/build/import/type/keyof/keyof-property-keys.d.mts +2 -0
  95. package/build/import/type/keyof/keyof-property-keys.mjs +20 -0
  96. package/build/import/type/keyof/keyof.d.mts +2 -0
  97. package/build/import/type/keyof/keyof.mjs +6 -0
  98. package/build/import/type/literal/literal.d.mts +1 -0
  99. package/build/import/type/literal/literal.mjs +1 -0
  100. package/build/import/type/mapped/mapped-key.mjs +1 -0
  101. package/build/import/type/mapped/mapped-result.mjs +1 -0
  102. package/build/import/type/mapped/mapped.d.mts +2 -0
  103. package/build/import/type/mapped/mapped.mjs +19 -1
  104. package/build/import/type/modifiers/modifiers.mjs +10 -0
  105. package/build/import/type/never/never.d.mts +1 -0
  106. package/build/import/type/never/never.mjs +1 -0
  107. package/build/import/type/not/not.d.mts +1 -0
  108. package/build/import/type/not/not.mjs +1 -0
  109. package/build/import/type/null/null.d.mts +1 -0
  110. package/build/import/type/null/null.mjs +1 -0
  111. package/build/import/type/number/number.d.mts +1 -0
  112. package/build/import/type/number/number.mjs +1 -0
  113. package/build/import/type/object/object.d.mts +5 -0
  114. package/build/import/type/object/object.mjs +6 -0
  115. package/build/import/type/omit/omit-from-mapped-key.mjs +4 -0
  116. package/build/import/type/omit/omit.d.mts +3 -0
  117. package/build/import/type/omit/omit.mjs +12 -0
  118. package/build/import/type/operators/operators.d.mts +8 -0
  119. package/build/import/type/operators/operators.mjs +15 -0
  120. package/build/import/type/optional/optional.d.mts +1 -0
  121. package/build/import/type/optional/optional.mjs +1 -0
  122. package/build/import/type/parameters/parameters.d.mts +1 -0
  123. package/build/import/type/parameters/parameters.mjs +1 -0
  124. package/build/import/type/partial/partial-from-mapped-result.mjs +3 -0
  125. package/build/import/type/partial/partial.d.mts +2 -0
  126. package/build/import/type/partial/partial.mjs +9 -0
  127. package/build/import/type/pick/pick-from-mapped-key.mjs +4 -0
  128. package/build/import/type/pick/pick.d.mts +3 -0
  129. package/build/import/type/pick/pick.mjs +7 -0
  130. package/build/import/type/promise/promise.d.mts +1 -0
  131. package/build/import/type/promise/promise.mjs +1 -0
  132. package/build/import/type/readonly/readonly.d.mts +1 -0
  133. package/build/import/type/readonly/readonly.mjs +1 -0
  134. package/build/import/type/readonly-optional/readonly-optional.d.mts +1 -0
  135. package/build/import/type/readonly-optional/readonly-optional.mjs +1 -0
  136. package/build/import/type/record/record.d.mts +11 -9
  137. package/build/import/type/record/record.mjs +53 -28
  138. package/build/import/type/recursive/recursive.d.mts +1 -0
  139. package/build/import/type/recursive/recursive.mjs +3 -0
  140. package/build/import/type/ref/ref.d.mts +2 -0
  141. package/build/import/type/ref/ref.mjs +1 -0
  142. package/build/import/type/regexp/regexp.d.mts +2 -0
  143. package/build/import/type/regexp/regexp.mjs +1 -0
  144. package/build/import/type/registry/format.d.mts +6 -0
  145. package/build/import/type/registry/format.mjs +7 -0
  146. package/build/import/type/registry/type.d.mts +6 -0
  147. package/build/import/type/registry/type.mjs +7 -0
  148. package/build/import/type/required/required-from-mapped-result.mjs +3 -0
  149. package/build/import/type/required/required.d.mts +2 -0
  150. package/build/import/type/required/required.mjs +9 -0
  151. package/build/import/type/rest/rest.d.mts +1 -0
  152. package/build/import/type/rest/rest.mjs +5 -0
  153. package/build/import/type/return-type/return-type.d.mts +1 -0
  154. package/build/import/type/return-type/return-type.mjs +1 -0
  155. package/build/import/type/schema/schema.d.mts +7 -0
  156. package/build/import/type/static/static.d.mts +3 -0
  157. package/build/import/type/strict/strict.d.mts +1 -0
  158. package/build/import/type/strict/strict.mjs +1 -0
  159. package/build/import/type/string/string.d.mts +7 -0
  160. package/build/import/type/string/string.mjs +1 -0
  161. package/build/import/type/symbol/symbol.d.mts +1 -0
  162. package/build/import/type/symbol/symbol.mjs +1 -0
  163. package/build/import/type/symbols/symbols.d.mts +5 -0
  164. package/build/import/type/symbols/symbols.mjs +5 -0
  165. package/build/import/type/template-literal/finite.mjs +10 -0
  166. package/build/import/type/template-literal/generate.mjs +10 -0
  167. package/build/import/type/template-literal/parser.d.mts +2 -0
  168. package/build/import/type/template-literal/parser.mjs +17 -0
  169. package/build/import/type/template-literal/pattern.mjs +11 -0
  170. package/build/import/type/template-literal/syntax.d.mts +1 -0
  171. package/build/import/type/template-literal/syntax.mjs +8 -0
  172. package/build/import/type/template-literal/template-literal.d.mts +2 -0
  173. package/build/import/type/template-literal/template-literal.mjs +2 -0
  174. package/build/import/type/template-literal/union.d.mts +1 -0
  175. package/build/import/type/template-literal/union.mjs +4 -0
  176. package/build/import/type/transform/transform.d.mts +1 -0
  177. package/build/import/type/transform/transform.mjs +9 -0
  178. package/build/import/type/tuple/tuple.d.mts +1 -0
  179. package/build/import/type/tuple/tuple.mjs +3 -0
  180. package/build/import/type/type/index.d.mts +1 -0
  181. package/build/import/type/type/index.mjs +7 -0
  182. package/build/import/type/type/javascript.d.mts +19 -0
  183. package/build/import/type/type/javascript.mjs +18 -0
  184. package/build/import/type/type/json.d.mts +64 -3
  185. package/build/import/type/type/json.mjs +55 -1
  186. package/build/import/type/type/type.mjs +3 -0
  187. package/build/import/type/uint8array/uint8array.d.mts +1 -0
  188. package/build/import/type/uint8array/uint8array.mjs +1 -0
  189. package/build/import/type/undefined/undefined.d.mts +1 -0
  190. package/build/import/type/undefined/undefined.mjs +1 -0
  191. package/build/import/type/union/union-evaluated.d.mts +1 -0
  192. package/build/import/type/union/union-evaluated.mjs +10 -0
  193. package/build/import/type/union/union.d.mts +1 -0
  194. package/build/import/type/union/union.mjs +2 -0
  195. package/build/import/type/unknown/unknown.d.mts +1 -0
  196. package/build/import/type/unknown/unknown.mjs +1 -0
  197. package/build/import/type/unsafe/unsafe.d.mts +1 -0
  198. package/build/import/type/unsafe/unsafe.mjs +1 -0
  199. package/build/import/type/void/void.d.mts +1 -0
  200. package/build/import/type/void/void.mjs +1 -0
  201. package/build/import/value/cast/cast.d.mts +2 -0
  202. package/build/import/value/cast/cast.mjs +28 -0
  203. package/build/import/value/check/check.d.mts +2 -0
  204. package/build/import/value/check/check.mjs +19 -1
  205. package/build/import/value/clean/clean.d.mts +2 -0
  206. package/build/import/value/clean/clean.mjs +12 -1
  207. package/build/import/value/clone/clone.d.mts +1 -0
  208. package/build/import/value/clone/clone.mjs +7 -0
  209. package/build/import/value/convert/convert.d.mts +2 -0
  210. package/build/import/value/convert/convert.mjs +30 -1
  211. package/build/import/value/create/create.d.mts +2 -0
  212. package/build/import/value/create/create.mjs +17 -0
  213. package/build/import/value/default/default.d.mts +2 -0
  214. package/build/import/value/default/default.mjs +19 -0
  215. package/build/import/value/delta/delta.mjs +15 -0
  216. package/build/import/value/deref/deref.d.mts +1 -0
  217. package/build/import/value/deref/deref.mjs +1 -0
  218. package/build/import/value/equal/equal.d.mts +1 -0
  219. package/build/import/value/equal/equal.mjs +7 -0
  220. package/build/import/value/guard/guard.d.mts +20 -0
  221. package/build/import/value/guard/guard.mjs +30 -0
  222. package/build/import/value/hash/hash.d.mts +1 -0
  223. package/build/import/value/hash/hash.mjs +19 -0
  224. package/build/import/value/index.mjs +12 -0
  225. package/build/import/value/mutate/mutate.d.mts +1 -0
  226. package/build/import/value/mutate/mutate.mjs +11 -0
  227. package/build/import/value/pointer/pointer.d.mts +5 -0
  228. package/build/import/value/pointer/pointer.mjs +18 -0
  229. package/build/import/value/transform/decode.d.mts +5 -0
  230. package/build/import/value/transform/decode.mjs +23 -0
  231. package/build/import/value/transform/encode.d.mts +6 -0
  232. package/build/import/value/transform/encode.mjs +25 -0
  233. package/build/import/value/transform/has.d.mts +1 -0
  234. package/build/import/value/transform/has.mjs +16 -0
  235. package/build/import/value/value/value.d.mts +24 -0
  236. package/build/import/value/value/value.mjs +15 -0
  237. package/build/require/compiler/compiler.d.ts +9 -0
  238. package/build/require/compiler/compiler.js +61 -6
  239. package/build/require/compiler/index.js +1 -0
  240. package/build/require/errors/errors.d.ts +3 -0
  241. package/build/require/errors/errors.js +29 -3
  242. package/build/require/errors/function.d.ts +3 -0
  243. package/build/require/errors/function.js +5 -0
  244. package/build/require/errors/index.js +1 -0
  245. package/build/require/index.js +10 -0
  246. package/build/require/system/index.js +1 -0
  247. package/build/require/system/policy.d.ts +10 -0
  248. package/build/require/system/policy.js +14 -0
  249. package/build/require/system/system.d.ts +3 -0
  250. package/build/require/system/system.js +10 -0
  251. package/build/require/type/any/any.d.ts +1 -0
  252. package/build/require/type/any/any.js +2 -0
  253. package/build/require/type/any/index.js +1 -0
  254. package/build/require/type/array/array.d.ts +7 -0
  255. package/build/require/type/array/array.js +2 -0
  256. package/build/require/type/array/index.js +1 -0
  257. package/build/require/type/async-iterator/async-iterator.d.ts +1 -0
  258. package/build/require/type/async-iterator/async-iterator.js +2 -0
  259. package/build/require/type/async-iterator/index.js +1 -0
  260. package/build/require/type/awaited/awaited.d.ts +7 -6
  261. package/build/require/type/awaited/awaited.js +25 -15
  262. package/build/require/type/awaited/index.js +1 -0
  263. package/build/require/type/bigint/bigint.d.ts +1 -0
  264. package/build/require/type/bigint/bigint.js +2 -0
  265. package/build/require/type/bigint/index.js +1 -0
  266. package/build/require/type/boolean/boolean.d.ts +1 -0
  267. package/build/require/type/boolean/boolean.js +2 -0
  268. package/build/require/type/boolean/index.js +1 -0
  269. package/build/require/type/clone/index.js +1 -0
  270. package/build/require/type/clone/type.d.ts +2 -0
  271. package/build/require/type/clone/type.js +3 -0
  272. package/build/require/type/clone/value.d.ts +1 -0
  273. package/build/require/type/clone/value.js +3 -0
  274. package/build/require/type/composite/composite.d.ts +1 -0
  275. package/build/require/type/composite/composite.js +2 -0
  276. package/build/require/type/composite/index.js +1 -0
  277. package/build/require/type/const/const.d.ts +2 -1
  278. package/build/require/type/const/const.js +6 -1
  279. package/build/require/type/const/index.js +1 -0
  280. package/build/require/type/constructor/constructor.d.ts +1 -0
  281. package/build/require/type/constructor/constructor.js +2 -0
  282. package/build/require/type/constructor/index.js +1 -0
  283. package/build/require/type/constructor-parameters/constructor-parameters.d.ts +1 -0
  284. package/build/require/type/constructor-parameters/constructor-parameters.js +2 -0
  285. package/build/require/type/constructor-parameters/index.js +1 -0
  286. package/build/require/type/date/date.d.ts +6 -0
  287. package/build/require/type/date/date.js +2 -0
  288. package/build/require/type/date/index.js +1 -0
  289. package/build/require/type/deref/deref.d.ts +1 -0
  290. package/build/require/type/deref/deref.js +19 -0
  291. package/build/require/type/deref/index.js +1 -0
  292. package/build/require/type/discard/discard.js +1 -0
  293. package/build/require/type/discard/index.js +1 -0
  294. package/build/require/type/enum/enum.d.ts +1 -0
  295. package/build/require/type/enum/enum.js +2 -0
  296. package/build/require/type/enum/index.js +1 -0
  297. package/build/require/type/exclude/exclude-from-mapped-result.js +4 -0
  298. package/build/require/type/exclude/exclude.d.ts +2 -0
  299. package/build/require/type/exclude/exclude.js +4 -0
  300. package/build/require/type/exclude/index.js +1 -0
  301. package/build/require/type/extends/extends-check.js +174 -1
  302. package/build/require/type/extends/extends-from-mapped-key.js +5 -0
  303. package/build/require/type/extends/extends-from-mapped-result.js +4 -0
  304. package/build/require/type/extends/extends-undefined.d.ts +1 -0
  305. package/build/require/type/extends/extends-undefined.js +4 -0
  306. package/build/require/type/extends/extends.d.ts +3 -0
  307. package/build/require/type/extends/extends.js +8 -0
  308. package/build/require/type/extends/index.js +1 -0
  309. package/build/require/type/extract/extract-from-mapped-result.js +4 -0
  310. package/build/require/type/extract/extract.d.ts +2 -0
  311. package/build/require/type/extract/extract.js +4 -0
  312. package/build/require/type/extract/index.js +1 -0
  313. package/build/require/type/function/function.d.ts +1 -0
  314. package/build/require/type/function/function.js +2 -0
  315. package/build/require/type/function/index.js +1 -0
  316. package/build/require/type/guard/index.js +1 -0
  317. package/build/require/type/guard/type.d.ts +46 -0
  318. package/build/require/type/guard/type.js +85 -1
  319. package/build/require/type/guard/value.d.ts +14 -0
  320. package/build/require/type/guard/value.js +15 -0
  321. package/build/require/type/helpers/helpers.d.ts +1 -0
  322. package/build/require/type/helpers/helpers.js +2 -0
  323. package/build/require/type/helpers/index.js +1 -0
  324. package/build/require/type/index.js +1 -0
  325. package/build/require/type/indexed/index.d.ts +0 -1
  326. package/build/require/type/indexed/index.js +1 -1
  327. package/build/require/type/indexed/indexed-from-mapped-key.d.ts +2 -2
  328. package/build/require/type/indexed/indexed-from-mapped-key.js +11 -3
  329. package/build/require/type/indexed/indexed-property-keys.d.ts +1 -0
  330. package/build/require/type/indexed/indexed-property-keys.js +10 -0
  331. package/build/require/type/indexed/indexed.d.ts +40 -4
  332. package/build/require/type/indexed/indexed.js +84 -4
  333. package/build/require/type/instance-type/index.js +1 -0
  334. package/build/require/type/instance-type/instance-type.d.ts +1 -0
  335. package/build/require/type/instance-type/instance-type.js +2 -0
  336. package/build/require/type/integer/index.js +1 -0
  337. package/build/require/type/integer/integer.d.ts +1 -0
  338. package/build/require/type/integer/integer.js +2 -0
  339. package/build/require/type/intersect/index.js +1 -0
  340. package/build/require/type/intersect/intersect-create.js +9 -0
  341. package/build/require/type/intersect/intersect-evaluated.d.ts +1 -0
  342. package/build/require/type/intersect/intersect-evaluated.js +10 -0
  343. package/build/require/type/intersect/intersect-type.js +1 -0
  344. package/build/require/type/intersect/intersect.d.ts +1 -0
  345. package/build/require/type/intersect/intersect.js +6 -0
  346. package/build/require/type/intrinsic/capitalize.d.ts +1 -0
  347. package/build/require/type/intrinsic/capitalize.js +2 -0
  348. package/build/require/type/intrinsic/index.js +1 -0
  349. package/build/require/type/intrinsic/intrinsic-from-mapped-key.js +5 -0
  350. package/build/require/type/intrinsic/intrinsic.d.ts +2 -0
  351. package/build/require/type/intrinsic/intrinsic.js +17 -1
  352. package/build/require/type/intrinsic/lowercase.d.ts +1 -0
  353. package/build/require/type/intrinsic/lowercase.js +2 -0
  354. package/build/require/type/intrinsic/uncapitalize.d.ts +1 -0
  355. package/build/require/type/intrinsic/uncapitalize.js +2 -0
  356. package/build/require/type/intrinsic/uppercase.d.ts +1 -0
  357. package/build/require/type/intrinsic/uppercase.js +2 -0
  358. package/build/require/type/iterator/index.js +1 -0
  359. package/build/require/type/iterator/iterator.d.ts +1 -0
  360. package/build/require/type/iterator/iterator.js +2 -0
  361. package/build/require/type/keyof/index.js +1 -0
  362. package/build/require/type/keyof/keyof-from-mapped-result.js +4 -0
  363. package/build/require/type/keyof/keyof-property-keys.d.ts +2 -0
  364. package/build/require/type/keyof/keyof-property-keys.js +21 -0
  365. package/build/require/type/keyof/keyof.d.ts +2 -0
  366. package/build/require/type/keyof/keyof.js +7 -0
  367. package/build/require/type/literal/index.js +1 -0
  368. package/build/require/type/literal/literal.d.ts +1 -0
  369. package/build/require/type/literal/literal.js +2 -0
  370. package/build/require/type/mapped/index.js +1 -0
  371. package/build/require/type/mapped/mapped-key.js +2 -0
  372. package/build/require/type/mapped/mapped-result.js +2 -0
  373. package/build/require/type/mapped/mapped.d.ts +2 -0
  374. package/build/require/type/mapped/mapped.js +20 -1
  375. package/build/require/type/modifiers/index.js +1 -0
  376. package/build/require/type/modifiers/modifiers.js +11 -0
  377. package/build/require/type/never/index.js +1 -0
  378. package/build/require/type/never/never.d.ts +1 -0
  379. package/build/require/type/never/never.js +2 -0
  380. package/build/require/type/not/index.js +1 -0
  381. package/build/require/type/not/not.d.ts +1 -0
  382. package/build/require/type/not/not.js +2 -0
  383. package/build/require/type/null/index.js +1 -0
  384. package/build/require/type/null/null.d.ts +1 -0
  385. package/build/require/type/null/null.js +2 -0
  386. package/build/require/type/number/index.js +1 -0
  387. package/build/require/type/number/number.d.ts +1 -0
  388. package/build/require/type/number/number.js +2 -0
  389. package/build/require/type/object/index.js +1 -0
  390. package/build/require/type/object/object.d.ts +5 -0
  391. package/build/require/type/object/object.js +7 -0
  392. package/build/require/type/omit/index.js +1 -0
  393. package/build/require/type/omit/omit-from-mapped-key.js +5 -0
  394. package/build/require/type/omit/omit.d.ts +3 -0
  395. package/build/require/type/omit/omit.js +13 -0
  396. package/build/require/type/operators/index.js +1 -0
  397. package/build/require/type/operators/operators.d.ts +8 -0
  398. package/build/require/type/operators/operators.js +16 -0
  399. package/build/require/type/optional/index.js +1 -0
  400. package/build/require/type/optional/optional.d.ts +1 -0
  401. package/build/require/type/optional/optional.js +2 -0
  402. package/build/require/type/parameters/index.js +1 -0
  403. package/build/require/type/parameters/parameters.d.ts +1 -0
  404. package/build/require/type/parameters/parameters.js +2 -0
  405. package/build/require/type/partial/index.js +1 -0
  406. package/build/require/type/partial/partial-from-mapped-result.js +4 -0
  407. package/build/require/type/partial/partial.d.ts +2 -0
  408. package/build/require/type/partial/partial.js +10 -0
  409. package/build/require/type/patterns/index.js +1 -0
  410. package/build/require/type/patterns/patterns.js +1 -0
  411. package/build/require/type/pick/index.js +1 -0
  412. package/build/require/type/pick/pick-from-mapped-key.js +5 -0
  413. package/build/require/type/pick/pick.d.ts +3 -0
  414. package/build/require/type/pick/pick.js +8 -0
  415. package/build/require/type/promise/index.js +1 -0
  416. package/build/require/type/promise/promise.d.ts +1 -0
  417. package/build/require/type/promise/promise.js +2 -0
  418. package/build/require/type/readonly/index.js +1 -0
  419. package/build/require/type/readonly/readonly.d.ts +1 -0
  420. package/build/require/type/readonly/readonly.js +2 -0
  421. package/build/require/type/readonly-optional/index.js +1 -0
  422. package/build/require/type/readonly-optional/readonly-optional.d.ts +1 -0
  423. package/build/require/type/readonly-optional/readonly-optional.js +2 -0
  424. package/build/require/type/record/index.js +1 -0
  425. package/build/require/type/record/record.d.ts +11 -9
  426. package/build/require/type/record/record.js +54 -28
  427. package/build/require/type/recursive/index.js +1 -0
  428. package/build/require/type/recursive/recursive.d.ts +1 -0
  429. package/build/require/type/recursive/recursive.js +4 -0
  430. package/build/require/type/ref/index.js +1 -0
  431. package/build/require/type/ref/ref.d.ts +2 -0
  432. package/build/require/type/ref/ref.js +2 -0
  433. package/build/require/type/regexp/index.js +1 -0
  434. package/build/require/type/regexp/regexp.d.ts +2 -0
  435. package/build/require/type/regexp/regexp.js +2 -0
  436. package/build/require/type/registry/format.d.ts +6 -0
  437. package/build/require/type/registry/format.js +8 -0
  438. package/build/require/type/registry/index.js +1 -0
  439. package/build/require/type/registry/type.d.ts +6 -0
  440. package/build/require/type/registry/type.js +8 -0
  441. package/build/require/type/required/index.js +1 -0
  442. package/build/require/type/required/required-from-mapped-result.js +4 -0
  443. package/build/require/type/required/required.d.ts +2 -0
  444. package/build/require/type/required/required.js +10 -0
  445. package/build/require/type/rest/index.js +1 -0
  446. package/build/require/type/rest/rest.d.ts +1 -0
  447. package/build/require/type/rest/rest.js +6 -0
  448. package/build/require/type/return-type/index.js +1 -0
  449. package/build/require/type/return-type/return-type.d.ts +1 -0
  450. package/build/require/type/return-type/return-type.js +2 -0
  451. package/build/require/type/schema/anyschema.js +1 -0
  452. package/build/require/type/schema/index.js +1 -0
  453. package/build/require/type/schema/schema.d.ts +7 -0
  454. package/build/require/type/schema/schema.js +1 -0
  455. package/build/require/type/static/index.js +1 -0
  456. package/build/require/type/static/static.d.ts +3 -0
  457. package/build/require/type/static/static.js +1 -0
  458. package/build/require/type/strict/index.js +1 -0
  459. package/build/require/type/strict/strict.d.ts +1 -0
  460. package/build/require/type/strict/strict.js +2 -0
  461. package/build/require/type/string/index.js +1 -0
  462. package/build/require/type/string/string.d.ts +7 -0
  463. package/build/require/type/string/string.js +2 -0
  464. package/build/require/type/symbol/index.js +1 -0
  465. package/build/require/type/symbol/symbol.d.ts +1 -0
  466. package/build/require/type/symbol/symbol.js +2 -0
  467. package/build/require/type/symbols/index.js +1 -0
  468. package/build/require/type/symbols/symbols.d.ts +5 -0
  469. package/build/require/type/symbols/symbols.js +6 -0
  470. package/build/require/type/template-literal/finite.js +11 -0
  471. package/build/require/type/template-literal/generate.js +11 -0
  472. package/build/require/type/template-literal/index.js +1 -0
  473. package/build/require/type/template-literal/parser.d.ts +2 -0
  474. package/build/require/type/template-literal/parser.js +18 -0
  475. package/build/require/type/template-literal/pattern.js +12 -0
  476. package/build/require/type/template-literal/syntax.d.ts +1 -0
  477. package/build/require/type/template-literal/syntax.js +9 -0
  478. package/build/require/type/template-literal/template-literal.d.ts +2 -0
  479. package/build/require/type/template-literal/template-literal.js +3 -0
  480. package/build/require/type/template-literal/union.d.ts +1 -0
  481. package/build/require/type/template-literal/union.js +5 -0
  482. package/build/require/type/transform/index.js +1 -0
  483. package/build/require/type/transform/transform.d.ts +1 -0
  484. package/build/require/type/transform/transform.js +10 -0
  485. package/build/require/type/tuple/index.js +1 -0
  486. package/build/require/type/tuple/tuple.d.ts +1 -0
  487. package/build/require/type/tuple/tuple.js +4 -0
  488. package/build/require/type/type/index.d.ts +1 -0
  489. package/build/require/type/type/index.js +8 -0
  490. package/build/require/type/type/javascript.d.ts +19 -0
  491. package/build/require/type/type/javascript.js +19 -0
  492. package/build/require/type/type/json.d.ts +64 -3
  493. package/build/require/type/type/json.js +56 -1
  494. package/build/require/type/type/type.js +4 -0
  495. package/build/require/type/uint8array/index.js +1 -0
  496. package/build/require/type/uint8array/uint8array.d.ts +1 -0
  497. package/build/require/type/uint8array/uint8array.js +2 -0
  498. package/build/require/type/undefined/index.js +1 -0
  499. package/build/require/type/undefined/undefined.d.ts +1 -0
  500. package/build/require/type/undefined/undefined.js +2 -0
  501. package/build/require/type/union/index.js +1 -0
  502. package/build/require/type/union/union-create.js +1 -0
  503. package/build/require/type/union/union-evaluated.d.ts +1 -0
  504. package/build/require/type/union/union-evaluated.js +11 -0
  505. package/build/require/type/union/union-type.js +1 -0
  506. package/build/require/type/union/union.d.ts +1 -0
  507. package/build/require/type/union/union.js +3 -0
  508. package/build/require/type/unknown/index.js +1 -0
  509. package/build/require/type/unknown/unknown.d.ts +1 -0
  510. package/build/require/type/unknown/unknown.js +2 -0
  511. package/build/require/type/unsafe/index.js +1 -0
  512. package/build/require/type/unsafe/unsafe.d.ts +1 -0
  513. package/build/require/type/unsafe/unsafe.js +2 -0
  514. package/build/require/type/void/index.js +1 -0
  515. package/build/require/type/void/void.d.ts +1 -0
  516. package/build/require/type/void/void.js +2 -0
  517. package/build/require/value/cast/cast.d.ts +2 -0
  518. package/build/require/value/cast/cast.js +29 -0
  519. package/build/require/value/cast/index.js +1 -0
  520. package/build/require/value/check/check.d.ts +2 -0
  521. package/build/require/value/check/check.js +20 -1
  522. package/build/require/value/check/index.js +1 -0
  523. package/build/require/value/clean/clean.d.ts +2 -0
  524. package/build/require/value/clean/clean.js +13 -1
  525. package/build/require/value/clean/index.js +1 -0
  526. package/build/require/value/clone/clone.d.ts +1 -0
  527. package/build/require/value/clone/clone.js +8 -0
  528. package/build/require/value/clone/index.js +1 -0
  529. package/build/require/value/convert/convert.d.ts +2 -0
  530. package/build/require/value/convert/convert.js +31 -1
  531. package/build/require/value/convert/index.js +1 -0
  532. package/build/require/value/create/create.d.ts +2 -0
  533. package/build/require/value/create/create.js +18 -0
  534. package/build/require/value/create/index.js +1 -0
  535. package/build/require/value/default/default.d.ts +2 -0
  536. package/build/require/value/default/default.js +20 -0
  537. package/build/require/value/default/index.js +1 -0
  538. package/build/require/value/delta/delta.js +16 -0
  539. package/build/require/value/delta/index.js +1 -0
  540. package/build/require/value/deref/deref.d.ts +1 -0
  541. package/build/require/value/deref/deref.js +2 -0
  542. package/build/require/value/deref/index.js +1 -0
  543. package/build/require/value/equal/equal.d.ts +1 -0
  544. package/build/require/value/equal/equal.js +8 -0
  545. package/build/require/value/equal/index.js +1 -0
  546. package/build/require/value/guard/guard.d.ts +20 -0
  547. package/build/require/value/guard/guard.js +31 -0
  548. package/build/require/value/guard/index.js +1 -0
  549. package/build/require/value/hash/hash.d.ts +1 -0
  550. package/build/require/value/hash/hash.js +20 -0
  551. package/build/require/value/hash/index.js +1 -0
  552. package/build/require/value/index.js +13 -0
  553. package/build/require/value/mutate/index.js +1 -0
  554. package/build/require/value/mutate/mutate.d.ts +1 -0
  555. package/build/require/value/mutate/mutate.js +12 -0
  556. package/build/require/value/pointer/index.js +1 -0
  557. package/build/require/value/pointer/pointer.d.ts +5 -0
  558. package/build/require/value/pointer/pointer.js +19 -0
  559. package/build/require/value/transform/decode.d.ts +5 -0
  560. package/build/require/value/transform/decode.js +24 -0
  561. package/build/require/value/transform/encode.d.ts +6 -0
  562. package/build/require/value/transform/encode.js +26 -0
  563. package/build/require/value/transform/has.d.ts +1 -0
  564. package/build/require/value/transform/has.js +17 -0
  565. package/build/require/value/transform/index.js +1 -0
  566. package/build/require/value/value/index.js +1 -0
  567. package/build/require/value/value/value.d.ts +24 -0
  568. package/build/require/value/value/value.js +16 -0
  569. package/license +3 -1
  570. package/package.json +1 -1
  571. package/readme.md +4 -5
  572. package/build/import/type/indexed/indexed-result.d.mts +0 -33
  573. package/build/import/type/indexed/indexed-result.mjs +0 -65
  574. package/build/require/type/indexed/indexed-result.d.ts +0 -33
  575. package/build/require/type/indexed/indexed-result.js +0 -69
@@ -1,15 +1,27 @@
1
1
  "use strict";
2
+
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  exports.TemplateLiteralPattern = exports.TemplateLiteralPatternError = void 0;
4
5
  const index_1 = require("../patterns/index");
5
6
  const index_2 = require("../symbols/index");
7
+ // ------------------------------------------------------------------
8
+ // TypeGuard
9
+ // ------------------------------------------------------------------
10
+ // prettier-ignore
6
11
  const type_1 = require("../guard/type");
12
+ // ------------------------------------------------------------------
13
+ // TemplateLiteralPatternError
14
+ // ------------------------------------------------------------------
7
15
  class TemplateLiteralPatternError extends Error {
8
16
  }
9
17
  exports.TemplateLiteralPatternError = TemplateLiteralPatternError;
18
+ // ------------------------------------------------------------------
19
+ // TemplateLiteralPattern
20
+ // ------------------------------------------------------------------
10
21
  function Escape(value) {
11
22
  return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
12
23
  }
24
+ // prettier-ignore
13
25
  function Visit(schema, acc) {
14
26
  return ((0, type_1.TTemplateLiteral)(schema) ? schema.pattern.slice(1, schema.pattern.length - 1) :
15
27
  (0, type_1.TUnion)(schema) ? `(${schema.anyOf.map((schema) => Visit(schema, acc)).join('|')})` :
@@ -15,5 +15,6 @@ type FromTerminal<T extends string> = T extends 'boolean' ? TBoolean : T extends
15
15
  type FromString<T extends string> = T extends `{${infer L}}${infer R}` ? [FromTerminal<L>, ...FromString<R>] : T extends `${infer L}$${infer R}` ? [TLiteral<L>, ...FromString<R>] : T extends `${infer L}` ? [TLiteral<L>] : [
16
16
  ];
17
17
  export type TemplateLiteralSyntax<T extends string> = (TTemplateLiteral<Assert<FromString<T>, TTemplateLiteralKind[]>>);
18
+ /** Parses TemplateLiteralSyntax and returns a tuple of TemplateLiteralKinds */
18
19
  export declare function TemplateLiteralSyntax(syntax: string): TTemplateLiteralKind[];
19
20
  export {};
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  exports.TemplateLiteralSyntax = void 0;
4
5
  const index_1 = require("../literal/index");
@@ -8,6 +9,10 @@ const index_4 = require("../number/index");
8
9
  const index_5 = require("../string/index");
9
10
  const index_6 = require("../union/index");
10
11
  const index_7 = require("../never/index");
12
+ // ------------------------------------------------------------------
13
+ // SyntaxParsers
14
+ // ------------------------------------------------------------------
15
+ // prettier-ignore
11
16
  function* FromUnion(syntax) {
12
17
  const trim = syntax.trim().replace(/"|'/g, '');
13
18
  return (trim === 'boolean' ? yield (0, index_2.Boolean)() :
@@ -21,6 +26,7 @@ function* FromUnion(syntax) {
21
26
  (0, index_6.Union)(literals));
22
27
  })());
23
28
  }
29
+ // prettier-ignore
24
30
  function* FromTerminal(syntax) {
25
31
  if (syntax[1] !== '{') {
26
32
  const L = (0, index_1.Literal)('$');
@@ -36,6 +42,7 @@ function* FromTerminal(syntax) {
36
42
  }
37
43
  yield (0, index_1.Literal)(syntax);
38
44
  }
45
+ // prettier-ignore
39
46
  function* FromSyntax(syntax) {
40
47
  for (let i = 0; i < syntax.length; i++) {
41
48
  if (syntax[i] === '$') {
@@ -46,6 +53,8 @@ function* FromSyntax(syntax) {
46
53
  }
47
54
  yield (0, index_1.Literal)(syntax);
48
55
  }
56
+ // prettier-ignore
57
+ /** Parses TemplateLiteralSyntax and returns a tuple of TemplateLiteralKinds */
49
58
  function TemplateLiteralSyntax(syntax) {
50
59
  return [...FromSyntax(syntax)];
51
60
  }
@@ -23,6 +23,8 @@ export interface TTemplateLiteral<T extends TTemplateLiteralKind[] = TTemplateLi
23
23
  type: 'string';
24
24
  pattern: string;
25
25
  }
26
+ /** `[Json]` Creates a TemplateLiteral type from template dsl string */
26
27
  export declare function TemplateLiteral<T extends string>(syntax: T, options?: SchemaOptions): TemplateLiteralSyntax<T>;
28
+ /** `[Json]` Creates a TemplateLiteral type */
27
29
  export declare function TemplateLiteral<T extends TTemplateLiteralKind[]>(kinds: [...T], options?: SchemaOptions): TTemplateLiteral<T>;
28
30
  export {};
@@ -1,10 +1,13 @@
1
1
  "use strict";
2
+
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  exports.TemplateLiteral = void 0;
4
5
  const pattern_1 = require("./pattern");
5
6
  const syntax_1 = require("./syntax");
6
7
  const value_1 = require("../guard/value");
7
8
  const index_1 = require("../symbols/index");
9
+ /** `[Json]` Creates a TemplateLiteral type */
10
+ // prettier-ignore
8
11
  function TemplateLiteral(unresolved, options = {}) {
9
12
  const pattern = (0, value_1.IsString)(unresolved)
10
13
  ? (0, pattern_1.TemplateLiteralPattern)((0, syntax_1.TemplateLiteralSyntax)(unresolved))
@@ -3,4 +3,5 @@ import { type TUnion } from '../union/index';
3
3
  import { type TLiteral } from '../literal/index';
4
4
  import { type TString } from '../string/index';
5
5
  import { type TNever } from '../never/index';
6
+ /** Resolves a template literal as a TUnion */
6
7
  export declare function TemplateLiteralToUnion(template: TTemplateLiteral): TNever | TString | TUnion<TLiteral[]>;
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  exports.TemplateLiteralToUnion = void 0;
4
5
  const index_1 = require("../union/index");
@@ -7,6 +8,10 @@ const index_3 = require("../string/index");
7
8
  const generate_1 = require("./generate");
8
9
  const parser_1 = require("./parser");
9
10
  const finite_1 = require("./finite");
11
+ // ------------------------------------------------------------------
12
+ // TemplateLiteralToUnion
13
+ // ------------------------------------------------------------------
14
+ /** Resolves a template literal as a TUnion */
10
15
  function TemplateLiteralToUnion(template) {
11
16
  const expression = (0, parser_1.TemplateLiteralParseExact)(template.pattern);
12
17
  if (!(0, finite_1.IsTemplateLiteralFinite)(expression))
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+
2
3
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
4
  if (k2 === undefined) k2 = k;
4
5
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -25,5 +25,6 @@ export interface TTransform<I extends TSchema = TSchema, O extends unknown = unk
25
25
  [TransformKind]: TransformOptions<I, O>;
26
26
  [key: string]: any;
27
27
  }
28
+ /** `[Json]` Creates a Transform type */
28
29
  export declare function Transform<I extends TSchema>(schema: I): TransformDecodeBuilder<I>;
29
30
  export {};
@@ -1,9 +1,17 @@
1
1
  "use strict";
2
+
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  exports.Transform = exports.TransformEncodeBuilder = exports.TransformDecodeBuilder = void 0;
4
5
  const type_1 = require("../clone/type");
5
6
  const index_1 = require("../symbols/index");
7
+ // ------------------------------------------------------------------
8
+ // TypeGuard
9
+ // ------------------------------------------------------------------
10
+ // prettier-ignore
6
11
  const type_2 = require("../guard/type");
12
+ // ------------------------------------------------------------------
13
+ // TransformBuilders
14
+ // ------------------------------------------------------------------
7
15
  class TransformDecodeBuilder {
8
16
  constructor(schema) {
9
17
  this.schema = schema;
@@ -13,6 +21,7 @@ class TransformDecodeBuilder {
13
21
  }
14
22
  }
15
23
  exports.TransformDecodeBuilder = TransformDecodeBuilder;
24
+ // prettier-ignore
16
25
  class TransformEncodeBuilder {
17
26
  constructor(schema, decode) {
18
27
  this.schema = schema;
@@ -34,6 +43,7 @@ class TransformEncodeBuilder {
34
43
  }
35
44
  }
36
45
  exports.TransformEncodeBuilder = TransformEncodeBuilder;
46
+ /** `[Json]` Creates a Transform type */
37
47
  function Transform(schema) {
38
48
  return new TransformDecodeBuilder(schema);
39
49
  }
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+
2
3
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
4
  if (k2 === undefined) k2 = k;
4
5
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -12,5 +12,6 @@ export interface TTuple<T extends TSchema[] = TSchema[]> extends TSchema {
12
12
  minItems: number;
13
13
  maxItems: number;
14
14
  }
15
+ /** `[Json]` Creates a Tuple type */
15
16
  export declare function Tuple<T extends TSchema[]>(items: [...T], options?: SchemaOptions): TTuple<T>;
16
17
  export {};
@@ -1,10 +1,14 @@
1
1
  "use strict";
2
+
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  exports.Tuple = void 0;
4
5
  const type_1 = require("../clone/type");
5
6
  const index_1 = require("../symbols/index");
7
+ /** `[Json]` Creates a Tuple type */
6
8
  function Tuple(items, options = {}) {
9
+ // return TupleResolver.Resolve(T)
7
10
  const [additionalItems, minItems, maxItems] = [false, items.length, items.length];
11
+ // prettier-ignore
8
12
  return (items.length > 0 ?
9
13
  { ...options, [index_1.Kind]: 'Tuple', type: 'array', items: (0, type_1.CloneRest)(items), additionalItems, minItems, maxItems } :
10
14
  { ...options, [index_1.Kind]: 'Tuple', type: 'array', minItems, maxItems });
@@ -1,5 +1,6 @@
1
1
  export { JsonTypeBuilder } from './json';
2
2
  import { JavaScriptTypeBuilder } from './javascript';
3
+ /** JavaScript Type Builder with Static Resolution for TypeScript */
3
4
  declare const Type: JavaScriptTypeBuilder;
4
5
  export { JavaScriptTypeBuilder };
5
6
  export { Type };
@@ -1,10 +1,18 @@
1
1
  "use strict";
2
+
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  exports.Type = exports.JavaScriptTypeBuilder = exports.JsonTypeBuilder = void 0;
5
+ // ------------------------------------------------------------------
6
+ // JsonTypeBuilder
7
+ // ------------------------------------------------------------------
4
8
  var json_1 = require("./json");
5
9
  Object.defineProperty(exports, "JsonTypeBuilder", { enumerable: true, get: function () { return json_1.JsonTypeBuilder; } });
10
+ // ------------------------------------------------------------------
11
+ // JavaScriptTypeBuilder
12
+ // ------------------------------------------------------------------
6
13
  const TypeBuilder = require("./type");
7
14
  const javascript_1 = require("./javascript");
8
15
  Object.defineProperty(exports, "JavaScriptTypeBuilder", { enumerable: true, get: function () { return javascript_1.JavaScriptTypeBuilder; } });
16
+ /** JavaScript Type Builder with Static Resolution for TypeScript */
9
17
  const Type = TypeBuilder;
10
18
  exports.Type = Type;
@@ -17,23 +17,42 @@ import { type TSymbol } from '../symbol/index';
17
17
  import { type TUint8Array, type Uint8ArrayOptions } from '../uint8array/index';
18
18
  import { type TUndefined } from '../undefined/index';
19
19
  import { type TVoid } from '../void/index';
20
+ /** JavaScript Type Builder with Static Resolution for TypeScript */
20
21
  export declare class JavaScriptTypeBuilder extends JsonTypeBuilder {
22
+ /** `[JavaScript]` Creates a AsyncIterator type */
21
23
  AsyncIterator<T extends TSchema>(items: T, options?: SchemaOptions): TAsyncIterator<T>;
24
+ /** `[JavaScript]` Constructs a type by recursively unwrapping Promise types */
22
25
  Awaited<T extends TSchema>(schema: T, options?: SchemaOptions): TAwaited<T>;
26
+ /** `[JavaScript]` Creates a BigInt type */
23
27
  BigInt(options?: BigIntOptions): TBigInt;
28
+ /** `[JavaScript]` Extracts the ConstructorParameters from the given Constructor type */
24
29
  ConstructorParameters<T extends TConstructor<TSchema[], TSchema>>(schema: T, options?: SchemaOptions): TConstructorParameters<T>;
30
+ /** `[JavaScript]` Creates a Constructor type */
25
31
  Constructor<T extends TSchema[], U extends TSchema>(parameters: [...T], returns: U, options?: SchemaOptions): TConstructor<T, U>;
32
+ /** `[JavaScript]` Creates a Date type */
26
33
  Date(options?: DateOptions): TDate;
34
+ /** `[JavaScript]` Creates a Function type */
27
35
  Function<T extends TSchema[], U extends TSchema>(parameters: [...T], returns: U, options?: SchemaOptions): TFunction<T, U>;
36
+ /** `[JavaScript]` Extracts the InstanceType from the given Constructor type */
28
37
  InstanceType<T extends TConstructor<any[], any>>(schema: T, options?: SchemaOptions): TInstanceType<T>;
38
+ /** `[JavaScript]` Creates an Iterator type */
29
39
  Iterator<T extends TSchema>(items: T, options?: SchemaOptions): TIterator<T>;
40
+ /** `[JavaScript]` Extracts the Parameters from the given Function type */
30
41
  Parameters<T extends TFunction<TSchema[], TSchema>>(schema: T, options?: SchemaOptions): TParameters<T>;
42
+ /** `[JavaScript]` Creates a Promise type */
31
43
  Promise<T extends TSchema>(item: T, options?: SchemaOptions): TPromise<T>;
44
+ /** `[JavaScript]` Creates a String type from a Regular Expression pattern */
32
45
  RegExp(pattern: string, options?: SchemaOptions): TRegExp;
46
+ /** `[JavaScript]` Creates a String type from a Regular Expression */
33
47
  RegExp(regex: RegExp, options?: SchemaOptions): TRegExp;
48
+ /** `[JavaScript]` Extracts the ReturnType from the given Function type */
34
49
  ReturnType<T extends TFunction<any[], any>>(schema: T, options?: SchemaOptions): TReturnType<T>;
50
+ /** `[JavaScript]` Creates a Symbol type */
35
51
  Symbol(options?: SchemaOptions): TSymbol;
52
+ /** `[JavaScript]` Creates a Undefined type */
36
53
  Undefined(options?: SchemaOptions): TUndefined;
54
+ /** `[JavaScript]` Creates a Uint8Array type */
37
55
  Uint8Array(options?: Uint8ArrayOptions): TUint8Array;
56
+ /** `[JavaScript]` Creates a Void type */
38
57
  Void(options?: SchemaOptions): TVoid;
39
58
  }
@@ -1,4 +1,5 @@
1
1
  "use strict";
2
+
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
3
4
  exports.JavaScriptTypeBuilder = void 0;
4
5
  const json_1 = require("./json");
@@ -19,55 +20,73 @@ const index_14 = require("../symbol/index");
19
20
  const index_15 = require("../uint8array/index");
20
21
  const index_16 = require("../undefined/index");
21
22
  const index_17 = require("../void/index");
23
+ /** JavaScript Type Builder with Static Resolution for TypeScript */
22
24
  class JavaScriptTypeBuilder extends json_1.JsonTypeBuilder {
25
+ /** `[JavaScript]` Creates a AsyncIterator type */
23
26
  AsyncIterator(items, options = {}) {
24
27
  return (0, index_1.AsyncIterator)(items, options);
25
28
  }
29
+ /** `[JavaScript]` Constructs a type by recursively unwrapping Promise types */
26
30
  Awaited(schema, options = {}) {
27
31
  return (0, index_2.Awaited)(schema, options);
28
32
  }
33
+ /** `[JavaScript]` Creates a BigInt type */
29
34
  BigInt(options = {}) {
30
35
  return (0, index_3.BigInt)(options);
31
36
  }
37
+ /** `[JavaScript]` Extracts the ConstructorParameters from the given Constructor type */
32
38
  ConstructorParameters(schema, options = {}) {
33
39
  return (0, index_5.ConstructorParameters)(schema, options);
34
40
  }
41
+ /** `[JavaScript]` Creates a Constructor type */
35
42
  Constructor(parameters, returns, options) {
36
43
  return (0, index_4.Constructor)(parameters, returns, options);
37
44
  }
45
+ /** `[JavaScript]` Creates a Date type */
38
46
  Date(options = {}) {
39
47
  return (0, index_6.Date)(options);
40
48
  }
49
+ /** `[JavaScript]` Creates a Function type */
41
50
  Function(parameters, returns, options) {
42
51
  return (0, index_7.Function)(parameters, returns, options);
43
52
  }
53
+ /** `[JavaScript]` Extracts the InstanceType from the given Constructor type */
44
54
  InstanceType(schema, options = {}) {
45
55
  return (0, index_8.InstanceType)(schema, options);
46
56
  }
57
+ /** `[JavaScript]` Creates an Iterator type */
47
58
  Iterator(items, options = {}) {
48
59
  return (0, index_9.Iterator)(items, options);
49
60
  }
61
+ /** `[JavaScript]` Extracts the Parameters from the given Function type */
50
62
  Parameters(schema, options = {}) {
51
63
  return (0, index_10.Parameters)(schema, options);
52
64
  }
65
+ /** `[JavaScript]` Creates a Promise type */
53
66
  Promise(item, options = {}) {
54
67
  return (0, index_11.Promise)(item, options);
55
68
  }
69
+ /** `[JavaScript]` Creates a String type */
56
70
  RegExp(unresolved, options = {}) {
57
71
  return (0, index_12.RegExp)(unresolved, options);
58
72
  }
73
+ /** `[JavaScript]` Extracts the ReturnType from the given Function type */
59
74
  ReturnType(schema, options = {}) {
60
75
  return (0, index_13.ReturnType)(schema, options);
61
76
  }
77
+ /** `[JavaScript]` Creates a Symbol type */
62
78
  Symbol(options) {
63
79
  return (0, index_14.Symbol)(options);
64
80
  }
81
+ /** `[JavaScript]` Creates a Undefined type */
65
82
  Undefined(options = {}) {
66
83
  return (0, index_16.Undefined)(options);
67
84
  }
85
+ /** `[JavaScript]` Creates a Uint8Array type */
68
86
  Uint8Array(options = {}) {
69
87
  return (0, index_15.Uint8Array)(options);
70
88
  }
89
+ /** `[JavaScript]` Creates a Void type */
71
90
  Void(options = {}) {
72
91
  return (0, index_17.Void)(options);
73
92
  }
@@ -27,7 +27,7 @@ import { type TPartial, type TPartialFromMappedResult } from '../partial/index';
27
27
  import { type TPick, type TPickFromMappedKey } from '../pick/index';
28
28
  import { type TReadonly } from '../readonly/index';
29
29
  import { type TReadonlyOptional } from '../readonly-optional/index';
30
- import { type RecordResolve } from '../record/index';
30
+ import { type TRecordOrObject } from '../record/index';
31
31
  import { type TRecursive, type TThis } from '../recursive/index';
32
32
  import { type TRef } from '../ref/index';
33
33
  import { type TRequired, type TRequiredFromMappedResult } from '../required/index';
@@ -40,65 +40,126 @@ import { type TTuple } from '../tuple/index';
40
40
  import { Union } from '../union/index';
41
41
  import { type TUnknown } from '../unknown/index';
42
42
  import { type TUnsafe, type UnsafeOptions } from '../unsafe/index';
43
+ /** Json Type Builder with Static Resolution for TypeScript */
43
44
  export declare class JsonTypeBuilder {
45
+ /** `[Json]` Omits compositing symbols from this schema */
44
46
  Strict<T extends TSchema>(schema: T): T;
47
+ /** `[Json]` Creates a Readonly and Optional property */
45
48
  ReadonlyOptional<T extends TSchema>(schema: T): TReadonlyOptional<T>;
49
+ /** `[Json]` Creates a Readonly property */
46
50
  Readonly<T extends TSchema>(schema: T): TReadonly<T>;
51
+ /** `[Json]` Creates an Optional property */
47
52
  Optional<T extends TSchema>(schema: T): TOptional<T>;
53
+ /** `[Json]` Creates an Any type */
48
54
  Any(options?: SchemaOptions): TAny;
55
+ /** `[Json]` Creates an Array type */
49
56
  Array<T extends TSchema>(schema: T, options?: ArrayOptions): TArray<T>;
57
+ /** `[Json]` Creates a Boolean type */
50
58
  Boolean(options?: SchemaOptions): TBoolean;
59
+ /** `[Json]` Intrinsic function to Capitalize LiteralString types */
51
60
  Capitalize<T extends TSchema>(schema: T, options?: SchemaOptions): TCapitalize<T>;
61
+ /** `[Json]` Creates a Composite object type */
52
62
  Composite<T extends TObject[]>(objects: [...T], options?: ObjectOptions): TComposite<T>;
53
- Const<T>(value: T, options?: SchemaOptions): TConst<T>;
63
+ /** `[JavaScript]` Creates a readonly const type from the given value. */
64
+ Const</* const (not supported in 4.0) */ T>(value: T, options?: SchemaOptions): TConst<T>;
65
+ /** `[Json]` Creates a dereferenced type */
54
66
  Deref<T extends TSchema>(schema: T, references: TSchema[]): TDeref<T>;
67
+ /** `[Json]` Creates a Enum type */
55
68
  Enum<V extends TEnumValue, T extends Record<TEnumKey, V>>(item: T, options?: SchemaOptions): TEnum<T>;
69
+ /** `[Json]` Constructs a type by excluding from unionType all union members that are assignable to excludedMembers */
56
70
  Exclude<L extends TMappedResult, R extends TSchema>(unionType: L, excludedMembers: R, options?: SchemaOptions): TExcludeFromMappedResult<L, R>;
71
+ /** `[Json]` Constructs a type by excluding from unionType all union members that are assignable to excludedMembers */
57
72
  Exclude<L extends TSchema, R extends TSchema>(unionType: L, excludedMembers: R, options?: SchemaOptions): TExclude<L, R>;
73
+ /** `[Json]` Creates a Conditional type */
58
74
  Extends<L extends TMappedResult, R extends TSchema, T extends TSchema, F extends TSchema>(L: L, R: R, T: T, F: F, options?: SchemaOptions): TExtendsFromMappedResult<L, R, T, F>;
75
+ /** `[Json]` Creates a Conditional type */
59
76
  Extends<L extends TMappedKey, R extends TSchema, T extends TSchema, F extends TSchema>(L: L, R: R, T: T, F: F, options?: SchemaOptions): TExtendsFromMappedKey<L, R, T, F>;
77
+ /** `[Json]` Creates a Conditional type */
60
78
  Extends<L extends TSchema, R extends TSchema, T extends TSchema, F extends TSchema>(L: L, R: R, T: T, F: F, options?: SchemaOptions): TExtends<L, R, T, F>;
79
+ /** `[Json]` Constructs a type by extracting from type all union members that are assignable to union */
61
80
  Extract<L extends TMappedResult, R extends TSchema>(type: L, union: R, options?: SchemaOptions): TExtractFromMappedResult<L, R>;
81
+ /** `[Json]` Constructs a type by extracting from type all union members that are assignable to union */
62
82
  Extract<L extends TSchema, R extends TSchema>(type: L, union: R, options?: SchemaOptions): TExtract<L, R>;
83
+ /** `[Json]` Returns an Indexed property type for the given keys */
63
84
  Index<T extends TSchema, K extends TMappedKey>(T: T, K: K, options?: SchemaOptions): TIndexFromMappedKey<T, K>;
85
+ /** `[Json]` Returns an Indexed property type for the given keys */
64
86
  Index<T extends TSchema, K extends TSchema, I extends PropertyKey[] = TIndexPropertyKeys<K>>(T: T, K: K, options?: SchemaOptions): TIndex<T, I>;
87
+ /** `[Json]` Returns an Indexed property type for the given keys */
65
88
  Index<T extends TSchema, K extends PropertyKey[]>(T: T, K: readonly [...K], options?: SchemaOptions): TIndex<T, K>;
89
+ /** `[Json]` Creates an Integer type */
66
90
  Integer(options?: IntegerOptions): TInteger;
91
+ /** `[Json]` Creates an Intersect type */
67
92
  Intersect<T extends TSchema[]>(T: [...T], options?: IntersectOptions): Intersect<T>;
93
+ /** `[Json]` Creates a KeyOf type */
68
94
  KeyOf<T extends TMappedResult>(schema: T, options?: SchemaOptions): TKeyOfFromMappedResult<T>;
95
+ /** `[Json]` Creates a KeyOf type */
69
96
  KeyOf<T extends TSchema>(schema: T, options?: SchemaOptions): TKeyOf<T>;
97
+ /** `[Json]` Creates a Literal type */
70
98
  Literal<T extends TLiteralValue>(value: T, options?: SchemaOptions): TLiteral<T>;
99
+ /** `[Json]` Intrinsic function to Lowercase LiteralString types */
71
100
  Lowercase<T extends TSchema>(schema: T, options?: SchemaOptions): TLowercase<T>;
101
+ /** `[Json]` Creates a Mapped object type */
72
102
  Mapped<K extends TSchema, I extends PropertyKey[] = TIndexPropertyKeys<K>, F extends TMappedFunction<I> = TMappedFunction<I>, R extends TMapped<I, F> = TMapped<I, F>>(key: K, map: F, options?: ObjectOptions): R;
103
+ /** `[Json]` Creates a Mapped object type */
73
104
  Mapped<K extends PropertyKey[], F extends TMappedFunction<K> = TMappedFunction<K>, R extends TMapped<K, F> = TMapped<K, F>>(key: [...K], map: F, options?: ObjectOptions): R;
105
+ /** `[Json]` Creates a Never type */
74
106
  Never(options?: SchemaOptions): TNever;
107
+ /** `[Json]` Creates a Not type */
75
108
  Not<T extends TSchema>(schema: T, options?: SchemaOptions): TNot<T>;
109
+ /** `[Json]` Creates a Null type */
76
110
  Null(options?: SchemaOptions): TNull;
111
+ /** `[Json]` Creates a Number type */
77
112
  Number(options?: NumberOptions): TNumber;
113
+ /** `[Json]` Creates an Object type */
78
114
  Object<T extends TProperties>(properties: T, options?: ObjectOptions): TObject<T>;
115
+ /** `[Json]` Constructs a type whose keys are omitted from the given type */
79
116
  Omit<T extends TSchema, K extends TMappedKey>(T: T, K: K): TOmitFromMappedKey<T, K>;
117
+ /** `[Json]` Constructs a type whose keys are omitted from the given type */
80
118
  Omit<T extends TSchema, K extends TSchema, I extends PropertyKey[] = TIndexPropertyKeys<K>>(T: T, K: K, options?: SchemaOptions): TOmit<T, I>;
119
+ /** `[Json]` Constructs a type whose keys are omitted from the given type */
81
120
  Omit<T extends TSchema, K extends PropertyKey[]>(T: T, K: readonly [...K], options?: SchemaOptions): TOmit<T, K>;
121
+ /** `[Json]` Constructs a type where all properties are optional */
82
122
  Partial<T extends TMappedResult>(T: T, options?: ObjectOptions): TPartialFromMappedResult<T>;
123
+ /** `[Json]` Constructs a type where all properties are optional */
83
124
  Partial<T extends TSchema>(schema: T, options?: ObjectOptions): TPartial<T>;
125
+ /** `[Json]` Constructs a type whose keys are picked from the given type */
84
126
  Pick<T extends TSchema, K extends TMappedKey>(T: T, K: K): TPickFromMappedKey<T, K>;
127
+ /** `[Json]` Constructs a type whose keys are picked from the given type */
85
128
  Pick<T extends TSchema, K extends TSchema, I extends PropertyKey[] = TIndexPropertyKeys<K>>(T: T, K: K, options?: SchemaOptions): TPick<T, I>;
129
+ /** `[Json]` Constructs a type whose keys are picked from the given type */
86
130
  Pick<T extends TSchema, K extends PropertyKey[]>(T: T, K: readonly [...K], options?: SchemaOptions): TPick<T, K>;
87
- Record<K extends TSchema, T extends TSchema>(key: K, schema: T, options?: ObjectOptions): RecordResolve<K, T>;
131
+ /** `[Json]` Creates a Record type */
132
+ Record<K extends TSchema, T extends TSchema>(key: K, schema: T, options?: ObjectOptions): TRecordOrObject<K, T>;
133
+ /** `[Json]` Creates a Recursive type */
88
134
  Recursive<T extends TSchema>(callback: (thisType: TThis) => T, options?: SchemaOptions): TRecursive<T>;
135
+ /** `[Json]` Creates a Ref type. The referenced type must contain a $id */
89
136
  Ref<T extends TSchema>(schema: T, options?: SchemaOptions): TRef<T>;
137
+ /** `[Json]` Creates a Ref type. */
90
138
  Ref<T extends TSchema>($ref: string, options?: SchemaOptions): TRef<T>;
139
+ /** `[Json]` Constructs a type where all properties are required */
91
140
  Required<T extends TMappedResult>(T: T, options?: ObjectOptions): TRequiredFromMappedResult<T>;
141
+ /** `[Json]` Constructs a type where all properties are required */
92
142
  Required<T extends TSchema>(schema: T, options?: ObjectOptions): TRequired<T>;
143
+ /** `[Json]` Extracts interior Rest elements from Tuple, Intersect and Union types */
93
144
  Rest<T extends TSchema>(schema: T): TRest<T>;
145
+ /** `[Json]` Creates a String type */
94
146
  String(options?: StringOptions): TString;
147
+ /** `[Json]` Creates a TemplateLiteral type from template dsl string */
95
148
  TemplateLiteral<T extends string>(syntax: T, options?: SchemaOptions): TemplateLiteralSyntax<T>;
149
+ /** `[Json]` Creates a TemplateLiteral type */
96
150
  TemplateLiteral<T extends TTemplateLiteralKind[]>(kinds: [...T], options?: SchemaOptions): TTemplateLiteral<T>;
151
+ /** `[Json]` Creates a Transform type */
97
152
  Transform<I extends TSchema>(schema: I): TransformDecodeBuilder<I>;
153
+ /** `[Json]` Creates a Tuple type */
98
154
  Tuple<T extends TSchema[]>(items: [...T], options?: SchemaOptions): TTuple<T>;
155
+ /** `[Json]` Intrinsic function to Uncapitalize LiteralString types */
99
156
  Uncapitalize<T extends TSchema>(schema: T, options?: SchemaOptions): TUncapitalize<T>;
157
+ /** `[Json]` Creates a Union type */
100
158
  Union<T extends TSchema[]>(schemas: [...T], options?: SchemaOptions): Union<T>;
159
+ /** `[Json]` Creates an Unknown type */
101
160
  Unknown(options?: SchemaOptions): TUnknown;
161
+ /** `[Json]` Creates a Unsafe type that will infers as the generic argument T */
102
162
  Unsafe<T>(options?: UnsafeOptions): TUnsafe<T>;
163
+ /** `[Json]` Intrinsic function to Uppercase LiteralString types */
103
164
  Uppercase<T extends TSchema>(schema: T, options?: SchemaOptions): TUppercase<T>;
104
165
  }