type-plus 6.4.0 → 6.6.0

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 (239) hide show
  1. package/README.md +27 -15
  2. package/cjs/any/any_or_never.d.ts +0 -2
  3. package/cjs/any/any_or_never.d.ts.map +1 -1
  4. package/cjs/any/any_type.d.ts +2 -6
  5. package/cjs/any/any_type.d.ts.map +1 -1
  6. package/cjs/array/array.d.ts +0 -4
  7. package/cjs/array/array.d.ts.map +1 -1
  8. package/cjs/array/array_index.d.ts +7 -10
  9. package/cjs/array/array_index.d.ts.map +1 -1
  10. package/cjs/array/array_type.d.ts +0 -8
  11. package/cjs/array/array_type.d.ts.map +1 -1
  12. package/cjs/bigint/bigint_type.d.ts +4 -12
  13. package/cjs/bigint/bigint_type.d.ts.map +1 -1
  14. package/cjs/bigint/strict_bigint_type.d.ts +4 -12
  15. package/cjs/bigint/strict_bigint_type.d.ts.map +1 -1
  16. package/cjs/boolean/boolean_type.d.ts +0 -8
  17. package/cjs/boolean/boolean_type.d.ts.map +1 -1
  18. package/cjs/boolean/false_type.d.ts +0 -8
  19. package/cjs/boolean/false_type.d.ts.map +1 -1
  20. package/cjs/boolean/strict_boolean_type.d.ts +0 -8
  21. package/cjs/boolean/strict_boolean_type.d.ts.map +1 -1
  22. package/cjs/boolean/true_type.d.ts +0 -8
  23. package/cjs/boolean/true_type.d.ts.map +1 -1
  24. package/cjs/equal/equal.d.ts +4 -5
  25. package/cjs/equal/equal.d.ts.map +1 -1
  26. package/cjs/function/function_type.d.ts +0 -8
  27. package/cjs/function/function_type.d.ts.map +1 -1
  28. package/cjs/function/strict_function_type.d.ts +0 -8
  29. package/cjs/function/strict_function_type.d.ts.map +1 -1
  30. package/cjs/index.d.ts +3 -0
  31. package/cjs/index.d.ts.map +1 -1
  32. package/cjs/index.js.map +1 -1
  33. package/cjs/never/never_type.d.ts +2 -10
  34. package/cjs/never/never_type.d.ts.map +1 -1
  35. package/cjs/nominal/brand.d.ts +7 -5
  36. package/cjs/nominal/brand.d.ts.map +1 -1
  37. package/cjs/nominal/brand.js +4 -4
  38. package/cjs/nominal/brand.js.map +1 -1
  39. package/cjs/nominal/{types.d.ts → constants.d.ts} +1 -1
  40. package/cjs/nominal/constants.d.ts.map +1 -0
  41. package/cjs/nominal/{types.js → constants.js} +1 -1
  42. package/cjs/nominal/constants.js.map +1 -0
  43. package/cjs/nominal/flavor.d.ts +14 -3
  44. package/cjs/nominal/flavor.d.ts.map +1 -1
  45. package/cjs/nominal/flavor.js +2 -2
  46. package/cjs/nominal/flavor.js.map +1 -1
  47. package/cjs/nominal/nominal_match.js +2 -2
  48. package/cjs/nominal/nominal_match.js.map +1 -1
  49. package/cjs/null/null_type.d.ts +4 -12
  50. package/cjs/null/null_type.d.ts.map +1 -1
  51. package/cjs/number/integer.d.ts +1 -9
  52. package/cjs/number/integer.d.ts.map +1 -1
  53. package/cjs/number/negative.d.ts +0 -8
  54. package/cjs/number/negative.d.ts.map +1 -1
  55. package/cjs/number/number_type.d.ts +0 -8
  56. package/cjs/number/number_type.d.ts.map +1 -1
  57. package/cjs/number/numeric_type.d.ts +0 -8
  58. package/cjs/number/numeric_type.d.ts.map +1 -1
  59. package/cjs/number/positive.d.ts +1 -9
  60. package/cjs/number/positive.d.ts.map +1 -1
  61. package/cjs/number/strict_number_type.d.ts +4 -12
  62. package/cjs/number/strict_number_type.d.ts.map +1 -1
  63. package/cjs/object/object_type.d.ts +1 -9
  64. package/cjs/object/object_type.d.ts.map +1 -1
  65. package/cjs/string/strict_string_type.d.ts +14 -19
  66. package/cjs/string/strict_string_type.d.ts.map +1 -1
  67. package/cjs/string/string.d.ts +24 -0
  68. package/cjs/string/string.d.ts.map +1 -0
  69. package/cjs/string/string.js +3 -0
  70. package/cjs/string/string.js.map +1 -0
  71. package/cjs/string/string_plus.d.ts +27 -0
  72. package/cjs/string/string_plus.d.ts.map +1 -0
  73. package/cjs/string/string_plus.js +3 -0
  74. package/cjs/string/string_plus.js.map +1 -0
  75. package/cjs/string/string_type.d.ts +4 -12
  76. package/cjs/string/string_type.d.ts.map +1 -1
  77. package/cjs/symbol/symbol_type.d.ts +5 -15
  78. package/cjs/symbol/symbol_type.d.ts.map +1 -1
  79. package/cjs/tuple/tuple_type.d.ts +0 -8
  80. package/cjs/tuple/tuple_type.d.ts.map +1 -1
  81. package/cjs/type/failed.d.ts +32 -0
  82. package/cjs/type/failed.d.ts.map +1 -0
  83. package/cjs/type/failed.js +3 -0
  84. package/cjs/type/failed.js.map +1 -0
  85. package/cjs/undefined/undefined_type.d.ts +4 -12
  86. package/cjs/undefined/undefined_type.d.ts.map +1 -1
  87. package/cjs/union/union_to_intersection.d.ts.map +1 -0
  88. package/cjs/union/union_to_intersection.js.map +1 -0
  89. package/cjs/unknown/unknown_type.d.ts +4 -12
  90. package/cjs/unknown/unknown_type.d.ts.map +1 -1
  91. package/cjs/void/void_type.d.ts +0 -8
  92. package/cjs/void/void_type.d.ts.map +1 -1
  93. package/esm/any/any_or_never.d.ts +0 -2
  94. package/esm/any/any_or_never.d.ts.map +1 -1
  95. package/esm/any/any_type.d.ts +2 -6
  96. package/esm/any/any_type.d.ts.map +1 -1
  97. package/esm/array/array.d.ts +0 -4
  98. package/esm/array/array.d.ts.map +1 -1
  99. package/esm/array/array_index.d.ts +7 -10
  100. package/esm/array/array_index.d.ts.map +1 -1
  101. package/esm/array/array_type.d.ts +0 -8
  102. package/esm/array/array_type.d.ts.map +1 -1
  103. package/esm/bigint/bigint_type.d.ts +4 -12
  104. package/esm/bigint/bigint_type.d.ts.map +1 -1
  105. package/esm/bigint/strict_bigint_type.d.ts +4 -12
  106. package/esm/bigint/strict_bigint_type.d.ts.map +1 -1
  107. package/esm/boolean/boolean_type.d.ts +0 -8
  108. package/esm/boolean/boolean_type.d.ts.map +1 -1
  109. package/esm/boolean/false_type.d.ts +0 -8
  110. package/esm/boolean/false_type.d.ts.map +1 -1
  111. package/esm/boolean/strict_boolean_type.d.ts +0 -8
  112. package/esm/boolean/strict_boolean_type.d.ts.map +1 -1
  113. package/esm/boolean/true_type.d.ts +0 -8
  114. package/esm/boolean/true_type.d.ts.map +1 -1
  115. package/esm/equal/equal.d.ts +4 -5
  116. package/esm/equal/equal.d.ts.map +1 -1
  117. package/esm/function/function_type.d.ts +0 -8
  118. package/esm/function/function_type.d.ts.map +1 -1
  119. package/esm/function/strict_function_type.d.ts +0 -8
  120. package/esm/function/strict_function_type.d.ts.map +1 -1
  121. package/esm/index.d.ts +3 -0
  122. package/esm/index.d.ts.map +1 -1
  123. package/esm/index.js.map +1 -1
  124. package/esm/never/never_type.d.ts +2 -10
  125. package/esm/never/never_type.d.ts.map +1 -1
  126. package/esm/nominal/brand.d.ts +7 -5
  127. package/esm/nominal/brand.d.ts.map +1 -1
  128. package/esm/nominal/brand.js +4 -4
  129. package/esm/nominal/brand.js.map +1 -1
  130. package/esm/nominal/{types.d.ts → constants.d.ts} +1 -1
  131. package/esm/nominal/constants.d.ts.map +1 -0
  132. package/esm/nominal/{types.js → constants.js} +1 -1
  133. package/esm/nominal/constants.js.map +1 -0
  134. package/esm/nominal/flavor.d.ts +14 -3
  135. package/esm/nominal/flavor.d.ts.map +1 -1
  136. package/esm/nominal/flavor.js +1 -1
  137. package/esm/nominal/flavor.js.map +1 -1
  138. package/esm/nominal/nominal_match.js +1 -1
  139. package/esm/nominal/nominal_match.js.map +1 -1
  140. package/esm/null/null_type.d.ts +4 -12
  141. package/esm/null/null_type.d.ts.map +1 -1
  142. package/esm/number/integer.d.ts +1 -9
  143. package/esm/number/integer.d.ts.map +1 -1
  144. package/esm/number/negative.d.ts +0 -8
  145. package/esm/number/negative.d.ts.map +1 -1
  146. package/esm/number/number_type.d.ts +0 -8
  147. package/esm/number/number_type.d.ts.map +1 -1
  148. package/esm/number/numeric_type.d.ts +0 -8
  149. package/esm/number/numeric_type.d.ts.map +1 -1
  150. package/esm/number/positive.d.ts +1 -9
  151. package/esm/number/positive.d.ts.map +1 -1
  152. package/esm/number/strict_number_type.d.ts +4 -12
  153. package/esm/number/strict_number_type.d.ts.map +1 -1
  154. package/esm/object/object_type.d.ts +1 -9
  155. package/esm/object/object_type.d.ts.map +1 -1
  156. package/esm/string/strict_string_type.d.ts +14 -19
  157. package/esm/string/strict_string_type.d.ts.map +1 -1
  158. package/esm/string/string.d.ts +24 -0
  159. package/esm/string/string.d.ts.map +1 -0
  160. package/esm/string/string.js +2 -0
  161. package/esm/string/string.js.map +1 -0
  162. package/esm/string/string_plus.d.ts +27 -0
  163. package/esm/string/string_plus.d.ts.map +1 -0
  164. package/esm/string/string_plus.js +2 -0
  165. package/esm/string/string_plus.js.map +1 -0
  166. package/esm/string/string_type.d.ts +4 -12
  167. package/esm/string/string_type.d.ts.map +1 -1
  168. package/esm/symbol/symbol_type.d.ts +5 -15
  169. package/esm/symbol/symbol_type.d.ts.map +1 -1
  170. package/esm/tuple/tuple_type.d.ts +0 -8
  171. package/esm/tuple/tuple_type.d.ts.map +1 -1
  172. package/esm/type/failed.d.ts +32 -0
  173. package/esm/type/failed.d.ts.map +1 -0
  174. package/esm/type/failed.js +2 -0
  175. package/esm/type/failed.js.map +1 -0
  176. package/esm/undefined/undefined_type.d.ts +4 -12
  177. package/esm/undefined/undefined_type.d.ts.map +1 -1
  178. package/esm/union/union_to_intersection.d.ts.map +1 -0
  179. package/esm/union/union_to_intersection.js.map +1 -0
  180. package/esm/unknown/unknown_type.d.ts +4 -12
  181. package/esm/unknown/unknown_type.d.ts.map +1 -1
  182. package/esm/void/void_type.d.ts +0 -8
  183. package/esm/void/void_type.d.ts.map +1 -1
  184. package/package.json +6 -6
  185. package/ts/any/any_or_never.ts +0 -2
  186. package/ts/any/any_type.ts +2 -6
  187. package/ts/array/array.ts +0 -4
  188. package/ts/array/array_index.ts +7 -10
  189. package/ts/array/array_type.ts +0 -8
  190. package/ts/assertion/readme.md +1 -2
  191. package/ts/bigint/bigint_type.ts +4 -12
  192. package/ts/bigint/strict_bigint_type.ts +4 -12
  193. package/ts/boolean/boolean_type.ts +0 -8
  194. package/ts/boolean/false_type.ts +0 -8
  195. package/ts/boolean/strict_boolean_type.ts +0 -8
  196. package/ts/boolean/true_type.ts +0 -8
  197. package/ts/equal/equal.ts +9 -5
  198. package/ts/equal/readme.md +3 -0
  199. package/ts/function/function_type.ts +0 -8
  200. package/ts/function/strict_function_type.ts +0 -8
  201. package/ts/index.ts +4 -0
  202. package/ts/never/never_type.ts +2 -10
  203. package/ts/nominal/brand.ts +15 -7
  204. package/ts/nominal/flavor.ts +17 -2
  205. package/ts/nominal/nominal_match.ts +1 -1
  206. package/ts/null/null_type.ts +4 -12
  207. package/ts/number/integer.ts +1 -9
  208. package/ts/number/negative.ts +0 -8
  209. package/ts/number/number_type.ts +0 -8
  210. package/ts/number/numeric_type.ts +0 -8
  211. package/ts/number/positive.ts +1 -9
  212. package/ts/number/strict_number_type.ts +4 -12
  213. package/ts/object/object_type.ts +1 -9
  214. package/ts/string/readme.md +5 -0
  215. package/ts/string/strict_string_type.ts +15 -19
  216. package/ts/string/string.ts +36 -0
  217. package/ts/string/string_plus.ts +33 -0
  218. package/ts/string/string_type.ts +4 -12
  219. package/ts/symbol/symbol_type.ts +5 -17
  220. package/ts/tuple/tuple_type.ts +0 -8
  221. package/ts/type/failed.ts +32 -0
  222. package/ts/type/readme.md +22 -0
  223. package/ts/undefined/undefined_type.ts +4 -12
  224. package/ts/unknown/unknown_type.ts +4 -12
  225. package/ts/void/void_type.ts +0 -8
  226. package/cjs/nominal/types.d.ts.map +0 -1
  227. package/cjs/nominal/types.js.map +0 -1
  228. package/cjs/union_to_intersection.d.ts.map +0 -1
  229. package/cjs/union_to_intersection.js.map +0 -1
  230. package/esm/nominal/types.d.ts.map +0 -1
  231. package/esm/nominal/types.js.map +0 -1
  232. package/esm/union_to_intersection.d.ts.map +0 -1
  233. package/esm/union_to_intersection.js.map +0 -1
  234. /package/cjs/{union_to_intersection.d.ts → union/union_to_intersection.d.ts} +0 -0
  235. /package/cjs/{union_to_intersection.js → union/union_to_intersection.js} +0 -0
  236. /package/esm/{union_to_intersection.d.ts → union/union_to_intersection.d.ts} +0 -0
  237. /package/esm/{union_to_intersection.js → union/union_to_intersection.js} +0 -0
  238. /package/ts/nominal/{types.ts → constants.ts} +0 -0
  239. /package/ts/{union_to_intersection.ts → union/union_to_intersection.ts} +0 -0
