@sinclair/typebox 0.32.0-dev-25 → 0.32.0-dev-27

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 (206) hide show
  1. package/build/import/errors/errors.mjs +2 -2
  2. package/build/import/errors/function.d.mts +13 -3
  3. package/build/import/errors/function.mjs +39 -39
  4. package/build/import/index.d.mts +2 -2
  5. package/build/import/type/awaited/awaited.mjs +2 -6
  6. package/build/import/type/composite/composite.d.mts +1 -2
  7. package/build/import/type/composite/composite.mjs +2 -2
  8. package/build/import/type/const/const.mjs +6 -6
  9. package/build/import/type/constructor/constructor.d.mts +1 -1
  10. package/build/import/type/constructor/constructor.mjs +1 -1
  11. package/build/import/type/deref/deref.mjs +1 -2
  12. package/build/import/type/discard/discard.mjs +2 -2
  13. package/build/import/type/enum/enum.mjs +3 -0
  14. package/build/import/type/exclude/exclude-from-mapped-result.d.mts +5 -5
  15. package/build/import/type/exclude/exclude-from-mapped-result.mjs +7 -7
  16. package/build/import/type/exclude/exclude.mjs +0 -1
  17. package/build/import/type/extends/extends-from-mapped-key.d.mts +1 -1
  18. package/build/import/type/extends/extends-from-mapped-key.mjs +4 -5
  19. package/build/import/type/extends/extends-from-mapped-result.d.mts +5 -5
  20. package/build/import/type/extends/extends-from-mapped-result.mjs +7 -7
  21. package/build/import/type/extends/extends.mjs +0 -1
  22. package/build/import/type/extract/extract-from-mapped-result.d.mts +5 -5
  23. package/build/import/type/extract/extract-from-mapped-result.mjs +7 -7
  24. package/build/import/type/extract/extract.d.mts +1 -2
  25. package/build/import/type/extract/extract.mjs +4 -2
  26. package/build/import/type/index.d.mts +1 -1
  27. package/build/import/type/index.mjs +1 -1
  28. package/build/import/type/indexed/indexed-from-mapped-key.d.mts +2 -2
  29. package/build/import/type/indexed/indexed-from-mapped-key.mjs +4 -5
  30. package/build/import/type/indexed/indexed-from-mapped-result.d.mts +2 -2
  31. package/build/import/type/indexed/indexed-from-mapped-result.mjs +1 -1
  32. package/build/import/type/indexed/indexed-property-keys.d.mts +6 -6
  33. package/build/import/type/indexed/indexed-property-keys.mjs +3 -5
  34. package/build/import/type/indexed/indexed.d.mts +1 -1
  35. package/build/import/type/indexed/indexed.mjs +9 -27
  36. package/build/import/type/intersect/intersect-evaluated.mjs +3 -13
  37. package/build/import/type/intrinsic/capitalize.d.mts +2 -2
  38. package/build/import/type/intrinsic/intrinsic-from-mapped-key.d.mts +1 -1
  39. package/build/import/type/intrinsic/intrinsic-from-mapped-key.mjs +4 -5
  40. package/build/import/type/intrinsic/intrinsic.d.mts +2 -3
  41. package/build/import/type/intrinsic/intrinsic.mjs +2 -5
  42. package/build/import/type/intrinsic/lowercase.d.mts +2 -2
  43. package/build/import/type/intrinsic/uncapitalize.d.mts +2 -2
  44. package/build/import/type/intrinsic/uppercase.d.mts +2 -2
  45. package/build/import/type/iterator/iterator.mjs +1 -1
  46. package/build/import/type/keyof/keyof-from-mapped-result.d.mts +3 -3
  47. package/build/import/type/keyof/keyof-from-mapped-result.mjs +4 -4
  48. package/build/import/type/keyof/keyof-property-keys.d.mts +3 -3
  49. package/build/import/type/keyof/keyof-property-keys.mjs +9 -15
  50. package/build/import/type/keyof/keyof.mjs +2 -8
  51. package/build/import/type/mapped/mapped.d.mts +6 -1
  52. package/build/import/type/mapped/mapped.mjs +21 -14
  53. package/build/import/type/not/not.mjs +1 -1
  54. package/build/import/type/object/object.d.mts +1 -1
  55. package/build/import/type/object/object.mjs +0 -1
  56. package/build/import/type/omit/index.d.mts +1 -0
  57. package/build/import/type/omit/index.mjs +1 -0
  58. package/build/import/type/omit/omit-from-mapped-key.mjs +4 -5
  59. package/build/import/type/omit/omit-from-mapped-result.d.mts +11 -0
  60. package/build/import/type/omit/omit-from-mapped-result.mjs +17 -0
  61. package/build/import/type/omit/omit.d.mts +6 -3
  62. package/build/import/type/omit/omit.mjs +11 -9
  63. package/build/import/type/optional/optional-from-mapped-result.d.mts +5 -5
  64. package/build/import/type/optional/optional-from-mapped-result.mjs +7 -7
  65. package/build/import/type/partial/partial-from-mapped-result.d.mts +5 -5
  66. package/build/import/type/partial/partial-from-mapped-result.mjs +4 -4
  67. package/build/import/type/partial/partial.d.mts +2 -3
  68. package/build/import/type/partial/partial.mjs +8 -21
  69. package/build/import/type/pick/index.d.mts +1 -0
  70. package/build/import/type/pick/index.mjs +1 -0
  71. package/build/import/type/pick/pick-from-mapped-key.mjs +4 -5
  72. package/build/import/type/pick/pick-from-mapped-result.d.mts +11 -0
  73. package/build/import/type/pick/pick-from-mapped-result.mjs +17 -0
  74. package/build/import/type/pick/pick.d.mts +5 -2
  75. package/build/import/type/pick/pick.mjs +11 -10
  76. package/build/import/type/promise/promise.mjs +1 -1
  77. package/build/import/type/readonly/readonly-from-mapped-result.d.mts +5 -5
  78. package/build/import/type/readonly/readonly-from-mapped-result.mjs +4 -4
  79. package/build/import/type/record/record.d.mts +2 -2
  80. package/build/import/type/record/record.mjs +3 -0
  81. package/build/import/type/ref/ref.mjs +1 -1
  82. package/build/import/type/required/required-from-mapped-result.d.mts +5 -5
  83. package/build/import/type/required/required-from-mapped-result.mjs +7 -7
  84. package/build/import/type/required/required.d.mts +2 -3
  85. package/build/import/type/required/required.mjs +4 -14
  86. package/build/import/type/rest/rest.d.mts +2 -2
  87. package/build/import/type/rest/rest.mjs +1 -2
  88. package/build/import/type/sets/index.d.mts +1 -0
  89. package/build/import/type/sets/index.mjs +1 -0
  90. package/build/import/type/sets/set.d.mts +24 -0
  91. package/build/import/type/sets/set.mjs +35 -0
  92. package/build/import/type/strict/strict.d.mts +1 -1
  93. package/build/import/type/strict/strict.mjs +1 -1
  94. package/build/import/type/template-literal/syntax.d.mts +1 -1
  95. package/build/import/type/template-literal/template-literal.d.mts +1 -1
  96. package/build/import/type/transform/transform.mjs +1 -1
  97. package/build/import/type/type/json.d.mts +6 -2
  98. package/build/import/type/union/union-evaluated.mjs +3 -14
  99. package/build/require/errors/errors.js +2 -2
  100. package/build/require/errors/function.d.ts +13 -3
  101. package/build/require/errors/function.js +39 -39
  102. package/build/require/index.d.ts +2 -2
  103. package/build/require/type/awaited/awaited.js +2 -6
  104. package/build/require/type/composite/composite.d.ts +1 -2
  105. package/build/require/type/composite/composite.js +5 -6
  106. package/build/require/type/const/const.js +6 -6
  107. package/build/require/type/constructor/constructor.d.ts +1 -1
  108. package/build/require/type/constructor/constructor.js +1 -1
  109. package/build/require/type/deref/deref.js +0 -1
  110. package/build/require/type/discard/discard.js +2 -2
  111. package/build/require/type/enum/enum.js +3 -0
  112. package/build/require/type/exclude/exclude-from-mapped-result.d.ts +5 -5
  113. package/build/require/type/exclude/exclude-from-mapped-result.js +7 -7
  114. package/build/require/type/exclude/exclude.js +0 -1
  115. package/build/require/type/extends/extends-from-mapped-key.d.ts +1 -1
  116. package/build/require/type/extends/extends-from-mapped-key.js +4 -5
  117. package/build/require/type/extends/extends-from-mapped-result.d.ts +5 -5
  118. package/build/require/type/extends/extends-from-mapped-result.js +7 -7
  119. package/build/require/type/extends/extends.js +0 -1
  120. package/build/require/type/extract/extract-from-mapped-result.d.ts +5 -5
  121. package/build/require/type/extract/extract-from-mapped-result.js +7 -7
  122. package/build/require/type/extract/extract.d.ts +1 -2
  123. package/build/require/type/extract/extract.js +4 -3
  124. package/build/require/type/index.d.ts +1 -1
  125. package/build/require/type/index.js +1 -1
  126. package/build/require/type/indexed/indexed-from-mapped-key.d.ts +2 -2
  127. package/build/require/type/indexed/indexed-from-mapped-key.js +4 -5
  128. package/build/require/type/indexed/indexed-from-mapped-result.d.ts +2 -2
  129. package/build/require/type/indexed/indexed-from-mapped-result.js +1 -1
  130. package/build/require/type/indexed/indexed-property-keys.d.ts +6 -6
  131. package/build/require/type/indexed/indexed-property-keys.js +3 -5
  132. package/build/require/type/indexed/indexed.d.ts +1 -1
  133. package/build/require/type/indexed/indexed.js +9 -27
  134. package/build/require/type/intersect/intersect-evaluated.js +3 -13
  135. package/build/require/type/intrinsic/capitalize.d.ts +2 -2
  136. package/build/require/type/intrinsic/intrinsic-from-mapped-key.d.ts +1 -1
  137. package/build/require/type/intrinsic/intrinsic-from-mapped-key.js +4 -5
  138. package/build/require/type/intrinsic/intrinsic.d.ts +2 -3
  139. package/build/require/type/intrinsic/intrinsic.js +2 -5
  140. package/build/require/type/intrinsic/lowercase.d.ts +2 -2
  141. package/build/require/type/intrinsic/uncapitalize.d.ts +2 -2
  142. package/build/require/type/intrinsic/uppercase.d.ts +2 -2
  143. package/build/require/type/iterator/iterator.js +1 -1
  144. package/build/require/type/keyof/keyof-from-mapped-result.d.ts +3 -3
  145. package/build/require/type/keyof/keyof-from-mapped-result.js +4 -4
  146. package/build/require/type/keyof/keyof-property-keys.d.ts +3 -3
  147. package/build/require/type/keyof/keyof-property-keys.js +9 -15
  148. package/build/require/type/keyof/keyof.js +2 -8
  149. package/build/require/type/mapped/mapped.d.ts +6 -1
  150. package/build/require/type/mapped/mapped.js +21 -14
  151. package/build/require/type/not/not.js +1 -1
  152. package/build/require/type/object/object.d.ts +1 -1
  153. package/build/require/type/object/object.js +0 -1
  154. package/build/require/type/omit/index.d.ts +1 -0
  155. package/build/require/type/omit/index.js +1 -0
  156. package/build/require/type/omit/omit-from-mapped-key.js +4 -5
  157. package/build/require/type/omit/omit-from-mapped-result.d.ts +11 -0
  158. package/build/require/type/omit/omit-from-mapped-result.js +22 -0
  159. package/build/require/type/omit/omit.d.ts +6 -3
  160. package/build/require/type/omit/omit.js +10 -8
  161. package/build/require/type/optional/optional-from-mapped-result.d.ts +5 -5
  162. package/build/require/type/optional/optional-from-mapped-result.js +7 -7
  163. package/build/require/type/partial/partial-from-mapped-result.d.ts +5 -5
  164. package/build/require/type/partial/partial-from-mapped-result.js +4 -4
  165. package/build/require/type/partial/partial.d.ts +2 -3
  166. package/build/require/type/partial/partial.js +8 -21
  167. package/build/require/type/pick/index.d.ts +1 -0
  168. package/build/require/type/pick/index.js +1 -0
  169. package/build/require/type/pick/pick-from-mapped-key.js +4 -5
  170. package/build/require/type/pick/pick-from-mapped-result.d.ts +11 -0
  171. package/build/require/type/pick/pick-from-mapped-result.js +22 -0
  172. package/build/require/type/pick/pick.d.ts +5 -2
  173. package/build/require/type/pick/pick.js +10 -9
  174. package/build/require/type/promise/promise.js +1 -1
  175. package/build/require/type/readonly/readonly-from-mapped-result.d.ts +5 -5
  176. package/build/require/type/readonly/readonly-from-mapped-result.js +4 -4
  177. package/build/require/type/record/record.d.ts +2 -2
  178. package/build/require/type/record/record.js +3 -0
  179. package/build/require/type/ref/ref.js +1 -1
  180. package/build/require/type/required/required-from-mapped-result.d.ts +5 -5
  181. package/build/require/type/required/required-from-mapped-result.js +7 -7
  182. package/build/require/type/required/required.d.ts +2 -3
  183. package/build/require/type/required/required.js +4 -14
  184. package/build/require/type/rest/rest.d.ts +2 -2
  185. package/build/require/type/rest/rest.js +1 -3
  186. package/build/require/type/sets/index.d.ts +1 -0
  187. package/build/require/type/{operators → sets}/index.js +1 -1
  188. package/build/require/type/sets/set.d.ts +24 -0
  189. package/build/require/type/sets/set.js +47 -0
  190. package/build/require/type/strict/strict.d.ts +1 -1
  191. package/build/require/type/strict/strict.js +1 -1
  192. package/build/require/type/template-literal/parse.js +1 -1
  193. package/build/require/type/template-literal/syntax.d.ts +1 -1
  194. package/build/require/type/template-literal/template-literal.d.ts +1 -1
  195. package/build/require/type/transform/transform.js +1 -1
  196. package/build/require/type/type/json.d.ts +6 -2
  197. package/build/require/type/union/union-evaluated.js +3 -14
  198. package/package.json +1 -1
  199. package/readme.md +67 -67
  200. package/build/import/type/operators/index.d.mts +0 -1
  201. package/build/import/type/operators/index.mjs +0 -1
  202. package/build/import/type/operators/operators.d.mts +0 -24
  203. package/build/import/type/operators/operators.mjs +0 -77
  204. package/build/require/type/operators/index.d.ts +0 -1
  205. package/build/require/type/operators/operators.d.ts +0 -24
  206. package/build/require/type/operators/operators.js +0 -89
