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

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 (664) hide show
  1. package/build/import/compiler/compiler.d.mts +9 -0
  2. package/build/import/compiler/compiler.mjs +87 -6
  3. package/build/import/compiler/index.mjs +27 -0
  4. package/build/import/errors/errors.d.mts +3 -0
  5. package/build/import/errors/errors.mjs +55 -3
  6. package/build/import/errors/function.d.mts +3 -0
  7. package/build/import/errors/function.mjs +31 -0
  8. package/build/import/errors/index.mjs +27 -0
  9. package/build/import/index.mjs +36 -0
  10. package/build/import/system/index.mjs +27 -0
  11. package/build/import/system/policy.d.mts +10 -0
  12. package/build/import/system/policy.mjs +40 -0
  13. package/build/import/system/system.d.mts +3 -0
  14. package/build/import/system/system.mjs +36 -0
  15. package/build/import/type/any/any.d.mts +1 -0
  16. package/build/import/type/any/any.mjs +28 -0
  17. package/build/import/type/any/index.mjs +27 -0
  18. package/build/import/type/array/array.d.mts +7 -0
  19. package/build/import/type/array/array.mjs +28 -0
  20. package/build/import/type/array/index.mjs +27 -0
  21. package/build/import/type/async-iterator/async-iterator.d.mts +1 -0
  22. package/build/import/type/async-iterator/async-iterator.mjs +28 -0
  23. package/build/import/type/async-iterator/index.mjs +27 -0
  24. package/build/import/type/awaited/awaited.d.mts +1 -0
  25. package/build/import/type/awaited/awaited.mjs +37 -0
  26. package/build/import/type/awaited/index.mjs +27 -0
  27. package/build/import/type/bigint/bigint.d.mts +1 -0
  28. package/build/import/type/bigint/bigint.mjs +28 -0
  29. package/build/import/type/bigint/index.mjs +27 -0
  30. package/build/import/type/boolean/boolean.d.mts +1 -0
  31. package/build/import/type/boolean/boolean.mjs +28 -0
  32. package/build/import/type/boolean/index.mjs +27 -0
  33. package/build/import/type/clone/index.mjs +27 -0
  34. package/build/import/type/clone/type.d.mts +2 -0
  35. package/build/import/type/clone/type.mjs +29 -0
  36. package/build/import/type/clone/value.d.mts +1 -0
  37. package/build/import/type/clone/value.mjs +29 -0
  38. package/build/import/type/composite/composite.d.mts +1 -0
  39. package/build/import/type/composite/composite.mjs +28 -0
  40. package/build/import/type/composite/index.mjs +27 -0
  41. package/build/import/type/const/const.d.mts +2 -1
  42. package/build/import/type/const/const.mjs +32 -1
  43. package/build/import/type/const/index.mjs +27 -0
  44. package/build/import/type/constructor/constructor.d.mts +1 -0
  45. package/build/import/type/constructor/constructor.mjs +28 -0
  46. package/build/import/type/constructor/index.mjs +27 -0
  47. package/build/import/type/constructor-parameters/constructor-parameters.d.mts +1 -0
  48. package/build/import/type/constructor-parameters/constructor-parameters.mjs +28 -0
  49. package/build/import/type/constructor-parameters/index.mjs +27 -0
  50. package/build/import/type/date/date.d.mts +6 -0
  51. package/build/import/type/date/date.mjs +28 -0
  52. package/build/import/type/date/index.mjs +27 -0
  53. package/build/import/type/deref/deref.d.mts +1 -0
  54. package/build/import/type/deref/deref.mjs +45 -0
  55. package/build/import/type/deref/index.mjs +27 -0
  56. package/build/import/type/discard/discard.mjs +27 -0
  57. package/build/import/type/discard/index.mjs +27 -0
  58. package/build/import/type/enum/enum.d.mts +1 -0
  59. package/build/import/type/enum/enum.mjs +28 -0
  60. package/build/import/type/enum/index.mjs +27 -0
  61. package/build/import/type/exclude/exclude-from-mapped-result.mjs +30 -0
  62. package/build/import/type/exclude/exclude.d.mts +2 -0
  63. package/build/import/type/exclude/exclude.mjs +30 -0
  64. package/build/import/type/exclude/index.mjs +27 -0
  65. package/build/import/type/extends/extends-check.mjs +200 -1
  66. package/build/import/type/extends/extends-from-mapped-key.mjs +31 -0
  67. package/build/import/type/extends/extends-from-mapped-result.mjs +30 -0
  68. package/build/import/type/extends/extends-undefined.d.mts +1 -0
  69. package/build/import/type/extends/extends-undefined.mjs +30 -0
  70. package/build/import/type/extends/extends.d.mts +3 -0
  71. package/build/import/type/extends/extends.mjs +34 -0
  72. package/build/import/type/extends/index.mjs +27 -0
  73. package/build/import/type/extract/extract-from-mapped-result.mjs +30 -0
  74. package/build/import/type/extract/extract.d.mts +2 -0
  75. package/build/import/type/extract/extract.mjs +30 -0
  76. package/build/import/type/extract/index.mjs +27 -0
  77. package/build/import/type/function/function.d.mts +1 -0
  78. package/build/import/type/function/function.mjs +28 -0
  79. package/build/import/type/function/index.mjs +27 -0
  80. package/build/import/type/guard/index.mjs +27 -0
  81. package/build/import/type/guard/type.d.mts +46 -0
  82. package/build/import/type/guard/type.mjs +111 -1
  83. package/build/import/type/guard/value.d.mts +14 -0
  84. package/build/import/type/guard/value.mjs +41 -0
  85. package/build/import/type/helpers/helpers.d.mts +1 -0
  86. package/build/import/type/helpers/helpers.mjs +28 -0
  87. package/build/import/type/helpers/index.mjs +27 -0
  88. package/build/import/type/index.mjs +27 -0
  89. package/build/import/type/indexed/index.mjs +27 -0
  90. package/build/import/type/indexed/indexed-from-mapped-key.mjs +35 -1
  91. package/build/import/type/indexed/indexed-property-keys.d.mts +1 -0
  92. package/build/import/type/indexed/indexed-property-keys.mjs +36 -0
  93. package/build/import/type/indexed/indexed-result.mjs +42 -0
  94. package/build/import/type/indexed/indexed.d.mts +3 -0
  95. package/build/import/type/indexed/indexed.mjs +33 -0
  96. package/build/import/type/instance-type/index.mjs +27 -0
  97. package/build/import/type/instance-type/instance-type.d.mts +1 -0
  98. package/build/import/type/instance-type/instance-type.mjs +28 -0
  99. package/build/import/type/integer/index.mjs +27 -0
  100. package/build/import/type/integer/integer.d.mts +1 -0
  101. package/build/import/type/integer/integer.mjs +28 -0
  102. package/build/import/type/intersect/index.mjs +27 -0
  103. package/build/import/type/intersect/intersect-create.mjs +35 -0
  104. package/build/import/type/intersect/intersect-evaluated.d.mts +1 -0
  105. package/build/import/type/intersect/intersect-evaluated.mjs +36 -0
  106. package/build/import/type/intersect/intersect-type.mjs +27 -0
  107. package/build/import/type/intersect/intersect.d.mts +1 -0
  108. package/build/import/type/intersect/intersect.mjs +32 -0
  109. package/build/import/type/intrinsic/capitalize.d.mts +1 -0
  110. package/build/import/type/intrinsic/capitalize.mjs +28 -0
  111. package/build/import/type/intrinsic/index.mjs +27 -0
  112. package/build/import/type/intrinsic/intrinsic-from-mapped-key.mjs +31 -0
  113. package/build/import/type/intrinsic/intrinsic.d.mts +2 -0
  114. package/build/import/type/intrinsic/intrinsic.mjs +43 -1
  115. package/build/import/type/intrinsic/lowercase.d.mts +1 -0
  116. package/build/import/type/intrinsic/lowercase.mjs +28 -0
  117. package/build/import/type/intrinsic/uncapitalize.d.mts +1 -0
  118. package/build/import/type/intrinsic/uncapitalize.mjs +28 -0
  119. package/build/import/type/intrinsic/uppercase.d.mts +1 -0
  120. package/build/import/type/intrinsic/uppercase.mjs +28 -0
  121. package/build/import/type/iterator/index.mjs +27 -0
  122. package/build/import/type/iterator/iterator.d.mts +1 -0
  123. package/build/import/type/iterator/iterator.mjs +28 -0
  124. package/build/import/type/keyof/index.mjs +27 -0
  125. package/build/import/type/keyof/keyof-from-mapped-result.mjs +30 -0
  126. package/build/import/type/keyof/keyof-property-keys.d.mts +2 -0
  127. package/build/import/type/keyof/keyof-property-keys.mjs +47 -0
  128. package/build/import/type/keyof/keyof.d.mts +2 -0
  129. package/build/import/type/keyof/keyof.mjs +33 -0
  130. package/build/import/type/literal/index.mjs +27 -0
  131. package/build/import/type/literal/literal.d.mts +1 -0
  132. package/build/import/type/literal/literal.mjs +28 -0
  133. package/build/import/type/mapped/index.mjs +27 -0
  134. package/build/import/type/mapped/mapped-key.mjs +28 -0
  135. package/build/import/type/mapped/mapped-result.mjs +28 -0
  136. package/build/import/type/mapped/mapped.d.mts +2 -0
  137. package/build/import/type/mapped/mapped.mjs +46 -1
  138. package/build/import/type/modifiers/index.mjs +27 -0
  139. package/build/import/type/modifiers/modifiers.mjs +37 -0
  140. package/build/import/type/never/index.mjs +27 -0
  141. package/build/import/type/never/never.d.mts +1 -0
  142. package/build/import/type/never/never.mjs +28 -0
  143. package/build/import/type/not/index.mjs +27 -0
  144. package/build/import/type/not/not.d.mts +1 -0
  145. package/build/import/type/not/not.mjs +28 -0
  146. package/build/import/type/null/index.mjs +27 -0
  147. package/build/import/type/null/null.d.mts +1 -0
  148. package/build/import/type/null/null.mjs +28 -0
  149. package/build/import/type/number/index.mjs +27 -0
  150. package/build/import/type/number/number.d.mts +1 -0
  151. package/build/import/type/number/number.mjs +28 -0
  152. package/build/import/type/object/index.mjs +27 -0
  153. package/build/import/type/object/object.d.mts +5 -0
  154. package/build/import/type/object/object.mjs +33 -0
  155. package/build/import/type/omit/index.mjs +27 -0
  156. package/build/import/type/omit/omit-from-mapped-key.mjs +31 -0
  157. package/build/import/type/omit/omit.d.mts +3 -0
  158. package/build/import/type/omit/omit.mjs +39 -0
  159. package/build/import/type/operators/index.mjs +27 -0
  160. package/build/import/type/operators/operators.d.mts +8 -0
  161. package/build/import/type/operators/operators.mjs +42 -0
  162. package/build/import/type/optional/index.mjs +27 -0
  163. package/build/import/type/optional/optional.d.mts +1 -0
  164. package/build/import/type/optional/optional.mjs +28 -0
  165. package/build/import/type/parameters/index.mjs +27 -0
  166. package/build/import/type/parameters/parameters.d.mts +1 -0
  167. package/build/import/type/parameters/parameters.mjs +28 -0
  168. package/build/import/type/partial/index.mjs +27 -0
  169. package/build/import/type/partial/partial-from-mapped-result.mjs +30 -0
  170. package/build/import/type/partial/partial.d.mts +2 -0
  171. package/build/import/type/partial/partial.mjs +36 -0
  172. package/build/import/type/patterns/index.mjs +27 -0
  173. package/build/import/type/patterns/patterns.mjs +27 -0
  174. package/build/import/type/pick/index.mjs +27 -0
  175. package/build/import/type/pick/pick-from-mapped-key.mjs +31 -0
  176. package/build/import/type/pick/pick.d.mts +3 -0
  177. package/build/import/type/pick/pick.mjs +34 -0
  178. package/build/import/type/promise/index.mjs +27 -0
  179. package/build/import/type/promise/promise.d.mts +1 -0
  180. package/build/import/type/promise/promise.mjs +28 -0
  181. package/build/import/type/readonly/index.mjs +27 -0
  182. package/build/import/type/readonly/readonly.d.mts +1 -0
  183. package/build/import/type/readonly/readonly.mjs +28 -0
  184. package/build/import/type/readonly-optional/index.mjs +27 -0
  185. package/build/import/type/readonly-optional/readonly-optional.d.mts +1 -0
  186. package/build/import/type/readonly-optional/readonly-optional.mjs +28 -0
  187. package/build/import/type/record/index.mjs +27 -0
  188. package/build/import/type/record/record.d.mts +1 -0
  189. package/build/import/type/record/record.mjs +48 -0
  190. package/build/import/type/recursive/index.mjs +27 -0
  191. package/build/import/type/recursive/recursive.d.mts +1 -0
  192. package/build/import/type/recursive/recursive.mjs +30 -0
  193. package/build/import/type/ref/index.mjs +27 -0
  194. package/build/import/type/ref/ref.d.mts +2 -0
  195. package/build/import/type/ref/ref.mjs +28 -0
  196. package/build/import/type/regexp/index.mjs +27 -0
  197. package/build/import/type/regexp/regexp.d.mts +2 -0
  198. package/build/import/type/regexp/regexp.mjs +28 -0
  199. package/build/import/type/registry/format.d.mts +6 -0
  200. package/build/import/type/registry/format.mjs +34 -0
  201. package/build/import/type/registry/index.mjs +27 -0
  202. package/build/import/type/registry/type.d.mts +6 -0
  203. package/build/import/type/registry/type.mjs +34 -0
  204. package/build/import/type/required/index.mjs +27 -0
  205. package/build/import/type/required/required-from-mapped-result.mjs +30 -0
  206. package/build/import/type/required/required.d.mts +2 -0
  207. package/build/import/type/required/required.mjs +36 -0
  208. package/build/import/type/rest/index.mjs +27 -0
  209. package/build/import/type/rest/rest.d.mts +1 -0
  210. package/build/import/type/rest/rest.mjs +32 -0
  211. package/build/import/type/return-type/index.mjs +27 -0
  212. package/build/import/type/return-type/return-type.d.mts +1 -0
  213. package/build/import/type/return-type/return-type.mjs +28 -0
  214. package/build/import/type/schema/anyschema.mjs +27 -0
  215. package/build/import/type/schema/index.mjs +27 -0
  216. package/build/import/type/schema/schema.d.mts +7 -0
  217. package/build/import/type/schema/schema.mjs +27 -0
  218. package/build/import/type/static/index.mjs +27 -0
  219. package/build/import/type/static/static.d.mts +3 -0
  220. package/build/import/type/static/static.mjs +27 -0
  221. package/build/import/type/strict/index.mjs +27 -0
  222. package/build/import/type/strict/strict.d.mts +1 -0
  223. package/build/import/type/strict/strict.mjs +28 -0
  224. package/build/import/type/string/index.mjs +27 -0
  225. package/build/import/type/string/string.d.mts +7 -0
  226. package/build/import/type/string/string.mjs +28 -0
  227. package/build/import/type/symbol/index.mjs +27 -0
  228. package/build/import/type/symbol/symbol.d.mts +1 -0
  229. package/build/import/type/symbol/symbol.mjs +28 -0
  230. package/build/import/type/symbols/index.mjs +27 -0
  231. package/build/import/type/symbols/symbols.d.mts +5 -0
  232. package/build/import/type/symbols/symbols.mjs +32 -0
  233. package/build/import/type/template-literal/finite.mjs +37 -0
  234. package/build/import/type/template-literal/generate.mjs +37 -0
  235. package/build/import/type/template-literal/index.mjs +27 -0
  236. package/build/import/type/template-literal/parser.d.mts +2 -0
  237. package/build/import/type/template-literal/parser.mjs +44 -0
  238. package/build/import/type/template-literal/pattern.mjs +38 -0
  239. package/build/import/type/template-literal/syntax.d.mts +1 -0
  240. package/build/import/type/template-literal/syntax.mjs +35 -0
  241. package/build/import/type/template-literal/template-literal.d.mts +2 -0
  242. package/build/import/type/template-literal/template-literal.mjs +29 -0
  243. package/build/import/type/template-literal/union.d.mts +1 -0
  244. package/build/import/type/template-literal/union.mjs +31 -0
  245. package/build/import/type/transform/index.mjs +27 -0
  246. package/build/import/type/transform/transform.d.mts +1 -0
  247. package/build/import/type/transform/transform.mjs +36 -0
  248. package/build/import/type/tuple/index.mjs +27 -0
  249. package/build/import/type/tuple/tuple.d.mts +1 -0
  250. package/build/import/type/tuple/tuple.mjs +30 -0
  251. package/build/import/type/type/index.d.mts +1 -0
  252. package/build/import/type/type/index.mjs +34 -0
  253. package/build/import/type/type/javascript.d.mts +19 -0
  254. package/build/import/type/type/javascript.mjs +45 -0
  255. package/build/import/type/type/json.d.mts +62 -1
  256. package/build/import/type/type/json.mjs +82 -1
  257. package/build/import/type/type/type.mjs +30 -0
  258. package/build/import/type/uint8array/index.mjs +27 -0
  259. package/build/import/type/uint8array/uint8array.d.mts +1 -0
  260. package/build/import/type/uint8array/uint8array.mjs +28 -0
  261. package/build/import/type/undefined/index.mjs +27 -0
  262. package/build/import/type/undefined/undefined.d.mts +1 -0
  263. package/build/import/type/undefined/undefined.mjs +28 -0
  264. package/build/import/type/union/index.mjs +27 -0
  265. package/build/import/type/union/union-create.mjs +27 -0
  266. package/build/import/type/union/union-evaluated.d.mts +1 -0
  267. package/build/import/type/union/union-evaluated.mjs +37 -0
  268. package/build/import/type/union/union-type.mjs +27 -0
  269. package/build/import/type/union/union.d.mts +1 -0
  270. package/build/import/type/union/union.mjs +29 -0
  271. package/build/import/type/unknown/index.mjs +27 -0
  272. package/build/import/type/unknown/unknown.d.mts +1 -0
  273. package/build/import/type/unknown/unknown.mjs +28 -0
  274. package/build/import/type/unsafe/index.mjs +27 -0
  275. package/build/import/type/unsafe/unsafe.d.mts +1 -0
  276. package/build/import/type/unsafe/unsafe.mjs +28 -0
  277. package/build/import/type/void/index.mjs +27 -0
  278. package/build/import/type/void/void.d.mts +1 -0
  279. package/build/import/type/void/void.mjs +28 -0
  280. package/build/import/value/cast/cast.d.mts +2 -0
  281. package/build/import/value/cast/cast.mjs +55 -0
  282. package/build/import/value/cast/index.mjs +27 -0
  283. package/build/import/value/check/check.d.mts +2 -0
  284. package/build/import/value/check/check.mjs +46 -1
  285. package/build/import/value/check/index.mjs +27 -0
  286. package/build/import/value/clean/clean.d.mts +2 -0
  287. package/build/import/value/clean/clean.mjs +39 -1
  288. package/build/import/value/clean/index.mjs +27 -0
  289. package/build/import/value/clone/clone.d.mts +1 -0
  290. package/build/import/value/clone/clone.mjs +34 -0
  291. package/build/import/value/clone/index.mjs +27 -0
  292. package/build/import/value/convert/convert.d.mts +2 -0
  293. package/build/import/value/convert/convert.mjs +57 -1
  294. package/build/import/value/convert/index.mjs +27 -0
  295. package/build/import/value/create/create.d.mts +2 -0
  296. package/build/import/value/create/create.mjs +44 -0
  297. package/build/import/value/create/index.mjs +27 -0
  298. package/build/import/value/default/default.d.mts +2 -0
  299. package/build/import/value/default/default.mjs +46 -0
  300. package/build/import/value/default/index.mjs +27 -0
  301. package/build/import/value/delta/delta.mjs +42 -0
  302. package/build/import/value/delta/index.mjs +27 -0
  303. package/build/import/value/deref/deref.d.mts +1 -0
  304. package/build/import/value/deref/deref.mjs +28 -0
  305. package/build/import/value/deref/index.mjs +27 -0
  306. package/build/import/value/equal/equal.d.mts +1 -0
  307. package/build/import/value/equal/equal.mjs +34 -0
  308. package/build/import/value/equal/index.mjs +27 -0
  309. package/build/import/value/guard/guard.d.mts +20 -0
  310. package/build/import/value/guard/guard.mjs +57 -0
  311. package/build/import/value/guard/index.mjs +27 -0
  312. package/build/import/value/hash/hash.d.mts +1 -0
  313. package/build/import/value/hash/hash.mjs +46 -0
  314. package/build/import/value/hash/index.mjs +27 -0
  315. package/build/import/value/index.mjs +39 -0
  316. package/build/import/value/mutate/index.mjs +27 -0
  317. package/build/import/value/mutate/mutate.d.mts +1 -0
  318. package/build/import/value/mutate/mutate.mjs +38 -0
  319. package/build/import/value/pointer/index.mjs +27 -0
  320. package/build/import/value/pointer/pointer.d.mts +5 -0
  321. package/build/import/value/pointer/pointer.mjs +45 -0
  322. package/build/import/value/transform/decode.d.mts +5 -0
  323. package/build/import/value/transform/decode.mjs +50 -0
  324. package/build/import/value/transform/encode.d.mts +6 -0
  325. package/build/import/value/transform/encode.mjs +52 -0
  326. package/build/import/value/transform/has.d.mts +1 -0
  327. package/build/import/value/transform/has.mjs +43 -0
  328. package/build/import/value/transform/index.mjs +27 -0
  329. package/build/import/value/value/index.mjs +27 -0
  330. package/build/import/value/value/value.d.mts +24 -0
  331. package/build/import/value/value/value.mjs +42 -0
  332. package/build/require/compiler/compiler.d.ts +9 -0
  333. package/build/require/compiler/compiler.js +87 -6
  334. package/build/require/compiler/index.js +27 -0
  335. package/build/require/errors/errors.d.ts +3 -0
  336. package/build/require/errors/errors.js +55 -3
  337. package/build/require/errors/function.d.ts +3 -0
  338. package/build/require/errors/function.js +31 -0
  339. package/build/require/errors/index.js +27 -0
  340. package/build/require/index.js +36 -0
  341. package/build/require/system/index.js +27 -0
  342. package/build/require/system/policy.d.ts +10 -0
  343. package/build/require/system/policy.js +40 -0
  344. package/build/require/system/system.d.ts +3 -0
  345. package/build/require/system/system.js +36 -0
  346. package/build/require/type/any/any.d.ts +1 -0
  347. package/build/require/type/any/any.js +28 -0
  348. package/build/require/type/any/index.js +27 -0
  349. package/build/require/type/array/array.d.ts +7 -0
  350. package/build/require/type/array/array.js +28 -0
  351. package/build/require/type/array/index.js +27 -0
  352. package/build/require/type/async-iterator/async-iterator.d.ts +1 -0
  353. package/build/require/type/async-iterator/async-iterator.js +28 -0
  354. package/build/require/type/async-iterator/index.js +27 -0
  355. package/build/require/type/awaited/awaited.d.ts +1 -0
  356. package/build/require/type/awaited/awaited.js +37 -0
  357. package/build/require/type/awaited/index.js +27 -0
  358. package/build/require/type/bigint/bigint.d.ts +1 -0
  359. package/build/require/type/bigint/bigint.js +28 -0
  360. package/build/require/type/bigint/index.js +27 -0
  361. package/build/require/type/boolean/boolean.d.ts +1 -0
  362. package/build/require/type/boolean/boolean.js +28 -0
  363. package/build/require/type/boolean/index.js +27 -0
  364. package/build/require/type/clone/index.js +27 -0
  365. package/build/require/type/clone/type.d.ts +2 -0
  366. package/build/require/type/clone/type.js +29 -0
  367. package/build/require/type/clone/value.d.ts +1 -0
  368. package/build/require/type/clone/value.js +29 -0
  369. package/build/require/type/composite/composite.d.ts +1 -0
  370. package/build/require/type/composite/composite.js +28 -0
  371. package/build/require/type/composite/index.js +27 -0
  372. package/build/require/type/const/const.d.ts +2 -1
  373. package/build/require/type/const/const.js +32 -1
  374. package/build/require/type/const/index.js +27 -0
  375. package/build/require/type/constructor/constructor.d.ts +1 -0
  376. package/build/require/type/constructor/constructor.js +28 -0
  377. package/build/require/type/constructor/index.js +27 -0
  378. package/build/require/type/constructor-parameters/constructor-parameters.d.ts +1 -0
  379. package/build/require/type/constructor-parameters/constructor-parameters.js +28 -0
  380. package/build/require/type/constructor-parameters/index.js +27 -0
  381. package/build/require/type/date/date.d.ts +6 -0
  382. package/build/require/type/date/date.js +28 -0
  383. package/build/require/type/date/index.js +27 -0
  384. package/build/require/type/deref/deref.d.ts +1 -0
  385. package/build/require/type/deref/deref.js +45 -0
  386. package/build/require/type/deref/index.js +27 -0
  387. package/build/require/type/discard/discard.js +27 -0
  388. package/build/require/type/discard/index.js +27 -0
  389. package/build/require/type/enum/enum.d.ts +1 -0
  390. package/build/require/type/enum/enum.js +28 -0
  391. package/build/require/type/enum/index.js +27 -0
  392. package/build/require/type/exclude/exclude-from-mapped-result.js +30 -0
  393. package/build/require/type/exclude/exclude.d.ts +2 -0
  394. package/build/require/type/exclude/exclude.js +30 -0
  395. package/build/require/type/exclude/index.js +27 -0
  396. package/build/require/type/extends/extends-check.js +200 -1
  397. package/build/require/type/extends/extends-from-mapped-key.js +31 -0
  398. package/build/require/type/extends/extends-from-mapped-result.js +30 -0
  399. package/build/require/type/extends/extends-undefined.d.ts +1 -0
  400. package/build/require/type/extends/extends-undefined.js +30 -0
  401. package/build/require/type/extends/extends.d.ts +3 -0
  402. package/build/require/type/extends/extends.js +34 -0
  403. package/build/require/type/extends/index.js +27 -0
  404. package/build/require/type/extract/extract-from-mapped-result.js +30 -0
  405. package/build/require/type/extract/extract.d.ts +2 -0
  406. package/build/require/type/extract/extract.js +30 -0
  407. package/build/require/type/extract/index.js +27 -0
  408. package/build/require/type/function/function.d.ts +1 -0
  409. package/build/require/type/function/function.js +28 -0
  410. package/build/require/type/function/index.js +27 -0
  411. package/build/require/type/guard/index.js +27 -0
  412. package/build/require/type/guard/type.d.ts +46 -0
  413. package/build/require/type/guard/type.js +111 -1
  414. package/build/require/type/guard/value.d.ts +14 -0
  415. package/build/require/type/guard/value.js +41 -0
  416. package/build/require/type/helpers/helpers.d.ts +1 -0
  417. package/build/require/type/helpers/helpers.js +28 -0
  418. package/build/require/type/helpers/index.js +27 -0
  419. package/build/require/type/index.js +27 -0
  420. package/build/require/type/indexed/index.js +27 -0
  421. package/build/require/type/indexed/indexed-from-mapped-key.js +35 -1
  422. package/build/require/type/indexed/indexed-property-keys.d.ts +1 -0
  423. package/build/require/type/indexed/indexed-property-keys.js +36 -0
  424. package/build/require/type/indexed/indexed-result.js +42 -0
  425. package/build/require/type/indexed/indexed.d.ts +3 -0
  426. package/build/require/type/indexed/indexed.js +33 -0
  427. package/build/require/type/instance-type/index.js +27 -0
  428. package/build/require/type/instance-type/instance-type.d.ts +1 -0
  429. package/build/require/type/instance-type/instance-type.js +28 -0
  430. package/build/require/type/integer/index.js +27 -0
  431. package/build/require/type/integer/integer.d.ts +1 -0
  432. package/build/require/type/integer/integer.js +28 -0
  433. package/build/require/type/intersect/index.js +27 -0
  434. package/build/require/type/intersect/intersect-create.js +35 -0
  435. package/build/require/type/intersect/intersect-evaluated.d.ts +1 -0
  436. package/build/require/type/intersect/intersect-evaluated.js +36 -0
  437. package/build/require/type/intersect/intersect-type.js +27 -0
  438. package/build/require/type/intersect/intersect.d.ts +1 -0
  439. package/build/require/type/intersect/intersect.js +32 -0
  440. package/build/require/type/intrinsic/capitalize.d.ts +1 -0
  441. package/build/require/type/intrinsic/capitalize.js +28 -0
  442. package/build/require/type/intrinsic/index.js +27 -0
  443. package/build/require/type/intrinsic/intrinsic-from-mapped-key.js +31 -0
  444. package/build/require/type/intrinsic/intrinsic.d.ts +2 -0
  445. package/build/require/type/intrinsic/intrinsic.js +43 -1
  446. package/build/require/type/intrinsic/lowercase.d.ts +1 -0
  447. package/build/require/type/intrinsic/lowercase.js +28 -0
  448. package/build/require/type/intrinsic/uncapitalize.d.ts +1 -0
  449. package/build/require/type/intrinsic/uncapitalize.js +28 -0
  450. package/build/require/type/intrinsic/uppercase.d.ts +1 -0
  451. package/build/require/type/intrinsic/uppercase.js +28 -0
  452. package/build/require/type/iterator/index.js +27 -0
  453. package/build/require/type/iterator/iterator.d.ts +1 -0
  454. package/build/require/type/iterator/iterator.js +28 -0
  455. package/build/require/type/keyof/index.js +27 -0
  456. package/build/require/type/keyof/keyof-from-mapped-result.js +30 -0
  457. package/build/require/type/keyof/keyof-property-keys.d.ts +2 -0
  458. package/build/require/type/keyof/keyof-property-keys.js +47 -0
  459. package/build/require/type/keyof/keyof.d.ts +2 -0
  460. package/build/require/type/keyof/keyof.js +33 -0
  461. package/build/require/type/literal/index.js +27 -0
  462. package/build/require/type/literal/literal.d.ts +1 -0
  463. package/build/require/type/literal/literal.js +28 -0
  464. package/build/require/type/mapped/index.js +27 -0
  465. package/build/require/type/mapped/mapped-key.js +28 -0
  466. package/build/require/type/mapped/mapped-result.js +28 -0
  467. package/build/require/type/mapped/mapped.d.ts +2 -0
  468. package/build/require/type/mapped/mapped.js +46 -1
  469. package/build/require/type/modifiers/index.js +27 -0
  470. package/build/require/type/modifiers/modifiers.js +37 -0
  471. package/build/require/type/never/index.js +27 -0
  472. package/build/require/type/never/never.d.ts +1 -0
  473. package/build/require/type/never/never.js +28 -0
  474. package/build/require/type/not/index.js +27 -0
  475. package/build/require/type/not/not.d.ts +1 -0
  476. package/build/require/type/not/not.js +28 -0
  477. package/build/require/type/null/index.js +27 -0
  478. package/build/require/type/null/null.d.ts +1 -0
  479. package/build/require/type/null/null.js +28 -0
  480. package/build/require/type/number/index.js +27 -0
  481. package/build/require/type/number/number.d.ts +1 -0
  482. package/build/require/type/number/number.js +28 -0
  483. package/build/require/type/object/index.js +27 -0
  484. package/build/require/type/object/object.d.ts +5 -0
  485. package/build/require/type/object/object.js +33 -0
  486. package/build/require/type/omit/index.js +27 -0
  487. package/build/require/type/omit/omit-from-mapped-key.js +31 -0
  488. package/build/require/type/omit/omit.d.ts +3 -0
  489. package/build/require/type/omit/omit.js +39 -0
  490. package/build/require/type/operators/index.js +27 -0
  491. package/build/require/type/operators/operators.d.ts +8 -0
  492. package/build/require/type/operators/operators.js +42 -0
  493. package/build/require/type/optional/index.js +27 -0
  494. package/build/require/type/optional/optional.d.ts +1 -0
  495. package/build/require/type/optional/optional.js +28 -0
  496. package/build/require/type/parameters/index.js +27 -0
  497. package/build/require/type/parameters/parameters.d.ts +1 -0
  498. package/build/require/type/parameters/parameters.js +28 -0
  499. package/build/require/type/partial/index.js +27 -0
  500. package/build/require/type/partial/partial-from-mapped-result.js +30 -0
  501. package/build/require/type/partial/partial.d.ts +2 -0
  502. package/build/require/type/partial/partial.js +36 -0
  503. package/build/require/type/patterns/index.js +27 -0
  504. package/build/require/type/patterns/patterns.js +27 -0
  505. package/build/require/type/pick/index.js +27 -0
  506. package/build/require/type/pick/pick-from-mapped-key.js +31 -0
  507. package/build/require/type/pick/pick.d.ts +3 -0
  508. package/build/require/type/pick/pick.js +34 -0
  509. package/build/require/type/promise/index.js +27 -0
  510. package/build/require/type/promise/promise.d.ts +1 -0
  511. package/build/require/type/promise/promise.js +28 -0
  512. package/build/require/type/readonly/index.js +27 -0
  513. package/build/require/type/readonly/readonly.d.ts +1 -0
  514. package/build/require/type/readonly/readonly.js +28 -0
  515. package/build/require/type/readonly-optional/index.js +27 -0
  516. package/build/require/type/readonly-optional/readonly-optional.d.ts +1 -0
  517. package/build/require/type/readonly-optional/readonly-optional.js +28 -0
  518. package/build/require/type/record/index.js +27 -0
  519. package/build/require/type/record/record.d.ts +1 -0
  520. package/build/require/type/record/record.js +48 -0
  521. package/build/require/type/recursive/index.js +27 -0
  522. package/build/require/type/recursive/recursive.d.ts +1 -0
  523. package/build/require/type/recursive/recursive.js +30 -0
  524. package/build/require/type/ref/index.js +27 -0
  525. package/build/require/type/ref/ref.d.ts +2 -0
  526. package/build/require/type/ref/ref.js +28 -0
  527. package/build/require/type/regexp/index.js +27 -0
  528. package/build/require/type/regexp/regexp.d.ts +2 -0
  529. package/build/require/type/regexp/regexp.js +28 -0
  530. package/build/require/type/registry/format.d.ts +6 -0
  531. package/build/require/type/registry/format.js +34 -0
  532. package/build/require/type/registry/index.js +27 -0
  533. package/build/require/type/registry/type.d.ts +6 -0
  534. package/build/require/type/registry/type.js +34 -0
  535. package/build/require/type/required/index.js +27 -0
  536. package/build/require/type/required/required-from-mapped-result.js +30 -0
  537. package/build/require/type/required/required.d.ts +2 -0
  538. package/build/require/type/required/required.js +36 -0
  539. package/build/require/type/rest/index.js +27 -0
  540. package/build/require/type/rest/rest.d.ts +1 -0
  541. package/build/require/type/rest/rest.js +32 -0
  542. package/build/require/type/return-type/index.js +27 -0
  543. package/build/require/type/return-type/return-type.d.ts +1 -0
  544. package/build/require/type/return-type/return-type.js +28 -0
  545. package/build/require/type/schema/anyschema.js +27 -0
  546. package/build/require/type/schema/index.js +27 -0
  547. package/build/require/type/schema/schema.d.ts +7 -0
  548. package/build/require/type/schema/schema.js +27 -0
  549. package/build/require/type/static/index.js +27 -0
  550. package/build/require/type/static/static.d.ts +3 -0
  551. package/build/require/type/static/static.js +27 -0
  552. package/build/require/type/strict/index.js +27 -0
  553. package/build/require/type/strict/strict.d.ts +1 -0
  554. package/build/require/type/strict/strict.js +28 -0
  555. package/build/require/type/string/index.js +27 -0
  556. package/build/require/type/string/string.d.ts +7 -0
  557. package/build/require/type/string/string.js +28 -0
  558. package/build/require/type/symbol/index.js +27 -0
  559. package/build/require/type/symbol/symbol.d.ts +1 -0
  560. package/build/require/type/symbol/symbol.js +28 -0
  561. package/build/require/type/symbols/index.js +27 -0
  562. package/build/require/type/symbols/symbols.d.ts +5 -0
  563. package/build/require/type/symbols/symbols.js +32 -0
  564. package/build/require/type/template-literal/finite.js +37 -0
  565. package/build/require/type/template-literal/generate.js +37 -0
  566. package/build/require/type/template-literal/index.js +27 -0
  567. package/build/require/type/template-literal/parser.d.ts +2 -0
  568. package/build/require/type/template-literal/parser.js +44 -0
  569. package/build/require/type/template-literal/pattern.js +38 -0
  570. package/build/require/type/template-literal/syntax.d.ts +1 -0
  571. package/build/require/type/template-literal/syntax.js +35 -0
  572. package/build/require/type/template-literal/template-literal.d.ts +2 -0
  573. package/build/require/type/template-literal/template-literal.js +29 -0
  574. package/build/require/type/template-literal/union.d.ts +1 -0
  575. package/build/require/type/template-literal/union.js +31 -0
  576. package/build/require/type/transform/index.js +27 -0
  577. package/build/require/type/transform/transform.d.ts +1 -0
  578. package/build/require/type/transform/transform.js +36 -0
  579. package/build/require/type/tuple/index.js +27 -0
  580. package/build/require/type/tuple/tuple.d.ts +1 -0
  581. package/build/require/type/tuple/tuple.js +30 -0
  582. package/build/require/type/type/index.d.ts +1 -0
  583. package/build/require/type/type/index.js +34 -0
  584. package/build/require/type/type/javascript.d.ts +19 -0
  585. package/build/require/type/type/javascript.js +45 -0
  586. package/build/require/type/type/json.d.ts +62 -1
  587. package/build/require/type/type/json.js +82 -1
  588. package/build/require/type/type/type.js +30 -0
  589. package/build/require/type/uint8array/index.js +27 -0
  590. package/build/require/type/uint8array/uint8array.d.ts +1 -0
  591. package/build/require/type/uint8array/uint8array.js +28 -0
  592. package/build/require/type/undefined/index.js +27 -0
  593. package/build/require/type/undefined/undefined.d.ts +1 -0
  594. package/build/require/type/undefined/undefined.js +28 -0
  595. package/build/require/type/union/index.js +27 -0
  596. package/build/require/type/union/union-create.js +27 -0
  597. package/build/require/type/union/union-evaluated.d.ts +1 -0
  598. package/build/require/type/union/union-evaluated.js +37 -0
  599. package/build/require/type/union/union-type.js +27 -0
  600. package/build/require/type/union/union.d.ts +1 -0
  601. package/build/require/type/union/union.js +29 -0
  602. package/build/require/type/unknown/index.js +27 -0
  603. package/build/require/type/unknown/unknown.d.ts +1 -0
  604. package/build/require/type/unknown/unknown.js +28 -0
  605. package/build/require/type/unsafe/index.js +27 -0
  606. package/build/require/type/unsafe/unsafe.d.ts +1 -0
  607. package/build/require/type/unsafe/unsafe.js +28 -0
  608. package/build/require/type/void/index.js +27 -0
  609. package/build/require/type/void/void.d.ts +1 -0
  610. package/build/require/type/void/void.js +28 -0
  611. package/build/require/value/cast/cast.d.ts +2 -0
  612. package/build/require/value/cast/cast.js +55 -0
  613. package/build/require/value/cast/index.js +27 -0
  614. package/build/require/value/check/check.d.ts +2 -0
  615. package/build/require/value/check/check.js +46 -1
  616. package/build/require/value/check/index.js +27 -0
  617. package/build/require/value/clean/clean.d.ts +2 -0
  618. package/build/require/value/clean/clean.js +39 -1
  619. package/build/require/value/clean/index.js +27 -0
  620. package/build/require/value/clone/clone.d.ts +1 -0
  621. package/build/require/value/clone/clone.js +34 -0
  622. package/build/require/value/clone/index.js +27 -0
  623. package/build/require/value/convert/convert.d.ts +2 -0
  624. package/build/require/value/convert/convert.js +57 -1
  625. package/build/require/value/convert/index.js +27 -0
  626. package/build/require/value/create/create.d.ts +2 -0
  627. package/build/require/value/create/create.js +44 -0
  628. package/build/require/value/create/index.js +27 -0
  629. package/build/require/value/default/default.d.ts +2 -0
  630. package/build/require/value/default/default.js +46 -0
  631. package/build/require/value/default/index.js +27 -0
  632. package/build/require/value/delta/delta.js +42 -0
  633. package/build/require/value/delta/index.js +27 -0
  634. package/build/require/value/deref/deref.d.ts +1 -0
  635. package/build/require/value/deref/deref.js +28 -0
  636. package/build/require/value/deref/index.js +27 -0
  637. package/build/require/value/equal/equal.d.ts +1 -0
  638. package/build/require/value/equal/equal.js +34 -0
  639. package/build/require/value/equal/index.js +27 -0
  640. package/build/require/value/guard/guard.d.ts +20 -0
  641. package/build/require/value/guard/guard.js +57 -0
  642. package/build/require/value/guard/index.js +27 -0
  643. package/build/require/value/hash/hash.d.ts +1 -0
  644. package/build/require/value/hash/hash.js +46 -0
  645. package/build/require/value/hash/index.js +27 -0
  646. package/build/require/value/index.js +39 -0
  647. package/build/require/value/mutate/index.js +27 -0
  648. package/build/require/value/mutate/mutate.d.ts +1 -0
  649. package/build/require/value/mutate/mutate.js +38 -0
  650. package/build/require/value/pointer/index.js +27 -0
  651. package/build/require/value/pointer/pointer.d.ts +5 -0
  652. package/build/require/value/pointer/pointer.js +45 -0
  653. package/build/require/value/transform/decode.d.ts +5 -0
  654. package/build/require/value/transform/decode.js +50 -0
  655. package/build/require/value/transform/encode.d.ts +6 -0
  656. package/build/require/value/transform/encode.js +52 -0
  657. package/build/require/value/transform/has.d.ts +1 -0
  658. package/build/require/value/transform/has.js +43 -0
  659. package/build/require/value/transform/index.js +27 -0
  660. package/build/require/value/value/index.js +27 -0
  661. package/build/require/value/value/value.d.ts +24 -0
  662. package/build/require/value/value/value.js +42 -0
  663. package/package.json +1 -1
  664. package/readme.md +2 -3