@@ -4,8 +4,6 @@ import type { StrictNumberType } from '../number/strict_number_type.js';
4
4
  * Check if the type `T` is an array and not a tuple.
5
5
  *
6
6
  * ```ts
7
- * import type { ArrayType } from 'type-plus'
8
- *
9
7
  * type R = ArrayType<number[]> // number[]
10
8
  *
11
9
  * type R = ArrayType<[1]> // never
@@ -18,8 +16,6 @@ export type ArrayType<T, Then = T, Else = never> = IsNever<T, Else, [
18
16
  * Check if the type `T` is not an array.
19
17
  *
20
18
  * ```ts
21
- * import type { NotArrayType } from 'type-plus'
22
- *
23
19
  * type R = NotArrayType<number[]> // never
24
20
  *
25
21
  * type R = NotArrayType<number> // number
@@ -31,8 +27,6 @@ export type NotArrayType<T, Then = T, Else = never> = ArrayType<T, Else, Then>;
31
27
  * Is `T` an array?
32
28
  *
33
29
  * ```ts
34
- * import type { IsArray } from 'type-plus'
35
- *
36
30
  * type R = IsArray<number[]> // true
37
31
  *
38
32
  * type R = IsArray<number> // false
@@ -44,8 +38,6 @@ export type IsArray<T, Then = true, Else = false> = ArrayType<T, Then, Else>;
44
38
  * Is `T` not an array?
45
39
  *
46
40
  * ```ts