@@ -1,89 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.OperatorUnionMany = exports.OperatorIntersectMany = exports.OperatorComplement = exports.OperatorUnion = exports.OperatorIntersect = exports.OperatorDistinct = exports.OperatorSubset = exports.OperatorIncludes = void 0;
5
- /** Returns true if element S is in the set of T */
6
- // prettier-ignore
7
- function OperatorIncludes(T, S) {
8
- const [L, ...R] = T;
9
- return (T.length > 0
10
- ? S === L
11
- ? true
12
- : OperatorIncludes(R, S)
13
- : false);
14
- }
15
- exports.OperatorIncludes = OperatorIncludes;
16
- /** Returns true if T is a subset of S */
17
- function OperatorSubset(T, S) {
18
- const [L, ...R] = T;
19
- // prettier-ignore
20
- return (T.length > 0
21
- ? OperatorIncludes(S, L) === true
22
- ? OperatorSubset(R, S)
23
- : false
24
- : true);
25
- }
26
- exports.OperatorSubset = OperatorSubset;
27
- /** Returns a distinct set of elements */
28
- function OperatorDistinct(T, Acc = []) {
29
- const [L, ...R] = T;
30
- // prettier-ignore
31
- return (T.length > 0 ?
32
- (OperatorIncludes(Acc, L) === false
33
- ? OperatorDistinct(R, [...Acc, L])
34
- : OperatorDistinct(R, [...Acc])) : Acc);
35
- }
36
- exports.OperatorDistinct = OperatorDistinct;
37
- /** Returns the Intersect of the given sets */
38
- function OperatorIntersect(T, S) {
39
- const [L, ...R] = T;
40
- // prettier-ignore
41
- return (T.length > 0
42
- ? OperatorIncludes(S, L) === true
43
- ? [L, ...OperatorIntersect(R, S)]
44
- : [...OperatorIntersect(R, S)]
45
- : []);
46
- }
47
- exports.OperatorIntersect = OperatorIntersect;
48
- /** Returns the Union of the given sets */
49
- function OperatorUnion(T, S, Acc = S) {
50
- const [L, ...R] = T;
51
- // prettier-ignore
52
- return (T.length > 0
53
- ? OperatorUnion(R, S, [...Acc, L])
54
- : Acc);
55
- }
56
- exports.OperatorUnion = OperatorUnion;
57
- /** Returns the Complement by omitting elements in T that are in S */
58
- // prettier-ignore
59
- function OperatorComplement(T, S, Acc = []) {
60
- const [L, ...R] = T;
61
- return (T.length > 0
62
- ? OperatorIncludes(S, L) === true
63
- ? OperatorComplement(R, S, [...Acc])
64
- : OperatorComplement(R, S, [L, ...Acc])
65
- : Acc);
66
- }
67
- exports.OperatorComplement = OperatorComplement;
68
- /** Returns the Intersect of multiple sets */
69
- // prettier-ignore
70
- function OperatorIntersectMany(T, Acc = []) {
71
- return (T.length === 1
72
- ? T[0]
73
- : (() => {
74
- const [L, ...R] = T;
75
- return (L.length > 0
76
- ? OperatorIntersect(L, OperatorIntersectMany(R))
77
- : []);
78
- })());
79
- }
80
- exports.OperatorIntersectMany = OperatorIntersectMany;
81
- /** Returns the Union of multiple sets */
82
- function OperatorUnionMany(T, Acc = []) {
83
- const [L, ...R] = T;
84
- // prettier-ignore
85
- return (T.length > 0
86
- ? OperatorUnionMany(R, OperatorUnion(Acc, L))
87
- : Acc);
88
- }
89
- exports.OperatorUnionMany = OperatorUnionMany;