@@ -1,4 +1,31 @@
1
1
  "use strict";
2
+ /*--------------------------------------------------------------------------
3
+
4
+ @sinclair/typebox/type
5
+
6
+ The MIT License (MIT)
7
+
8
+ Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a copy
11
+ of this software and associated documentation files (the "Software"), to deal
12
+ in the Software without restriction, including without limitation the rights
13
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
+ copies of the Software, and to permit persons to whom the Software is
15
+ furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice shall be included in
18
+ all copies or substantial portions of the Software.
19
+
20
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
26
+ THE SOFTWARE.
27
+
28
+ ---------------------------------------------------------------------------*/
2
29
  Object.defineProperty(exports, "__esModule", { value: true });
3
30
  exports.JsonTypeBuilder = void 0;
4
31
  const index_1 = require("../any/index");
@@ -42,136 +69,190 @@ const index_38 = require("../tuple/index");
42
69
  const index_39 = require("../union/index");
43
70
  const index_40 = require("../unknown/index");
44
71
  const index_41 = require("../unsafe/index");
72
+ /** Json Type Builder with Static Resolution for TypeScript */
45
73
  class JsonTypeBuilder {
74
+ // ------------------------------------------------------------------------
75
+ // Strict
76
+ // ------------------------------------------------------------------------
77
+ /** `[Json]` Omits compositing symbols from this schema */
46
78
  Strict(schema) {
47
79
  return (0, index_34.Strict)(schema);
48
80
  }
81
+ // ------------------------------------------------------------------------
82
+ // Modifiers
83
+ // ------------------------------------------------------------------------
84
+ /** `[Json]` Creates a Readonly and Optional property */
49
85
  ReadonlyOptional(schema) {
50
86
  return (0, index_28.ReadonlyOptional)(schema);
51
87
  }
88
+ /** `[Json]` Creates a Readonly property */
52
89
  Readonly(schema) {
53
90
  return (0, index_27.Readonly)(schema);
54
91
  }
92
+ /** `[Json]` Creates an Optional property */
55
93
  Optional(schema) {
56
94
  return (0, index_24.Optional)(schema);
57
95
  }
96
+ // ------------------------------------------------------------------------
97
+ // Types
98
+ // ------------------------------------------------------------------------
99
+ /** `[Json]` Creates an Any type */
58
100
  Any(options = {}) {
59
101
  return (0, index_1.Any)(options);
60
102
  }
103
+ /** `[Json]` Creates an Array type */
61
104
  Array(schema, options = {}) {
62
105
  return (0, index_2.Array)(schema, options);
63
106
  }
107
+ /** `[Json]` Creates a Boolean type */
64
108
  Boolean(options = {}) {
65
109
  return (0, index_3.Boolean)(options);
66
110
  }
111
+ /** `[Json]` Intrinsic function to Capitalize LiteralString types */
67
112
  Capitalize(schema, options = {}) {
68
113
  return (0, index_14.Capitalize)(schema, options);
69
114
  }
115
+ /** `[Json]` Creates a Composite object type */
70
116
  Composite(objects, options) {
71
- return (0, index_4.Composite)(objects, options);
117
+ return (0, index_4.Composite)(objects, options); // (error) TS 5.4.0-dev - review TComposite implementation
72
118
  }
119
+ /** `[JavaScript]` Creates a readonly const type from the given value. */
73
120
  Const(value, options = {}) {
74
121
  return (0, index_5.Const)(value, options);
75
122
  }
123
+ /** `[Json]` Creates a dereferenced type */
76
124
  Deref(schema, references) {
77
125
  return (0, index_6.Deref)(schema, references);
78
126
  }
127
+ /** `[Json]` Creates a Enum type */
79
128
  Enum(item, options = {}) {
80
129
  return (0, index_7.Enum)(item, options);
81
130
  }
131
+ /** `[Json]` Constructs a type by excluding from unionType all union members that are assignable to excludedMembers */
82
132
  Exclude(unionType, excludedMembers, options = {}) {
83
133
  return (0, index_8.Exclude)(unionType, excludedMembers, options);
84
134
  }
135
+ /** `[Json]` Creates a Conditional type */
85
136
  Extends(L, R, T, F, options = {}) {
86
137
  return (0, index_9.Extends)(L, R, T, F, options);
87
138
  }
139
+ /** `[Json]` Constructs a type by extracting from type all union members that are assignable to union */
88
140
  Extract(type, union, options = {}) {
89
141
  return (0, index_10.Extract)(type, union, options);
90
142
  }
143
+ /** `[Json]` Returns an Indexed property type for the given keys */
91
144
  Index(schema, unresolved, options = {}) {
92
145
  return (0, index_11.Index)(schema, unresolved, options);
93
146
  }
147
+ /** `[Json]` Creates an Integer type */
94
148
  Integer(options = {}) {
95
149
  return (0, index_12.Integer)(options);
96
150
  }
151
+ /** `[Json]` Creates an Intersect type */
97
152
  Intersect(T, options = {}) {
98
153
  return (0, index_13.Intersect)(T, options);
99
154
  }
155
+ /** `[Json]` Creates a KeyOf type */
100
156
  KeyOf(schema, options = {}) {
101
157
  return (0, index_15.KeyOf)(schema, options);
102
158
  }
159
+ /** `[Json]` Creates a Literal type */
103
160
  Literal(value, options = {}) {
104
161
  return (0, index_16.Literal)(value, options);
105
162
  }
163
+ /** `[Json]` Intrinsic function to Lowercase LiteralString types */
106
164
  Lowercase(schema, options = {}) {
107
165
  return (0, index_14.Lowercase)(schema, options);
108
166
  }
167
+ /** `[Json]` Creates a Mapped object type */
109
168
  Mapped(key, map, options = {}) {
110
169
  return (0, index_17.Mapped)(key, map, options);
111
170
  }
171
+ /** `[Json]` Creates a Never type */
112
172
  Never(options = {}) {
113
173
  return (0, index_18.Never)(options);
114
174
  }
175
+ /** `[Json]` Creates a Not type */
115
176
  Not(schema, options) {
116
177
  return (0, index_19.Not)(schema, options);
117
178
  }
179
+ /** `[Json]` Creates a Null type */
118
180
  Null(options = {}) {
119
181
  return (0, index_20.Null)(options);
120
182
  }
183
+ /** `[Json]` Creates a Number type */
121
184
  Number(options = {}) {
122
185
  return (0, index_21.Number)(options);
123
186
  }
187
+ /** `[Json]` Creates an Object type */
124
188
  Object(properties, options = {}) {
125
189
  return (0, index_22.Object)(properties, options);
126
190
  }
191
+ /** `[Json]` Constructs a type whose keys are omitted from the given type */
127
192
  Omit(schema, unresolved, options = {}) {
128
193
  return (0, index_23.Omit)(schema, unresolved, options);
129
194
  }
195
+ /** `[Json]` Constructs a type where all properties are optional */
130
196
  Partial(schema, options = {}) {
131
197
  return (0, index_25.Partial)(schema, options);
132
198
  }
199
+ /** `[Json]` Constructs a type whose keys are picked from the given type */
133
200
  Pick(schema, unresolved, options = {}) {
134
201
  return (0, index_26.Pick)(schema, unresolved, options);
135
202
  }
203
+ /** `[Json]` Creates a Record type */
136
204
  Record(key, schema, options = {}) {
137
205
  return (0, index_29.Record)(key, schema);
138
206
  }
207
+ /** `[Json]` Creates a Recursive type */
139
208
  Recursive(callback, options = {}) {
140
209
  return (0, index_30.Recursive)(callback, options);
141
210
  }
211
+ /** `[Json]` Creates a Ref type. */
142
212
  Ref(unresolved, options = {}) {
143
213
  return (0, index_31.Ref)(unresolved, options);
144
214
  }
215
+ /** `[Json]` Constructs a type where all properties are required */
145
216
  Required(schema, options = {}) {
146
217
  return (0, index_32.Required)(schema, options);
147
218
  }
219
+ /** `[Json]` Extracts interior Rest elements from Tuple, Intersect and Union types */
148
220
  Rest(schema) {
149
221
  return (0, index_33.Rest)(schema);
150
222
  }
223
+ /** `[Json]` Creates a String type */
151
224
  String(options = {}) {
152
225
  return (0, index_35.String)(options);
153
226
  }
227
+ /** `[Json]` Creates a TemplateLiteral type */
154
228
  TemplateLiteral(unresolved, options = {}) {
155
229
  return (0, index_36.TemplateLiteral)(unresolved, options);
156
230
  }
231
+ /** `[Json]` Creates a Transform type */
157
232
  Transform(schema) {
158
233
  return (0, index_37.Transform)(schema);
159
234
  }
235
+ /** `[Json]` Creates a Tuple type */
160
236
  Tuple(items, options = {}) {
161
237
  return (0, index_38.Tuple)(items, options);
162
238
  }
239
+ /** `[Json]` Intrinsic function to Uncapitalize LiteralString types */
163
240
  Uncapitalize(schema, options = {}) {
164
241
  return (0, index_14.Uncapitalize)(schema, options);
165
242
  }
243
+ /** `[Json]` Creates a Union type */
166
244
  Union(schemas, options = {}) {
167
245
  return (0, index_39.Union)(schemas, options);
168
246
  }
247
+ /** `[Json]` Creates an Unknown type */
169
248
  Unknown(options = {}) {
170
249
  return (0, index_40.Unknown)(options);
171
250
  }
251
+ /** `[Json]` Creates a Unsafe type that will infers as the generic argument T */
172
252
  Unsafe(options = {}) {
173
253
  return (0, index_41.Unsafe)(options);
174
254
  }
255
+ /** `[Json]` Intrinsic function to Uppercase LiteralString types */
175
256
  Uppercase(schema, options = {}) {
176
257
  return (0, index_14.Uppercase)(schema, options);
177
258
  }
@@ -1,7 +1,37 @@
1
1
  "use strict";
2
+ /*--------------------------------------------------------------------------
3
+
4
+ @sinclair/typebox/type
5
+
6
+ The MIT License (MIT)
7
+
8
+ Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a copy
11
+ of this software and associated documentation files (the "Software"), to deal
12
+ in the Software without restriction, including without limitation the rights
13
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
+ copies of the Software, and to permit persons to whom the Software is
15
+ furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice shall be included in
18
+ all copies or substantial portions of the Software.
19
+
20
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
26
+ THE SOFTWARE.
27
+
28
+ ---------------------------------------------------------------------------*/
2
29
  Object.defineProperty(exports, "__esModule", { value: true });
3
30
  exports.Strict = exports.ReturnType = exports.Rest = exports.Required = exports.RegExp = exports.Ref = exports.Recursive = exports.Record = exports.ReadonlyOptional = exports.Readonly = exports.Promise = exports.Pick = exports.Partial = exports.Parameters = exports.Optional = exports.Omit = exports.Object = exports.Number = exports.Null = exports.Not = exports.Never = exports.Mapped = exports.Literal = exports.KeyOf = exports.Iterator = exports.Uppercase = exports.Lowercase = exports.Uncapitalize = exports.Capitalize = exports.Intersect = exports.Integer = exports.InstanceType = exports.Index = exports.Function = exports.Extract = exports.Extends = exports.Exclude = exports.Enum = exports.Deref = exports.Date = exports.ConstructorParameters = exports.Constructor = exports.Const = exports.Composite = exports.Boolean = exports.BigInt = exports.Awaited = exports.AsyncIterator = exports.Array = exports.Any = void 0;
4
31
  exports.Void = exports.Unsafe = exports.Unknown = exports.Union = exports.Undefined = exports.Uint8Array = exports.Tuple = exports.Transform = exports.TemplateLiteral = exports.Symbol = exports.String = void 0;
32
+ // ------------------------------------------------------------------
33
+ // Type: Module
34
+ // ------------------------------------------------------------------
5
35
  var index_1 = require("../any/index");
6
36
  Object.defineProperty(exports, "Any", { enumerable: true, get: function () { return index_1.Any; } });
7
37
  var index_2 = require("../array/index");
@@ -1,4 +1,31 @@
1
1
  "use strict";
2
+ /*--------------------------------------------------------------------------
3
+
4
+ @sinclair/typebox/type
5
+
6
+ The MIT License (MIT)
7
+
8
+ Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a copy
11
+ of this software and associated documentation files (the "Software"), to deal
12
+ in the Software without restriction, including without limitation the rights
13
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
+ copies of the Software, and to permit persons to whom the Software is
15
+ furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice shall be included in
18
+ all copies or substantial portions of the Software.
19
+
20
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
26
+ THE SOFTWARE.
27
+
28
+ ---------------------------------------------------------------------------*/
2
29
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
30
  if (k2 === undefined) k2 = k;
4
31
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -9,4 +9,5 @@ export interface TUint8Array extends TSchema, Uint8ArrayOptions {
9
9
  static: Uint8Array;
10
10
  type: 'uint8array';
11
11
  }
12
+ /** `[JavaScript]` Creates a Uint8Array type */
12
13
  export declare function Uint8Array(options?: Uint8ArrayOptions): TUint8Array;
@@ -1,7 +1,35 @@
1
1
  "use strict";
2
+ /*--------------------------------------------------------------------------
3
+
4
+ @sinclair/typebox/type
5
+
6
+ The MIT License (MIT)
7
+
8
+ Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a copy
11
+ of this software and associated documentation files (the "Software"), to deal
12
+ in the Software without restriction, including without limitation the rights
13
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
+ copies of the Software, and to permit persons to whom the Software is
15
+ furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice shall be included in
18
+ all copies or substantial portions of the Software.
19
+
20
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
26
+ THE SOFTWARE.
27
+
28
+ ---------------------------------------------------------------------------*/
2
29
  Object.defineProperty(exports, "__esModule", { value: true });
3
30
  exports.Uint8Array = void 0;
4
31
  const index_1 = require("../symbols/index");
32
+ /** `[JavaScript]` Creates a Uint8Array type */
5
33
  function Uint8Array(options = {}) {
6
34
  return { ...options, [index_1.Kind]: 'Uint8Array', type: 'Uint8Array' };
7
35
  }
@@ -1,4 +1,31 @@
1
1
  "use strict";
2
+ /*--------------------------------------------------------------------------
3
+
4
+ @sinclair/typebox/type
5
+
6
+ The MIT License (MIT)
7
+
8
+ Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a copy
11
+ of this software and associated documentation files (the "Software"), to deal
12
+ in the Software without restriction, including without limitation the rights
13
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
+ copies of the Software, and to permit persons to whom the Software is
15
+ furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice shall be included in
18
+ all copies or substantial portions of the Software.
19
+
20
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
26
+ THE SOFTWARE.
27
+
28
+ ---------------------------------------------------------------------------*/
2
29
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
30
  if (k2 === undefined) k2 = k;
4
31
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -5,4 +5,5 @@ export interface TUndefined extends TSchema {
5
5
  static: undefined;
6
6
  type: 'undefined';
7
7
  }
8
+ /** `[JavaScript]` Creates a Undefined type */
8
9
  export declare function Undefined(options?: SchemaOptions): TUndefined;
@@ -1,7 +1,35 @@
1
1
  "use strict";
2
+ /*--------------------------------------------------------------------------
3
+
4
+ @sinclair/typebox/type
5
+
6
+ The MIT License (MIT)
7
+
8
+ Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a copy
11
+ of this software and associated documentation files (the "Software"), to deal
12
+ in the Software without restriction, including without limitation the rights
13
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
+ copies of the Software, and to permit persons to whom the Software is
15
+ furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice shall be included in
18
+ all copies or substantial portions of the Software.
19
+
20
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
26
+ THE SOFTWARE.
27
+
28
+ ---------------------------------------------------------------------------*/
2
29
  Object.defineProperty(exports, "__esModule", { value: true });
3
30
  exports.Undefined = void 0;
4
31
  const index_1 = require("../symbols/index");
32
+ /** `[JavaScript]` Creates a Undefined type */
5
33
  function Undefined(options = {}) {
6
34
  return { ...options, [index_1.Kind]: 'Undefined', type: 'undefined' };
7
35
  }
@@ -1,4 +1,31 @@
1
1
  "use strict";
2
+ /*--------------------------------------------------------------------------
3
+
4
+ @sinclair/typebox/type
5
+
6
+ The MIT License (MIT)
7
+
8
+ Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a copy
11
+ of this software and associated documentation files (the "Software"), to deal
12
+ in the Software without restriction, including without limitation the rights
13
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
+ copies of the Software, and to permit persons to whom the Software is
15
+ furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice shall be included in
18
+ all copies or substantial portions of the Software.
19
+
20
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
26
+ THE SOFTWARE.
27
+
28
+ ---------------------------------------------------------------------------*/
2
29
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
30
  if (k2 === undefined) k2 = k;
4
31
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -1,4 +1,31 @@
1
1
  "use strict";
2
+ /*--------------------------------------------------------------------------
3
+
4
+ @sinclair/typebox/type
5
+
6
+ The MIT License (MIT)
7
+
8
+ Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a copy
11
+ of this software and associated documentation files (the "Software"), to deal
12
+ in the Software without restriction, including without limitation the rights
13
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
+ copies of the Software, and to permit persons to whom the Software is
15
+ furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice shall be included in
18
+ all copies or substantial portions of the Software.
19
+
20
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
26
+ THE SOFTWARE.
27
+
28
+ ---------------------------------------------------------------------------*/
2
29
  Object.defineProperty(exports, "__esModule", { value: true });
3
30
  exports.UnionCreate = void 0;
4
31
  const type_1 = require("../clone/type");
@@ -12,5 +12,6 @@ declare function RemoveOptionalFromType<T extends TSchema>(T: T): RemoveOptional
12
12
  type ResolveUnion<T extends TSchema[], R extends TSchema[] = RemoveOptionalFromRest<T>> = (IsUnionOptional<T> extends true ? TOptional<TUnion<R>> : TUnion<R>);
13
13
  declare function ResolveUnion<T extends TSchema[]>(T: T, options: SchemaOptions): ResolveUnion<T>;
14
14
  export type UnionEvaluated<T extends TSchema[]> = (T extends [] ? TNever : T extends [TSchema] ? T[0] : ResolveUnion<T>);
15
+ /** `[Json]` Creates an evaluated Union type */
15
16
  export declare function UnionEvaluated<T extends TSchema[], R = UnionEvaluated<T>>(T: [...T], options?: SchemaOptions): R;
16
17
  export {};
@@ -1,4 +1,31 @@
1
1
  "use strict";
2
+ /*--------------------------------------------------------------------------
3
+
4
+ @sinclair/typebox/type
5
+
6
+ The MIT License (MIT)
7
+
8
+ Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a copy
11
+ of this software and associated documentation files (the "Software"), to deal
12
+ in the Software without restriction, including without limitation the rights
13
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
+ copies of the Software, and to permit persons to whom the Software is
15
+ furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice shall be included in
18
+ all copies or substantial portions of the Software.
19
+
20
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
26
+ THE SOFTWARE.
27
+
28
+ ---------------------------------------------------------------------------*/
2
29
  Object.defineProperty(exports, "__esModule", { value: true });
3
30
  exports.UnionEvaluated = void 0;
4
31
  const index_1 = require("../symbols/index");
@@ -7,7 +34,12 @@ const index_2 = require("../discard/index");
7
34
  const index_3 = require("../never/index");
8
35
  const index_4 = require("../optional/index");
9
36
  const union_create_1 = require("./union-create");
37
+ // ------------------------------------------------------------------
38
+ // TypeGuard
39
+ // ------------------------------------------------------------------
40
+ // prettier-ignore
10
41
  const type_2 = require("../guard/type");
42
+ // prettier-ignore
11
43
  function IsUnionOptional(T) {
12
44
  const [L, ...R] = T;
13
45
  return (T.length > 0
@@ -16,18 +48,23 @@ function IsUnionOptional(T) {
16
48
  : IsUnionOptional(R)
17
49
  : false);
18
50
  }
51
+ // prettier-ignore
19
52
  function RemoveOptionalFromRest(T) {
20
53
  return (T.map(T => RemoveOptionalFromType(T)));
21
54
  }
55
+ // prettier-ignore
22
56
  function RemoveOptionalFromType(T) {
23
57
  return ((0, index_2.Discard)(T, [index_1.OptionalKind]));
24
58
  }
59
+ // prettier-ignore
25
60
  function ResolveUnion(T, options) {
26
61
  return (IsUnionOptional(T)
27
62
  ? (0, index_4.Optional)((0, union_create_1.UnionCreate)(RemoveOptionalFromRest(T), options))
28
63
  : (0, union_create_1.UnionCreate)(RemoveOptionalFromRest(T), options));
29
64
  }
65
+ /** `[Json]` Creates an evaluated Union type */
30
66
  function UnionEvaluated(T, options = {}) {
67
+ // prettier-ignore
31
68
  return (T.length === 0 ? (0, index_3.Never)(options) :
32
69
  T.length === 1 ? (0, type_1.CloneType)(T[0], options) :
33
70
  ResolveUnion(T, options));
@@ -1,3 +1,30 @@
1
1
  "use strict";
2
+ /*--------------------------------------------------------------------------
3
+
4
+ @sinclair/typebox/type
5
+
6
+ The MIT License (MIT)
7
+
8
+ Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a copy
11
+ of this software and associated documentation files (the "Software"), to deal
12
+ in the Software without restriction, including without limitation the rights
13
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
+ copies of the Software, and to permit persons to whom the Software is
15
+ furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice shall be included in
18
+ all copies or substantial portions of the Software.
19
+
20
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
26
+ THE SOFTWARE.
27
+
28
+ ---------------------------------------------------------------------------*/
2
29
  Object.defineProperty(exports, "__esModule", { value: true });
3
30
  const index_1 = require("../symbols/index");
@@ -2,4 +2,5 @@ import type { TSchema, SchemaOptions } from '../schema/index';
2
2
  import { type TNever } from '../never/index';
3
3
  import type { TUnion } from './union-type';
4
4
  export type Union<T extends TSchema[]> = (T extends [] ? TNever : T extends [TSchema] ? T[0] : TUnion<T>);
5
+ /** `[Json]` Creates a Union type */
5
6
  export declare function Union<T extends TSchema[]>(T: [...T], options?: SchemaOptions): Union<T>;
@@ -1,10 +1,39 @@
1
1
  "use strict";
2
+ /*--------------------------------------------------------------------------
3
+
4
+ @sinclair/typebox/type
5
+
6
+ The MIT License (MIT)
7
+
8
+ Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a copy
11
+ of this software and associated documentation files (the "Software"), to deal
12
+ in the Software without restriction, including without limitation the rights
13
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
+ copies of the Software, and to permit persons to whom the Software is
15
+ furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice shall be included in
18
+ all copies or substantial portions of the Software.
19
+
20
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
26
+ THE SOFTWARE.
27
+
28
+ ---------------------------------------------------------------------------*/
2
29
  Object.defineProperty(exports, "__esModule", { value: true });
3
30
  exports.Union = void 0;
4
31
  const index_1 = require("../never/index");
5
32
  const type_1 = require("../clone/type");
6
33
  const union_create_1 = require("./union-create");
34
+ /** `[Json]` Creates a Union type */
7
35
  function Union(T, options = {}) {
36
+ // prettier-ignore
8
37
  return (T.length === 0 ? (0, index_1.Never)(options) :
9
38
  T.length === 1 ? (0, type_1.CloneType)(T[0], options) :
10
39
  (0, union_create_1.UnionCreate)(T, options));