47
- * import type { IsNotArray } from 'type-plus'
48
- *
49
41
  * type R = IsNotArray<number[]> // false
50
42
  *
51
43
  * type R = IsNotArray<number> // true
@@ -1 +1 @@
1
- {"version":3,"file":"array_type.d.ts","sourceRoot":"","sources":["../../ts/array/array_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAEvE;;;;;;;;;;GAUG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,OAAO,CACzD,CAAC,EACD,IAAI,EACJ;IAAC,GAAG,EAAE;CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CACrG,CAAA;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9E;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5E;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
1
+ {"version":3,"file":"array_type.d.ts","sourceRoot":"","sources":["../../ts/array/array_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAEvE;;;;;;;;GAQG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,OAAO,CACzD,CAAC,EACD,IAAI,EACJ;IAAC,GAAG,EAAE;CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CACrG,CAAA;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9E;;;;;;;;;GASG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5E;;;;;;;;;GASG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
@@ -2,9 +2,7 @@ import type { IsAnyOrNever } from '../any/any_or_never.js';
2
2
  /**
3
3
  * Check if the type `T` is exactly `bigint`.
4
4
  *
5
- * ```
6
- * import type { BigintType } from 'type-plus'
7
- *
5
+ * ```ts
8
6
  * type R = BigintType<bigint> // bigint
9
7
  *
10
8
  * type R = BigintType<1n> // never
@@ -17,9 +15,7 @@ export type BigintType<T, Then = T, Else = never> = IsAnyOrNever<T, Else, [T] ex
17
15
  /**
18
16
  * Is the type `T` exactly `bigint`.
19
17
  *
20
- * ```
21
- * import type { IsBigint } from 'type-plus'
22
- *
18
+ * ```ts
23
19
  * type R = IsBigint<bigint> // true
24
20
  *
25
21
  * type R = IsBigint<1n> // false
@@ -32,9 +28,7 @@ export type IsBigint<T, Then = true, Else = false> = BigintType<T, Then, Else>;
32
28
  /**
33
29
  * Check if the type `T` is not exactly `null`.
34
30
  *
35
- * ```
36
- * import type { NotBigintType } from 'type-plus'
37
- *
31
+ * ```ts
38
32
  * type R = NotBigintType<bigint> // never
39
33
  *
40
34
  * type R = NotBigintType<1n> // 1n
@@ -47,9 +41,7 @@ export type NotBigintType<T, Then = T, Else = never> = BigintType<T, Else, Then>
47
41
  /**
48
42
  * Is the type `T` not exactly `null`.
49
43
  *
50
- * ```
51
- * import type { IsNotBigint } from 'type-plus'
52
- *
44
+ * ```ts
53
45
  * type R = IsNotBigint<bigint> // false
54
46
  *
55
47
  * type R = IsNotBigint<1n> // true
@@ -1 +1 @@
1
- {"version":3,"file":"bigint_type.d.ts","sourceRoot":"","sources":["../../ts/bigint/bigint_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAA;AAE7G;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9E;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAEhF;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
1
+ {"version":3,"file":"bigint_type.d.ts","sourceRoot":"","sources":["../../ts/bigint/bigint_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAA;AAE7G;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9E;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAEhF;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,UAAU,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
@@ -2,9 +2,7 @@ import type { IsAnyOrNever } from '../any/any_or_never.js';
2
2
  /**
3
3
  * Check if the type `T` is exactly `bigint`.
4
4
  *
5
- * ```
6
- * import type { StrictBigintType } from 'type-plus'
7
- *
5
+ * ```ts
8
6
  * type R = StrictBigintType<bigint> // bigint
9
7
  *
10
8
  * type R = StrictBigintType<1n> // never
@@ -19,9 +17,7 @@ export type StrictBigintType<T, Then = T, Else = never> = IsAnyOrNever<T, Else,
19
17
  /**
20
18
  * Is the type `T` exactly `bigint`.
21
19
  *
22
- * ```
23
- * import type { IsStrictBigint } from 'type-plus'
24
- *
20
+ * ```ts
25
21
  * type R = IsStrictBigint<bigint> // true
26
22
  *
27
23
  * type R = IsStrictBigint<1n> // false
@@ -34,9 +30,7 @@ export type IsStrictBigint<T, Then = true, Else = false> = StrictBigintType<T, T
34
30
  /**
35
31
  * Check if the type `T` is not exactly `bigint`.
36
32
  *
37
- * ```
38
- * import type { NotStrictBigintType } from 'type-plus'
39
- *
33
+ * ```ts
40
34
  * type R = NotStrictBigintType<bigint> // never
41
35
  *
42
36
  * type R = NotStrictBigintType<1n> // 1n
@@ -49,9 +43,7 @@ export type NotStrictBigintType<T, Then = T, Else = never> = StrictBigintType<T,
49
43
  /**
50
44
  * Is the type `T` not exactly `bigint`.
51
45
  *
52
- * ```
53
- * import type { IsNotStrictBigint } from 'type-plus'
54
- *
46
+ * ```ts
55
47
  * type R = IsNotStrictBigint<bigint> // false
56
48
  *
57
49
  * type R = IsNotStrictBigint<1n> // true
@@ -1 +1 @@
1
- {"version":3,"file":"strict_bigint_type.d.ts","sourceRoot":"","sources":["../../ts/bigint/strict_bigint_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CACrE,CAAC,EACD,IAAI,EACJ;IAAC,MAAM;CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,SAAS,GAAG,MAAM,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CACxG,CAAA;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE1F;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5F;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
1
+ {"version":3,"file":"strict_bigint_type.d.ts","sourceRoot":"","sources":["../../ts/bigint/strict_bigint_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CACrE,CAAC,EACD,IAAI,EACJ;IAAC,MAAM;CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,SAAS,GAAG,MAAM,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CACxG,CAAA;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE1F;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5F;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
@@ -3,8 +3,6 @@ import type { IsAnyOrNever } from '../any/any_or_never.js';
3
3
  * Check if the type `T` is `boolean`, including `true` and `false`.
4
4
  *
5
5
  * ```ts
6
- * import type { BooleanType } from 'type-plus'
7
- *
8
6
  * type R = BooleanType<boolean> // boolean
9
7
  * type R = BooleanType<true> // true
10
8
  * type R = BooleanType<false> // false
@@ -20,8 +18,6 @@ export type BooleanType<T, Then = T, Else = never> = IsAnyOrNever<T, Else, [
20
18
  * Check if the type `T` is not `boolean`, including `true` and `false`.
21
19
  *
22
20
  * ```ts
23
- * import type { NotBooleanType } from 'type-plus'
24
- *
25
21
  * type R = NotBooleanType<boolean> // never
26
22
  * type R = NotBooleanType<true> // never
27
23
  * type R = NotBooleanType<false> // never
@@ -35,8 +31,6 @@ export type NotBooleanType<T, Then = T, Else = never> = BooleanType<T, Else, The
35
31
  * Is the type `T` `boolean`, including `true` and `false`.
36
32
  *
37
33
  * ```ts
38
- * import type { IsBoolean } from 'type-plus'
39
- *
40
34
  * type R = IsBoolean<boolean> // true
41
35
  * type R = IsBoolean<true> // true
42
36
  * type R = IsBoolean<false> // true
@@ -50,8 +44,6 @@ export type IsBoolean<T, Then = true, Else = false> = BooleanType<T, Then, Else>
50
44
  * Is the type `T` not `boolean`, including `true` and `false`.
51
45
  *
52
46
  * ```ts
53
- * import type { IsNotBoolean } from 'type-plus'
54
- *
55
47
  * type R = IsNotBoolean<boolean> // false
56
48
  * type R = IsNotBoolean<true> // false
57
49
  * type R = IsNotBoolean<false> // false
@@ -1 +1 @@
1
- {"version":3,"file":"boolean_type.d.ts","sourceRoot":"","sources":["../../ts/boolean/boolean_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAChE,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,IAAI,CACnC,CAAA;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAElF;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAEhF;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
1
+ {"version":3,"file":"boolean_type.d.ts","sourceRoot":"","sources":["../../ts/boolean/boolean_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAChE,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,IAAI,CACnC,CAAA;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAElF;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAEhF;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,WAAW,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
@@ -3,8 +3,6 @@ import type { IsAnyOrNever } from '../any/any_or_never.js';
3
3
  * Check if the type `T` is exactly `false`.
4
4
  *
5
5
  * ```ts
6
- * import type { FalseType } from 'type-plus'
7
- *
8
6
  * type R = FalseType<false> // false
9
7
  *
10
8
  * type R = FalseType<true> // never
@@ -19,8 +17,6 @@ export type FalseType<T, Then = T, Else = never> = IsAnyOrNever<T, Else, [
19
17
  * Check if the type `T` is not exactly `false`.
20
18
  *
21
19
  * ```ts
22
- * import type { NotFalseType } from 'type-plus'
23
- *
24
20
  * type R = NotFalseType<false> // never
25
21
  *
26
22
  * type R = NotFalseType<true> // true
@@ -32,8 +28,6 @@ export type NotFalseType<T, Then = T, Else = never> = FalseType<T, Else, Then>;
32
28
  * Is the type `T` exactly `false`.
33
29
  *
34
30
  * ```ts
35
- * import type { IsFalse } from 'type-plus'
36
- *
37
31
  * type R = IsFalse<false> // true
38
32
  *
39
33
  * type R = IsFalse<true> // false
@@ -45,8 +39,6 @@ export type IsFalse<T, Then = true, Else = false> = FalseType<T, Then, Else>;
45
39
  * Is the type `T` not exactly `false`.
46
40
  *
47
41
  * ```ts
48
- * import type { IsNotFalse } from 'type-plus'
49
- *
50
42
  * type R = IsNotFalse<false> // false
51
43
  *
52
44
  * type R = IsNotFalse<true> // true
@@ -1 +1 @@
1
- {"version":3,"file":"false_type.d.ts","sourceRoot":"","sources":["../../ts/boolean/false_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAC9D,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;IAAE,KAAK;CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAC3C,CAAA;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9E;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5E;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
1
+ {"version":3,"file":"false_type.d.ts","sourceRoot":"","sources":["../../ts/boolean/false_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;GASG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAC9D,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;IAAE,KAAK;CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAC3C,CAAA;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9E;;;;;;;;;GASG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5E;;;;;;;;;GASG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
@@ -3,8 +3,6 @@ import type { IsAnyOrNever } from '../any/any_or_never.js';
3
3
  * Check if the type `T` is exactly `boolean`.
4
4
  *
5
5
  * ```ts
6
- * import type { StrictBooleanType } from 'type-plus'
7
- *
8
6
  * type R = StrictBooleanType<boolean> // true
9
7
  *
10
8
  * type R = StrictBooleanType<true> // never
@@ -20,8 +18,6 @@ export type StrictBooleanType<T, Then = T, Else = never> = IsAnyOrNever<T, Else,
20
18
  * Check if the type `T` is not exactly `boolean`.
21
19
  *
22
20
  * ```ts
23
- * import type { NotStrictBooleanType } from 'type-plus'
24
- *
25
21
  * type R = NotStrictBooleanType<boolean> // never
26
22
  *
27
23
  * type R = NotStrictBooleanType<true> // true
@@ -34,8 +30,6 @@ export type NotStrictBooleanType<T, Then = T, Else = never> = StrictBooleanType<
34
30
  * Is the type `T` exactly `boolean`.
35
31
  *
36
32
  * ```ts
37
- * import type { IsStrictBoolean } from 'type-plus'
38
- *
39
33
  * type R = IsStrictBoolean<boolean> // true
40
34
  *
41
35
  * type R = IsStrictBoolean<true> // false
@@ -48,8 +42,6 @@ export type IsStrictBoolean<T, Then = true, Else = false> = StrictBooleanType<T,
48
42
  * Is the type `T` not exactly `false`.
49
43
  *
50
44
  * ```ts
51
- * import type { IsNotStrictBoolean } from 'type-plus'
52
- *
53
45
  * type R = IsNotStrictBoolean<boolean> // false
54
46
  *
55
47
  * type R = IsNotStrictBoolean<true> // true
@@ -1 +1 @@
1
- {"version":3,"file":"strict_boolean_type.d.ts","sourceRoot":"","sources":["../../ts/boolean/strict_boolean_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CACtE,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;IAAE,OAAO;CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAC/C,CAAA;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,oBAAoB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,iBAAiB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9F;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,iBAAiB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5F;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,kBAAkB,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,iBAAiB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
1
+ {"version":3,"file":"strict_boolean_type.d.ts","sourceRoot":"","sources":["../../ts/boolean/strict_boolean_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;;GAUG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CACtE,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;IAAE,OAAO;CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAC/C,CAAA;AAED;;;;;;;;;;GAUG;AACH,MAAM,MAAM,oBAAoB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,iBAAiB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9F;;;;;;;;;;GAUG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,iBAAiB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5F;;;;;;;;;;GAUG;AACH,MAAM,MAAM,kBAAkB,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,iBAAiB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
@@ -3,8 +3,6 @@ import type { IsAnyOrNever } from '../any/any_or_never.js';
3
3
  * Check if the type `T` is exactly `true`.
4
4
  *
5
5
  * ```ts
6
- * import type { TrueType } from 'type-plus'
7
- *
8
6
  * type R = TrueType<true> // true
9
7
  *
10
8
  * type R = TrueType<false> // never
@@ -19,8 +17,6 @@ export type TrueType<T, Then = T, Else = never> = IsAnyOrNever<T, Else, [
19
17
  * Check if the type `T` is not exactly `true`.
20
18
  *
21
19
  * ```ts
22
- * import type { NotTrueType } from 'type-plus'
23
- *
24
20
  * type R = NotTrueType<true> // never
25
21
  *
26
22
  * type R = NotTrueType<false> // false
@@ -32,8 +28,6 @@ export type NotTrueType<T, Then = T, Else = never> = TrueType<T, Else, Then>;
32
28
  * Is the type `T` exactly `true`.
33
29
  *
34
30
  * ```ts
35
- * import type { IsTrue } from 'type-plus'
36
- *
37
31
  * type R = IsTrue<true> // true
38
32
  *
39
33
  * type R = IsTrue<false> // false
@@ -45,8 +39,6 @@ export type IsTrue<T, Then = true, Else = false> = TrueType<T, Then, Else>;
45
39
  * Is the type `T` not exactly `true`.
46
40
  *
47
41
  * ```ts
48
- * import type { IsNotTrue } from 'type-plus'
49
- *
50
42
  * type R = IsNotTrue<true> // false
51
43
  *
52
44
  * type R = IsNotTrue<false> // true
@@ -1 +1 @@
1
- {"version":3,"file":"true_type.d.ts","sourceRoot":"","sources":["../../ts/boolean/true_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAC7D,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;IAAE,IAAI;CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CACzC,CAAA;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5E;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE1E;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
1
+ {"version":3,"file":"true_type.d.ts","sourceRoot":"","sources":["../../ts/boolean/true_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;GASG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAC7D,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;IAAE,IAAI;CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CACzC,CAAA;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,WAAW,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5E;;;;;;;;;GASG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE1E;;;;;;;;;GASG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
@@ -11,8 +11,6 @@ type IdentityEqual<A, B, Then, Else> = (<_>() => _ extends (A & _) | _ ? 1 : 2)
11
11
  * Checks `A` and `B` are equal.
12
12
  *
13
13
  * ```ts
14
- * import { type Equal } from 'type-plus'
15
- *
16
14
  * type R = Equal<1, 1> // true
17
15
  * type R = Equal<any, any> // true
18
16
  * type R = Equal<boolean, boolean> // true
@@ -25,7 +23,10 @@ type IdentityEqual<A, B, Then, Else> = (<_>() => _ extends (A & _) | _ ? 1 : 2)
25
23
  * type R = Equal<{ a: 1 }, { a: 1; b: 2 }> // false
26
24
  * ```
27
25
  */
28
- export type Equal<A, B, Then = true, Else = false> = [A, B] extends [B, A] ? BothNever<A, B, Then, Else, BothAny<A, B, Then, Else, IdentityEqual<A, B, Then, And<IsObject<A>, IsObject<B>, IdentityEqual<Properties<A>, Properties<B>, Then, Else>, [
26
+ export type Equal<A, B, Then = true, Else = false> = [A, B] extends [B, A] ? BothNever<A, B, Then, Else, BothAny<A, B, Then, Else, IdentityEqual<A, B, Then, And<IsObject<A>, IsObject<B>, IdentityEqual<Properties<A>, Properties<B>, [
27
+ A,
28
+ B
29
+ ] extends [(...args: infer P1) => any, (...args: infer P2) => any] ? Equal<P1, P2, Then, Else> : Then, Else>, [
29
30
  A,
30
31
  B
31
32
  ] extends [B, A] ? Then : Else>>>> : And<IsSymbol<A>, IsSymbol<B>, Then, Else>;
@@ -33,8 +34,6 @@ export type Equal<A, B, Then = true, Else = false> = [A, B] extends [B, A] ? Bot
33
34
  * Checks `A` and `B` are not equal.
34
35
  *
35
36
  * ```ts
36
- * import { type NotEqual } from 'type-plus'
37
- *
38
37
  * type R = NotEqual<1, 1> // false
39
38
  * type R = NotEqual<any, any> // false
40
39
  * type R = NotEqual<boolean, boolean> // false
@@ -1 +1 @@
1
- {"version":3,"file":"equal.d.ts","sourceRoot":"","sources":["../../ts/equal/equal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAA;AACrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAA;AACvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAExD,KAAK,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,IAAI,GAAG,CAC1C,OAAO,CAAC,CAAC,CAAC,EACV,OAAO,CAAC,CAAC,CAAC,EACV,IAAI,EACJ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,CACrC,CAAA;AAED,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAA;AAEtG,KAAK,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,SAC/F,CAAC,CAAC,GAAG,CAAC,CAAC,GACP,CAAC,GACD,CAAC,GACD,CAAC,GACD,IAAI,GACJ,IAAI,CAAA;AAEP;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GACvE,SAAS,CACT,CAAC,EACD,CAAC,EACD,IAAI,EACJ,IAAI,EACJ,OAAO,CACN,CAAC,EACD,CAAC,EACD,IAAI,EACJ,IAAI,EACJ,aAAa,CACZ,CAAC,EACD,CAAC,EACD,IAAI,EACJ,GAAG,CACF,QAAQ,CAAC,CAAC,CAAC,EACX,QAAQ,CAAC,CAAC,CAAC,EACX,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,EAEvD;IAAC,CAAC;IAAE,CAAC;CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CACnC,CACD,CACD,CACA,GACD,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5C;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
1
+ {"version":3,"file":"equal.d.ts","sourceRoot":"","sources":["../../ts/equal/equal.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,6 @@ import type { IsAnyOrNever } from '../any/any_or_never.js';
3
3
  * Check if `T` is a `Function`.
4
4
  *
5
5
  * ```ts
6
- * import type { FunctionType } from 'type-plus'
7
- *
8
6
  * type R = FunctionType<Function> // Function
9
7
  * type R = FunctionType<() => void> // () => void
10
8
  * type R = FunctionType<(() => void) | { a: 1 }> // (() => void) | { a: 1 }
@@ -21,8 +19,6 @@ export type FunctionType<T, Then = T, Else = never> = IsAnyOrNever<T, Else, [
21
19
  * Is `T` a `Function`.
22
20
  *
23
21
  * ```ts
24
- * import type { IsFunction } from 'type-plus'
25
- *
26
22
  * type R = IsFunction<Function> // Function
27
23
  * type R = IsFunction<() => void> // () => void
28
24
  * type R = IsFunction<(() => void) | { a: 1 }> // (() => void) | { a: 1 }
@@ -37,8 +33,6 @@ export type IsFunction<T, Then = true, Else = false> = FunctionType<T, Then, Els
37
33
  * Check if `T` is not a `Function`.
38
34
  *
39
35
  * ```ts
40
- * import type { NotFunctionType } from 'type-plus'
41
- *
42
36
  * type R = NotFunctionType<Function> // never
43
37
  * type R = NotFunctionType<() => void> // never
44
38
  * type R = NotFunctionType<(() => void) | { a: 1 }> // never
@@ -53,8 +47,6 @@ export type NotFunctionType<T, Then = T, Else = never> = FunctionType<T, Else, T
53
47
  * Is `T` not a `Function`.
54
48
  *
55
49
  * ```ts
56
- * import type { IsNotFunction } from 'type-plus'
57
- *
58
50
  * type R = IsNotFunction<Function> // false
59
51
  * type R = IsNotFunction<() => void> // false
60
52
  * type R = IsNotFunction<(() => void) | { a: 1 }> // false
@@ -1 +1 @@
1
- {"version":3,"file":"function_type.d.ts","sourceRoot":"","sources":["../../ts/function/function_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CACjE,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,IAAI,GAAG,IAAI,CACpC,CAAA;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAElF;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAEpF;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
1
+ {"version":3,"file":"function_type.d.ts","sourceRoot":"","sources":["../../ts/function/function_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CACjE,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,IAAI,GAAG,IAAI,CACpC,CAAA;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAElF;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAEpF;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
@@ -3,8 +3,6 @@ import type { IsAnyOrNever } from '../any/any_or_never.js';
3
3
  * Check if `T` is exactly `Function`.
4
4
  *
5
5
  * ```ts
6
- * import type { StrictFunctionType } from 'type-plus'
7
- *
8
6
  * type R = StrictFunctionType<Function> // Function
9
7
  *
10
8
  * type R = StrictFunctionType<() => void> // never
@@ -19,8 +17,6 @@ export type StrictFunctionType<T, Then = T, Else = never> = IsAnyOrNever<T, Else
19
17
  * Check if `T` is not exactly `Function`.
20
18
  *
21
19
  * ```ts
22
- * import type { NotStrictFunctionType } from 'type-plus'
23
- *
24
20
  * type R = NotStrictFunctionType<Function> // never
25
21
  * type R = NotStrictFunctionType<() => void> // () => void
26
22
  *
@@ -32,8 +28,6 @@ export type NotStrictFunctionType<T, Then = T, Else = never> = StrictFunctionTyp
32
28
  * Is `T` exactly `Function`.
33
29
  *
34
30
  * ```ts
35
- * import type { IsStrictFunction } from 'type-plus'
36
- *
37
31
  * type R = IsStrictFunction<Function> // true
38
32
  *
39
33
  * type R = IsStrictFunction<() => void> // false
@@ -45,8 +39,6 @@ export type IsStrictFunction<T, Then = true, Else = false> = StrictFunctionType<
45
39
  * Is `T` not exactly `Function`.
46
40
  *
47
41
  * ```ts
48
- * import type { IsNotStrictFunction } from 'type-plus'
49
- *
50
42
  * type R = IsNotStrictFunction<Function> // false
51
43
  *
52
44
  * type R = IsNotStrictFunction<() => void> // true
@@ -1 +1 @@
1
- {"version":3,"file":"strict_function_type.d.ts","sourceRoot":"","sources":["../../ts/function/strict_function_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,kBAAkB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CACvE,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;IAAE,QAAQ;CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CACjD,CAAA;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,qBAAqB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,kBAAkB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAEhG;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,kBAAkB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9F;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,kBAAkB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
1
+ {"version":3,"file":"strict_function_type.d.ts","sourceRoot":"","sources":["../../ts/function/strict_function_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAE1D;;;;;;;;;GASG;AACH,MAAM,MAAM,kBAAkB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,YAAY,CACvE,CAAC,EACD,IAAI,EACJ;IAAC,CAAC;IAAE,QAAQ;CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CACjD,CAAA;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,qBAAqB,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,KAAK,IAAI,kBAAkB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAEhG;;;;;;;;;GASG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,kBAAkB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE9F;;;;;;;;;GASG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,kBAAkB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
package/esm/index.d.ts CHANGED
@@ -39,11 +39,14 @@ export * from './predicates/index.js';
39
39
  export type { PrimitiveTypes } from './primitive.js';
40
40
  export * from './promise/index.js';
41
41
  export type { IsNotStrictString, IsStrictString, NotStrictStringType, StrictStringType } from './string/strict_string_type.js';
42
+ export type { StringIncludes, StringSplit } from './string/string.js';
43
+ export type { StringPlus } from './string/string_plus.js';
42
44
  export type { IsNotString, IsString, NotStringType, StringType } from './string/string_type.js';
43
45
  export type { IsNotSymbol, IsSymbol, NotSymbolType, SymbolType } from './symbol/symbol_type.js';
44
46
  export * from './testing/stub.js';
45
47
  export * from './testing/test_type.js';
46
48
  export type { IsNotTuple, IsTuple, NotTupleType, TupleType } from './tuple/tuple_type.js';
49
+ export type { Failed, FailedT } from './type/failed.js';
47
50
  export type { IsNotUndefined, IsUndefined, NotUndefinedType, UndefinedType } from './undefined/undefined_type.js';
48
51
  export type { UnionKeys } from './union_keys.js';
49
52
  export type { IsNotUnknown, IsUnknown, NotUnknownType, UnknownType } from './unknown/unknown_type.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"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"}
package/esm/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAI7D,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAA;AAElD,cAAc,kBAAkB,CAAA;AAChC,cAAc,4BAA4B,CAAA;AAiB1C,cAAc,kBAAkB,CAAA;AAIhC,cAAc,gCAAgC,CAAA;AAQ9C,cAAc,uBAAuB,CAAA;AAcrC,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAIlC,OAAO,KAAK,UAAU,MAAM,yBAAyB,CAAA;AAiBrD,cAAc,mBAAmB,CAAA;AAEjC,cAAc,uBAAuB,CAAA;AAErC,cAAc,oBAAoB,CAAA;AASlC,cAAc,mBAAmB,CAAA;AACjC,cAAc,wBAAwB,CAAA;AAUtC,cAAc,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAI7D,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAA;AAElD,cAAc,kBAAkB,CAAA;AAChC,cAAc,4BAA4B,CAAA;AAiB1C,cAAc,kBAAkB,CAAA;AAIhC,cAAc,gCAAgC,CAAA;AAQ9C,cAAc,uBAAuB,CAAA;AAcrC,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAIlC,OAAO,KAAK,UAAU,MAAM,yBAAyB,CAAA;AAiBrD,cAAc,mBAAmB,CAAA;AAEjC,cAAc,uBAAuB,CAAA;AAErC,cAAc,oBAAoB,CAAA;AAWlC,cAAc,mBAAmB,CAAA;AACjC,cAAc,wBAAwB,CAAA;AAWtC,cAAc,kBAAkB,CAAA"}
@@ -12,8 +12,6 @@ export type Is_Never = Brand<'is_never', symbol>;
12
12
  * If it is not, returns `Not_Never`.
13
13
  *
14
14
  * ```ts
15
- * import type { NeverType } from 'type-plus'
16
- *
17
15
  * type R = NeverType<never> // never
18
16
  *
19
17
  * type R = NeverType<1> // 'not never'
@@ -25,8 +23,6 @@ export type NeverType<T, Then = T, Else = Not_Never> = [T, never] extends [never
25
23
  * If it is not, returns `Is_Never`.
26
24
  *
27
25
  * ```ts
28
- * import type { NotNeverType } from 'type-plus'
29
- *
30
26
  * type R = NotNeverType<1> // 1
31
27
  *
32
28
  * type R = NotNeverType<never> // 'is_never'
@@ -36,9 +32,7 @@ export type NotNeverType<T, Then = T, Else = Is_Never> = NeverType<T, Else, Then
36
32
  /**
37
33
  * Is `T` `never`.
38
34
  *
39
- * ```
40
- * import type { IsNever } from 'type-plus'
41
- *
35
+ * ```ts
42
36
  * type R = IsNever<never> // true
43
37
  *
44
38
  * type R = IsNever<1> // false
@@ -48,9 +42,7 @@ export type IsNever<T, Then = true, Else = false> = NeverType<T, Then, Else>;
48
42
  /**
49
43
  * Is `T` not `never`.
50
44
  *
51
- * ```
52
- * import type { IsNotNever } from 'type-plus'
53
- *
45
+ * ```ts
54
46
  * type R = IsNotNever<1> // true
55
47
  *
56
48
  * type R = IsNotNever<never> // false
@@ -1 +1 @@
1
- {"version":3,"file":"never_type.d.ts","sourceRoot":"","sources":["../../ts/never/never_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAGhD;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;AAElD;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;AAEhD;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,SAAS,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAA;AAElG;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,QAAQ,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAEjF;;;;;;;;;;GAUG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5E;;;;;;;;;GASG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
1
+ {"version":3,"file":"never_type.d.ts","sourceRoot":"","sources":["../../ts/never/never_type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAGhD;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,CAAA;AAElD;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;AAEhD;;;;;;;;;GASG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,SAAS,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,CAAA;AAElG;;;;;;;;;GASG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,QAAQ,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAEjF;;;;;;;;GAQG;AACH,MAAM,MAAM,OAAO,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;AAE5E;;;;;;;GAOG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA"}
@@ -1,15 +1,17 @@
1
1
  import type { Widen } from '../utils/index.js';
2
- import { typeSym, valueSym } from './types.js';
2
+ import { typeSym, valueSym } from './constants.js';
3
3
  /**
4
4
  * Create a "branded" version of a type.
5
5
  * TypeScript won't allow implicit conversion to this type
6
6
  */
7
- export type Brand<B extends string, T> = T extends object ? T & {
8
- [typeSym]: B;
9
- } : {
7
+ export type Brand<B extends string, T = never> = [T] extends [null] | [undefined] | [symbol] | [void] ? Branded<B, T> : Branded<B, T> & T;
8
+ /**
9
+ * A branded type of `B` with value of `T`.
10
+ */
11
+ export interface Branded<B extends string, T> {
10
12
  [typeSym]: B;
11
13
  [valueSym]: T;
12
- };
14
+ }
13
15
  /**
14
16
  * Creates a brand creator with the specified type.
15
17
  */
@@ -1 +1 @@
1
- {"version":3,"file":"brand.d.ts","sourceRoot":"","sources":["../../ts/nominal/brand.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAE9C;;;GAGG;AACH,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS,MAAM,GACtD,CAAC,GAAG;IAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;CAAE,GACpB;IAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;CAAE,CAAA;AAElC;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AACvF;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"brand.d.ts","sourceRoot":"","sources":["../../ts/nominal/brand.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAElD;;;GAGG;AACH,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAClG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,GACb,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAA;AAEpB;;GAEG;AACH,MAAM,WAAW,OAAO,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC;IAC3C,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IACZ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;CACb;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;AACvF;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA"}
@@ -1,15 +1,15 @@
1
1
  // By Drew Colthorp, <https://spin.atomicobject.com/2018/01/15/typescript-flexible-nominal-typing/#comment-604580>
2
2
  // <https://gist.github.com/dcolthorp/aa21cf87d847ae9942106435bf47565d>
3
3
  import { isType } from '../predicates/isType.js';
4
- import { typeSym, valueSym } from './types.js';
5
- export function brand(type, subject) {
4
+ import { typeSym, valueSym } from './constants.js';
5
+ export function brand(typeInput, subject) {
6
6
  if (subject === undefined)
7
7
  return function (subject) {
8
- return brand(type, subject);
8
+ return brand(typeInput, subject);
9
9
  };
10
10
  if (isType(subject, s => typeof s === 'object' && s !== null)) {
11
11
  // if subject is not an object, the branding will exist only in type-level.
12
- subject[typeSym] = type;
12
+ subject[typeSym] = typeInput;
13
13
  }
14
14
  return subject;
15
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"brand.js","sourceRoot":"","sources":["../../ts/nominal/brand.ts"],"names":[],"mappings":"AAAA,kHAAkH;AAClH,uEAAuE;AAEvE,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAEhD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAkB9C,MAAM,UAAU,KAAK,CAAC,IAAY,EAAE,OAAiB;IACpD,IAAI,OAAO,KAAK,SAAS;QACxB,OAAO,UAAa,OAAU;YAC7B,OAAO,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAC5B,CAAC,CAAA;IAEF,IAAI,MAAM,CAAwB,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE;QACrF,2EAA2E;QAC3E,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAA;KACvB;IACD,OAAO,OAAO,CAAA;AACf,CAAC"}
1
+ {"version":3,"file":"brand.js","sourceRoot":"","sources":["../../ts/nominal/brand.ts"],"names":[],"mappings":"AAAA,kHAAkH;AAClH,uEAAuE;AAEvE,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAA;AAEhD,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AA0BlD,MAAM,UAAU,KAAK,CAAC,SAAiB,EAAE,OAAiB;IACzD,IAAI,OAAO,KAAK,SAAS;QACxB,OAAO,UAAa,OAAU;YAC7B,OAAO,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;QACjC,CAAC,CAAA;IAEF,IAAI,MAAM,CAAwB,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC,EAAE;QACrF,2EAA2E;QAC3E,OAAO,CAAC,OAAO,CAAC,GAAG,SAAS,CAAA;KAC5B;IACD,OAAO,OAAO,CAAA;AACf,CAAC"}
@@ -1,3 +1,3 @@
1
1
  export declare const typeSym: unique symbol;
2
2
  export declare const valueSym: unique symbol;
3
- //# sourceMappingURL=types.d.ts.map
3
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../ts/nominal/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,eAAiB,CAAA;AACrC,eAAO,MAAM,QAAQ,eAAkB,CAAA"}
@@ -1,3 +1,3 @@
1
1
  export const typeSym = Symbol('type');
2
2
  export const valueSym = Symbol('value');
3
- //# sourceMappingURL=types.js.map
3
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../ts/nominal/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;AACrC,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA"}