type-plus 8.0.0-beta.2 → 8.0.0-beta.3

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 (395) hide show
  1. package/esm/any/is_any.d.ts.map +1 -1
  2. package/esm/any/is_not_any.d.ts.map +1 -1
  3. package/esm/array/array.at.d.ts.map +1 -1
  4. package/esm/array/array.entries.d.ts +1 -1
  5. package/esm/array/array.entries.d.ts.map +1 -1
  6. package/esm/array/array.find_last.d.ts +1 -1
  7. package/esm/array/array.find_last.d.ts.map +1 -1
  8. package/esm/array/array.reverse.d.ts.map +1 -1
  9. package/esm/array/array.some.d.ts +2 -2
  10. package/esm/array/array.some.d.ts.map +1 -1
  11. package/esm/array/array_plus.common_prop_keys.d.ts.map +1 -1
  12. package/esm/array/array_plus.drop_match.d.ts +1 -1
  13. package/esm/array/array_plus.drop_match.d.ts.map +1 -1
  14. package/esm/array/array_plus.element_match.d.ts +4 -2
  15. package/esm/array/array_plus.element_match.d.ts.map +1 -1
  16. package/esm/array/array_plus.filter.d.ts +4 -4
  17. package/esm/array/array_plus.filter.d.ts.map +1 -1
  18. package/esm/array/array_plus.find.d.ts +1 -1
  19. package/esm/array/array_plus.find.d.ts.map +1 -1
  20. package/esm/array/array_plus.index_at.d.ts.map +1 -1
  21. package/esm/array/array_plus.index_at.js.map +1 -1
  22. package/esm/array/array_plus.is_index_out_of_bound.d.ts.map +1 -1
  23. package/esm/array/array_plus.is_readonly.d.ts.map +1 -1
  24. package/esm/array/array_plus.pad_start.d.ts.map +1 -1
  25. package/esm/array/array_plus.split_at.d.ts +4 -4
  26. package/esm/array/array_plus.split_at.d.ts.map +1 -1
  27. package/esm/array/find_first.d.ts.map +1 -1
  28. package/esm/array/head.d.ts.map +1 -1
  29. package/esm/array/intersect_of_props.d.ts.map +1 -1
  30. package/esm/array/is_array.d.ts +2 -2
  31. package/esm/array/is_array.d.ts.map +1 -1
  32. package/esm/array/is_not_array.d.ts +2 -2
  33. package/esm/array/is_not_array.d.ts.map +1 -1
  34. package/esm/array/last.d.ts.map +1 -1
  35. package/esm/array/loose_array_type.d.ts.map +1 -1
  36. package/esm/array/pad_start.d.ts.map +1 -1
  37. package/esm/array/reverse.d.ts.map +1 -1
  38. package/esm/array/union_of_props.d.ts.map +1 -1
  39. package/esm/assertion/assert_type.js +6 -5
  40. package/esm/assertion/assert_type.js.map +1 -1
  41. package/esm/bigint/cast.d.ts.map +1 -1
  42. package/esm/bigint/is_bigint.d.ts +2 -4
  43. package/esm/bigint/is_bigint.d.ts.map +1 -1
  44. package/esm/bigint/is_bigint_literal.d.ts +2 -4
  45. package/esm/bigint/is_bigint_literal.d.ts.map +1 -1
  46. package/esm/bigint/is_not_bigint.d.ts +2 -4
  47. package/esm/bigint/is_not_bigint.d.ts.map +1 -1
  48. package/esm/bigint/is_not_bigint_literal.d.ts +2 -4
  49. package/esm/bigint/is_not_bigint_literal.d.ts.map +1 -1
  50. package/esm/boolean/is_boolean.d.ts +2 -8
  51. package/esm/boolean/is_boolean.d.ts.map +1 -1
  52. package/esm/boolean/is_false.d.ts.map +1 -1
  53. package/esm/boolean/is_not_boolean.d.ts +2 -8
  54. package/esm/boolean/is_not_boolean.d.ts.map +1 -1
  55. package/esm/boolean/is_not_false.d.ts.map +1 -1
  56. package/esm/boolean/is_not_true.d.ts.map +1 -1
  57. package/esm/boolean/is_true.d.ts.map +1 -1
  58. package/esm/class/isConstructor.js +1 -0
  59. package/esm/class/isConstructor.js.map +1 -1
  60. package/esm/equal/equal.d.ts.map +1 -1
  61. package/esm/equal/identity_equal.d.ts +1 -1
  62. package/esm/equal/identity_equal.d.ts.map +1 -1
  63. package/esm/function/extract_function.d.ts.map +1 -1
  64. package/esm/function/extract_function.js.map +1 -1
  65. package/esm/function/is_not_strict_function.d.ts +1 -1
  66. package/esm/function/is_not_strict_function.d.ts.map +1 -1
  67. package/esm/function/is_strict_function.d.ts.map +1 -1
  68. package/esm/functional/Maybe.d.ts.map +1 -1
  69. package/esm/functional/Maybe.js.map +1 -1
  70. package/esm/functional/compose.d.ts.map +1 -1
  71. package/esm/functional/compose.js.map +1 -1
  72. package/esm/functional/context.d.ts.map +1 -1
  73. package/esm/math/abs.d.ts.map +1 -1
  74. package/esm/math/math_plus.to_negative.d.ts.map +1 -1
  75. package/esm/math/max.d.ts.map +1 -1
  76. package/esm/math/numeric_struct.d.ts.map +1 -1
  77. package/esm/mix_types/box.d.ts.map +1 -1
  78. package/esm/mix_types/is_any_or_never.d.ts.map +1 -1
  79. package/esm/mix_types/merge.d.ts +9 -9
  80. package/esm/mix_types/merge.d.ts.map +1 -1
  81. package/esm/mix_types/merge.js +9 -9
  82. package/esm/mix_types/merge.js.map +1 -1
  83. package/esm/never/is_never.d.ts.map +1 -1
  84. package/esm/never/is_not_never.d.ts.map +1 -1
  85. package/esm/nodejs/isNodeError.d.ts.map +1 -1
  86. package/esm/nominal/brand.d.ts.map +1 -1
  87. package/esm/nominal/brand.js +1 -1
  88. package/esm/nominal/brand.js.map +1 -1
  89. package/esm/nominal/flavor.d.ts.map +1 -1
  90. package/esm/nominal/flavor.js +1 -1
  91. package/esm/nominal/flavor.js.map +1 -1
  92. package/esm/nominal/nominal_match.d.ts.map +1 -1
  93. package/esm/nominal/nominal_match.js.map +1 -1
  94. package/esm/null/is_not_null.d.ts.map +1 -1
  95. package/esm/null/is_null.d.ts.map +1 -1
  96. package/esm/number/cast.d.ts.map +1 -1
  97. package/esm/number/is_not_number.d.ts +2 -4
  98. package/esm/number/is_not_number.d.ts.map +1 -1
  99. package/esm/number/is_not_number_literal.d.ts +2 -4
  100. package/esm/number/is_not_number_literal.d.ts.map +1 -1
  101. package/esm/number/is_number.d.ts +2 -4
  102. package/esm/number/is_number.d.ts.map +1 -1
  103. package/esm/number/is_number_literal.d.ts +2 -4
  104. package/esm/number/is_number_literal.d.ts.map +1 -1
  105. package/esm/numeric/is_integer.d.ts +2 -2
  106. package/esm/numeric/is_integer.d.ts.map +1 -1
  107. package/esm/numeric/is_negative.d.ts +5 -5
  108. package/esm/numeric/is_negative.d.ts.map +1 -1
  109. package/esm/numeric/is_not_integer.d.ts +2 -2
  110. package/esm/numeric/is_not_integer.d.ts.map +1 -1
  111. package/esm/numeric/is_not_negative.d.ts +3 -3
  112. package/esm/numeric/is_not_negative.d.ts.map +1 -1
  113. package/esm/numeric/is_not_positive.d.ts +3 -3
  114. package/esm/numeric/is_not_positive.d.ts.map +1 -1
  115. package/esm/numeric/is_positive.d.ts +3 -3
  116. package/esm/numeric/is_positive.d.ts.map +1 -1
  117. package/esm/numeric/numeric_type.d.ts.map +1 -1
  118. package/esm/object/ANotB.d.ts.map +1 -1
  119. package/esm/object/IsDisjoint.d.ts.map +1 -1
  120. package/esm/object/KeysWithDiffType.d.ts.map +1 -1
  121. package/esm/object/KnownKeys.d.ts.map +1 -1
  122. package/esm/object/RecursiveIntersect.d.ts +1 -1
  123. package/esm/object/RecursiveIntersect.d.ts.map +1 -1
  124. package/esm/object/RecursiveRequired.d.ts.map +1 -1
  125. package/esm/object/SpreadRecord.d.ts.map +1 -1
  126. package/esm/object/facade.d.ts.map +1 -1
  127. package/esm/object/facade.js.map +1 -1
  128. package/esm/object/getField.d.ts.map +1 -1
  129. package/esm/object/getField.js.map +1 -1
  130. package/esm/object/hasKey.js +1 -1
  131. package/esm/object/hasKey.js.map +1 -1
  132. package/esm/object/is_not_object.d.ts +1 -3
  133. package/esm/object/is_not_object.d.ts.map +1 -1
  134. package/esm/object/is_object.d.ts.map +1 -1
  135. package/esm/object/left_join.d.ts.map +1 -1
  136. package/esm/object/merge.d.ts +6 -5
  137. package/esm/object/merge.d.ts.map +1 -1
  138. package/esm/object/omit.d.ts +7 -0
  139. package/esm/object/omit.d.ts.map +1 -1
  140. package/esm/object/omit.js.map +1 -1
  141. package/esm/object/optional_key.d.ts.map +1 -1
  142. package/esm/object/pick.d.ts.map +1 -1
  143. package/esm/object/pick.js.map +1 -1
  144. package/esm/object/recursive_partial.d.ts.map +1 -1
  145. package/esm/object/split.d.ts +1 -7
  146. package/esm/object/split.d.ts.map +1 -1
  147. package/esm/object/split.js +1 -1
  148. package/esm/object/split.js.map +1 -1
  149. package/esm/object/typeOverrideIncompatible.js.map +1 -1
  150. package/esm/predicates/CanAssign.d.ts.map +1 -1
  151. package/esm/predicates/CanAssign.js.map +1 -1
  152. package/esm/predicates/assignable.d.ts.map +1 -1
  153. package/esm/predicates/literal.d.ts.map +1 -1
  154. package/esm/predicates/logical.d.ts.map +1 -1
  155. package/esm/predicates/not_assignable.d.ts.map +1 -1
  156. package/esm/primitive.d.ts.map +1 -1
  157. package/esm/promise/index.d.ts.map +1 -1
  158. package/esm/promise/mapSeries.js +1 -1
  159. package/esm/promise/mapSeries.js.map +1 -1
  160. package/esm/string/$extract_manipulated_string.d.ts +5 -5
  161. package/esm/string/$extract_manipulated_string.d.ts.map +1 -1
  162. package/esm/string/_string_type.d.ts.map +1 -1
  163. package/esm/string/is_not_string.d.ts +2 -4
  164. package/esm/string/is_not_string.d.ts.map +1 -1
  165. package/esm/string/is_not_string_literal.d.ts +4 -8
  166. package/esm/string/is_not_string_literal.d.ts.map +1 -1
  167. package/esm/string/is_not_template_literal.d.ts.map +1 -1
  168. package/esm/string/is_string.d.ts +2 -4
  169. package/esm/string/is_string.d.ts.map +1 -1
  170. package/esm/string/is_string_literal.d.ts +4 -8
  171. package/esm/string/is_string_literal.d.ts.map +1 -1
  172. package/esm/string/is_template_literal.d.ts.map +1 -1
  173. package/esm/string/string.d.ts.map +1 -1
  174. package/esm/string/string_plus.d.ts.map +1 -1
  175. package/esm/symbol/is_not_symbol.d.ts.map +1 -1
  176. package/esm/symbol/is_symbol.d.ts.map +1 -1
  177. package/esm/testing/test_type.d.ts.map +1 -1
  178. package/esm/tuple/common_prop_keys.d.ts.map +1 -1
  179. package/esm/tuple/create_tuple.d.ts.map +1 -1
  180. package/esm/tuple/drop.d.ts.map +1 -1
  181. package/esm/tuple/drop.js +1 -1
  182. package/esm/tuple/drop.js.map +1 -1
  183. package/esm/tuple/is_not_tuple.d.ts +2 -2
  184. package/esm/tuple/is_not_tuple.d.ts.map +1 -1
  185. package/esm/tuple/is_tuple.d.ts +2 -2
  186. package/esm/tuple/is_tuple.d.ts.map +1 -1
  187. package/esm/tuple/tail.d.ts +1 -1
  188. package/esm/tuple/tail.d.ts.map +1 -1
  189. package/esm/tuple/tuple_plus.common_prop_keys.d.ts +1 -1
  190. package/esm/tuple/tuple_plus.common_prop_keys.d.ts.map +1 -1
  191. package/esm/tuple/tuple_plus.drop_match.d.ts.map +1 -1
  192. package/esm/tuple/tuple_plus.filter.d.ts +1 -1
  193. package/esm/tuple/tuple_plus.filter.d.ts.map +1 -1
  194. package/esm/tuple/tuple_plus.find.d.ts +2 -2
  195. package/esm/tuple/tuple_plus.find.d.ts.map +1 -1
  196. package/esm/tuple/tuple_plus.pad_start.d.ts +1 -4
  197. package/esm/tuple/tuple_plus.pad_start.d.ts.map +1 -1
  198. package/esm/type_plus/$equality.d.ts.map +1 -1
  199. package/esm/type_plus/$infer_error.d.ts.map +1 -1
  200. package/esm/type_plus/$merge_options.d.ts.map +1 -1
  201. package/esm/type_plus/$resolve_options.d.ts +1 -1
  202. package/esm/type_plus/$resolve_options.d.ts.map +1 -1
  203. package/esm/type_plus/$special_type.d.ts +1 -7
  204. package/esm/type_plus/$special_type.d.ts.map +1 -1
  205. package/esm/type_plus/$type.d.ts.map +1 -1
  206. package/esm/type_plus/branch/$branch.d.ts.map +1 -1
  207. package/esm/type_plus/branch/$exact.d.ts +4 -1
  208. package/esm/type_plus/branch/$exact.d.ts.map +1 -1
  209. package/esm/type_plus/branch/$input_options.d.ts.map +1 -1
  210. package/esm/type_plus/branch/$is_distributive.d.ts.map +1 -1
  211. package/esm/type_plus/branch/$resolve_branch.d.ts +8 -9
  212. package/esm/type_plus/branch/$resolve_branch.d.ts.map +1 -1
  213. package/esm/type_plus/branch/$select.d.ts +1 -3
  214. package/esm/type_plus/branch/$select.d.ts.map +1 -1
  215. package/esm/type_plus/branch/$select_invert.d.ts +1 -3
  216. package/esm/type_plus/branch/$select_invert.d.ts.map +1 -1
  217. package/esm/type_plus/branch/$select_invert_strict.d.ts +1 -4
  218. package/esm/type_plus/branch/$select_invert_strict.d.ts.map +1 -1
  219. package/esm/type_plus/branch/$select_strict.d.ts +1 -4
  220. package/esm/type_plus/branch/$select_strict.d.ts.map +1 -1
  221. package/esm/type_plus/branch/$selection.d.ts.map +1 -1
  222. package/esm/type_plus/branch/$selection_options.d.ts.map +1 -1
  223. package/esm/undefined/has_undefined.d.ts +3 -1
  224. package/esm/undefined/has_undefined.d.ts.map +1 -1
  225. package/esm/undefined/is_not_undefined.d.ts.map +1 -1
  226. package/esm/undefined/is_undefined.d.ts.map +1 -1
  227. package/esm/union/union.d.ts.map +1 -1
  228. package/esm/union/union_to_intersection.d.ts.map +1 -1
  229. package/esm/union/union_to_intersection.js.map +1 -1
  230. package/esm/unknown/is_not_unknown.d.ts.map +1 -1
  231. package/esm/unknown/is_unknown.d.ts.map +1 -1
  232. package/esm/unknown/not_unknown_or.d.ts.map +1 -1
  233. package/esm/unknown/unknown.d.ts.map +1 -1
  234. package/esm/utils/index.d.ts.map +1 -1
  235. package/esm/void/is_not_void.d.ts.map +1 -1
  236. package/esm/void/is_void.d.ts.map +1 -1
  237. package/package.json +3 -4
  238. package/src/any/is_any.ts +8 -8
  239. package/src/any/is_not_any.ts +8 -8
  240. package/src/array/array.at.ts +22 -19
  241. package/src/array/array.entries.ts +3 -3
  242. package/src/array/array.find_last.ts +6 -6
  243. package/src/array/array.reverse.ts +3 -2
  244. package/src/array/array.some.ts +4 -4
  245. package/src/array/array_plus.common_prop_keys.ts +5 -6
  246. package/src/array/array_plus.drop_match.ts +7 -7
  247. package/src/array/array_plus.element_match.ts +25 -22
  248. package/src/array/array_plus.filter.ts +11 -12
  249. package/src/array/array_plus.find.ts +9 -11
  250. package/src/array/array_plus.index_at.ts +29 -35
  251. package/src/array/array_plus.is_index_out_of_bound.ts +1 -1
  252. package/src/array/array_plus.is_readonly.ts +17 -21
  253. package/src/array/array_plus.pad_start.ts +3 -7
  254. package/src/array/array_plus.split_at.ts +17 -19
  255. package/src/array/find_first.ts +6 -5
  256. package/src/array/head.ts +9 -8
  257. package/src/array/intersect_of_props.ts +5 -5
  258. package/src/array/is_array.ts +31 -32
  259. package/src/array/is_not_array.ts +32 -32
  260. package/src/array/last.ts +14 -9
  261. package/src/array/loose_array_type.ts +2 -2
  262. package/src/array/pad_start.ts +1 -3
  263. package/src/array/reverse.ts +8 -8
  264. package/src/array/union_of_props.ts +2 -2
  265. package/src/assertion/assert_type.ts +5 -3
  266. package/src/bigint/cast.ts +2 -2
  267. package/src/bigint/is_bigint.ts +17 -20
  268. package/src/bigint/is_bigint_literal.ts +12 -14
  269. package/src/bigint/is_not_bigint.ts +14 -16
  270. package/src/bigint/is_not_bigint_literal.ts +17 -16
  271. package/src/boolean/is_boolean.ts +48 -36
  272. package/src/boolean/is_false.ts +5 -3
  273. package/src/boolean/is_not_boolean.ts +23 -25
  274. package/src/boolean/is_not_false.ts +5 -3
  275. package/src/boolean/is_not_true.ts +5 -3
  276. package/src/boolean/is_true.ts +5 -3
  277. package/src/class/isConstructor.ts +1 -1
  278. package/src/equal/equal.ts +22 -27
  279. package/src/equal/identity_equal.ts +5 -3
  280. package/src/function/extract_function.ts +1 -3
  281. package/src/function/is_not_strict_function.ts +12 -12
  282. package/src/function/is_strict_function.ts +12 -14
  283. package/src/functional/Maybe.ts +1 -3
  284. package/src/functional/compose.ts +2 -4
  285. package/src/functional/context.ts +1 -1
  286. package/src/index.ts +0 -1
  287. package/src/math/abs.ts +18 -8
  288. package/src/math/math_plus.to_negative.ts +6 -6
  289. package/src/math/max.ts +2 -2
  290. package/src/math/numeric_struct.ts +225 -231
  291. package/src/mix_types/box.ts +34 -37
  292. package/src/mix_types/is_any_or_never.ts +6 -6
  293. package/src/mix_types/merge.ts +24 -28
  294. package/src/never/is_never.ts +13 -10
  295. package/src/never/is_not_never.ts +13 -10
  296. package/src/nodejs/isNodeError.ts +13 -13
  297. package/src/nominal/brand.ts +3 -4
  298. package/src/nominal/flavor.ts +3 -4
  299. package/src/nominal/nominal_match.ts +3 -10
  300. package/src/null/is_not_null.ts +5 -4
  301. package/src/null/is_null.ts +9 -8
  302. package/src/number/cast.ts +6 -6
  303. package/src/number/is_not_number.ts +15 -17
  304. package/src/number/is_not_number_literal.ts +17 -16
  305. package/src/number/is_number.ts +15 -17
  306. package/src/number/is_number_literal.ts +12 -14
  307. package/src/numeric/is_integer.ts +33 -27
  308. package/src/numeric/is_negative.ts +23 -23
  309. package/src/numeric/is_not_integer.ts +31 -26
  310. package/src/numeric/is_not_negative.ts +19 -19
  311. package/src/numeric/is_not_positive.ts +19 -19
  312. package/src/numeric/is_positive.ts +21 -21
  313. package/src/numeric/numeric_plus.ts +0 -1
  314. package/src/numeric/numeric_type.ts +0 -1
  315. package/src/object/ANotB.ts +2 -2
  316. package/src/object/IsDisjoint.ts +1 -4
  317. package/src/object/KeysWithDiffType.ts +2 -2
  318. package/src/object/KnownKeys.ts +7 -7
  319. package/src/object/RecursiveIntersect.ts +8 -8
  320. package/src/object/RecursiveRequired.ts +2 -2
  321. package/src/object/SpreadRecord.ts +1 -4
  322. package/src/object/facade.ts +1 -9
  323. package/src/object/getField.ts +1 -4
  324. package/src/object/hasKey.ts +1 -1
  325. package/src/object/is_not_object.ts +23 -16
  326. package/src/object/is_object.ts +23 -15
  327. package/src/object/left_join.ts +2 -2
  328. package/src/object/merge.ts +53 -72
  329. package/src/object/omit.ts +16 -25
  330. package/src/object/optional_key.ts +1 -4
  331. package/src/object/pick.ts +8 -19
  332. package/src/object/recursive_partial.ts +6 -6
  333. package/src/object/split.ts +3 -14
  334. package/src/object/typeOverrideIncompatible.ts +3 -3
  335. package/src/predicates/CanAssign.ts +9 -5
  336. package/src/predicates/assignable.ts +23 -24
  337. package/src/predicates/literal.ts +8 -8
  338. package/src/predicates/logical.ts +4 -4
  339. package/src/predicates/not_assignable.ts +23 -22
  340. package/src/primitive.ts +1 -10
  341. package/src/promise/index.ts +1 -1
  342. package/src/promise/mapSeries.ts +1 -1
  343. package/src/string/$extract_manipulated_string.ts +25 -20
  344. package/src/string/_string_type.ts +6 -6
  345. package/src/string/is_not_string.ts +13 -15
  346. package/src/string/is_not_string_literal.ts +29 -34
  347. package/src/string/is_not_template_literal.ts +18 -21
  348. package/src/string/is_string.ts +17 -20
  349. package/src/string/is_string_literal.ts +29 -34
  350. package/src/string/is_template_literal.ts +18 -20
  351. package/src/string/string.ts +2 -2
  352. package/src/string/string_plus.ts +6 -7
  353. package/src/symbol/is_not_symbol.ts +5 -3
  354. package/src/symbol/is_symbol.ts +5 -3
  355. package/src/testing/test_type.ts +89 -89
  356. package/src/tuple/common_prop_keys.ts +2 -5
  357. package/src/tuple/create_tuple.ts +18 -18
  358. package/src/tuple/drop.ts +20 -22
  359. package/src/tuple/is_not_tuple.ts +19 -21
  360. package/src/tuple/is_tuple.ts +23 -26
  361. package/src/tuple/tail.ts +5 -3
  362. package/src/tuple/tuple_plus.common_prop_keys.ts +6 -12
  363. package/src/tuple/tuple_plus.drop_match.ts +11 -11
  364. package/src/tuple/tuple_plus.filter.ts +5 -12
  365. package/src/tuple/tuple_plus.find.ts +14 -24
  366. package/src/tuple/tuple_plus.pad_start.ts +12 -27
  367. package/src/type_plus/$equality.ts +1 -3
  368. package/src/type_plus/$infer_error.ts +3 -1
  369. package/src/type_plus/$merge_options.ts +3 -4
  370. package/src/type_plus/$resolve_options.ts +6 -5
  371. package/src/type_plus/$special_type.ts +7 -5
  372. package/src/type_plus/$type.ts +3 -3
  373. package/src/type_plus/branch/$branch.ts +1 -2
  374. package/src/type_plus/branch/$exact.ts +9 -5
  375. package/src/type_plus/branch/$input_options.ts +1 -2
  376. package/src/type_plus/branch/$is_distributive.ts +7 -4
  377. package/src/type_plus/branch/$resolve_branch.ts +29 -39
  378. package/src/type_plus/branch/$select.ts +15 -16
  379. package/src/type_plus/branch/$select_invert.ts +11 -16
  380. package/src/type_plus/branch/$select_invert_strict.ts +14 -19
  381. package/src/type_plus/branch/$select_strict.ts +11 -13
  382. package/src/type_plus/branch/$selection.ts +8 -9
  383. package/src/type_plus/branch/$selection_options.ts +3 -3
  384. package/src/undefined/has_undefined.ts +4 -3
  385. package/src/undefined/is_not_undefined.ts +9 -9
  386. package/src/undefined/is_undefined.ts +9 -8
  387. package/src/union/union.ts +1 -4
  388. package/src/union/union_to_intersection.ts +1 -3
  389. package/src/unknown/is_not_unknown.ts +8 -8
  390. package/src/unknown/is_unknown.ts +8 -8
  391. package/src/unknown/not_unknown_or.ts +7 -3
  392. package/src/unknown/unknown.ts +0 -1
  393. package/src/utils/index.ts +17 -17
  394. package/src/void/is_not_void.ts +14 -14
  395. package/src/void/is_void.ts +14 -14
@@ -35,8 +35,8 @@ export type SplitAt<
35
35
  > = IsArray<
36
36
  A,
37
37
  {
38
- exact: true,
39
- $then: [A, A],
38
+ exact: true
39
+ $then: [A, A]
40
40
  $else: SplitAt._<A, [], [], IndexAt._<A, Index>, DeleteCount, Insert>
41
41
  }
42
42
  >
@@ -48,32 +48,30 @@ export namespace SplitAt {
48
48
  C extends readonly unknown[],
49
49
  Index extends number,
50
50
  DeleteCount,
51
- Insert extends readonly unknown[],
51
+ Insert extends readonly unknown[]
52
52
  > = 0 extends A['length']
53
- ? IsTuple<Insert, { $then: [[...Insert, ...B], C], $else: [B, C] }>
54
- : (Index extends B['length']
53
+ ? IsTuple<Insert, { $then: [[...Insert, ...B], C]; $else: [B, C] }>
54
+ : Index extends B['length']
55
55
  ? IsNever<
56
- DeleteCount,
57
- {
58
- $then: [B, A],
59
- $else: _D<A, B, C, DeleteCount, Insert>
60
- }>
61
- : (A extends readonly [infer Head, ...infer Tail]
56
+ DeleteCount,
57
+ {
58
+ $then: [B, A]
59
+ $else: _D<A, B, C, DeleteCount, Insert>
60
+ }
61
+ >
62
+ : A extends readonly [infer Head, ...infer Tail]
62
63
  ? _<Tail, [...B, Head], [], Index, DeleteCount, Insert>
63
- : 'unexpected: A does not extends [Head, ...Tail]'))
64
+ : 'unexpected: A does not extends [Head, ...Tail]'
64
65
 
65
66
  export type _D<
66
67
  A extends readonly unknown[],
67
68
  B extends readonly unknown[],
68
69
  C extends readonly unknown[],
69
70
  DeleteCount,
70
- Insert extends readonly unknown[],
71
+ Insert extends readonly unknown[]
71
72
  > = DeleteCount extends C['length']
72
- ? IsTuple<Insert, { $then: [[...B, ...Insert, ...A], C], $else: [[...B, ...A], C] }>
73
- : (A extends readonly [infer Head, ...infer Tail]
73
+ ? IsTuple<Insert, { $then: [[...B, ...Insert, ...A], C]; $else: [[...B, ...A], C] }>
74
+ : A extends readonly [infer Head, ...infer Tail]
74
75
  ? _D<Tail, B, [...C, Head], DeleteCount, Insert>
75
- : IsTuple<Insert, { $then: [[...Insert, ...B], C], $else: [B, C] }>
76
- )
77
-
76
+ : IsTuple<Insert, { $then: [[...Insert, ...B], C]; $else: [B, C] }>
78
77
  }
79
-
@@ -51,22 +51,23 @@ import type { Find as ArrayFind } from './array_plus.find.js'
51
51
  */
52
52
  export type FindFirst<
53
53
  A extends readonly unknown[],
54
- Criteria, Options extends FindFirst.Options = FindFirst.DefaultOptions<Criteria>
54
+ Criteria,
55
+ Options extends FindFirst.Options = FindFirst.DefaultOptions<Criteria>
55
56
  > = IsTuple<
56
57
  A,
57
58
  {
58
- $then: TupleFind<A, Criteria, Options>,
59
+ $then: TupleFind<A, Criteria, Options>
59
60
  $else: ArrayFind<A, Criteria, Options>
60
61
  }
61
62
  >
62
63
 
63
64
  export namespace FindFirst {
64
- export interface Options extends ArrayFind.Options, TupleFind.Options { }
65
+ export interface Options extends ArrayFind.Options, TupleFind.Options {}
65
66
  export interface DefaultOptions<Criteria>
66
- extends ArrayFind.DefaultOptions<Criteria>, TupleFind.DefaultOptions<Criteria> { }
67
+ extends ArrayFind.DefaultOptions<Criteria>,
68
+ TupleFind.DefaultOptions<Criteria> {}
67
69
  }
68
70
 
69
-
70
71
  /**
71
72
  * @deprecated use FindFirst
72
73
  */
package/src/array/head.ts CHANGED
@@ -22,17 +22,18 @@ import type { $Else, $SelectionBranch, $Then } from '../type_plus/branch/$select
22
22
  * @typeParam Options['caseEmptyTuple'] Return type when `T` is `[]`.
23
23
  * Default to `never`.
24
24
  */
25
- export type Head<
26
- T extends readonly unknown[],
27
- Options extends Head.Options = Head.DefaultOptions
28
- > = IsNever<
25
+ export type Head<T extends readonly unknown[], Options extends Head.Options = Head.DefaultOptions> = IsNever<
29
26
  T,
30
27
  $SelectionBranch
31
28
  > extends infer R
32
- ? R extends $Then ? Options['$never']
33
- : R extends $Else ? T['length'] extends 0 ? Options['caseEmptyTuple'] : T[0]
34
- : never : never
35
-
29
+ ? R extends $Then
30
+ ? Options['$never']
31
+ : R extends $Else
32
+ ? T['length'] extends 0
33
+ ? Options['caseEmptyTuple']
34
+ : T[0]
35
+ : never
36
+ : never
36
37
 
37
38
  export namespace Head {
38
39
  export interface Options extends $Never.$Options {
@@ -6,13 +6,13 @@ import type { Tail } from '../tuple/tail.js'
6
6
  *
7
7
  * Gets the intersect of properties of the elements in `A`.
8
8
  */
9
- export type IntersectOfProps<A extends readonly Record<any, unknown>[], P extends KeyTypes> = number extends A['length']
9
+ export type IntersectOfProps<A extends readonly Record<any, unknown>[], P extends KeyTypes> = number extends A['length']
10
10
  ? A[0][P]
11
11
  : A['length'] extends 0
12
- ? never
13
- : A['length'] extends 1
14
- ? A[0][P]
15
- : A[0][P] & IntersectOfProps<Tail<A>, P>
12
+ ? never
13
+ : A['length'] extends 1
14
+ ? A[0][P]
15
+ : A[0][P] & IntersectOfProps<Tail<A>, P>
16
16
 
17
17
  /**
18
18
  * Gets the intersect of properties of the elements in `A`
@@ -60,13 +60,12 @@ import type { $Else, $Then } from '../type_plus/branch/$selection.js'
60
60
  * type R = IsArray<number, IsArray.$Branch> // $Else
61
61
  * ```
62
62
  */
63
- export type IsArray<
63
+ export type IsArray<T, $O extends IsArray.$Options = {}> = $SpecialType<
64
64
  T,
65
- $O extends IsArray.$Options = {}
66
- > = $SpecialType<T,
67
- $MergeOptions<$O,
65
+ $MergeOptions<
66
+ $O,
68
67
  {
69
- $then: $ResolveBranch<T, $O, [$Else]>,
68
+ $then: $ResolveBranch<T, $O, [$Else]>
70
69
  $else: IsArray.$<T, $O>
71
70
  }
72
71
  >
@@ -84,33 +83,33 @@ export namespace IsArray {
84
83
  * This is a type util for building custom types.
85
84
  * It does not check against special types.
86
85
  */
87
- export type $<T, $O extends $UtilOptions> =
88
- $Exact.$IsExact<$O, {
89
- $then: $IsDistributive<$O, {
90
- $then: T extends readonly any[]
91
- ? (
92
- number extends T['length']
93
- ? $ResolveBranch<T, $O, [$Then]>
94
- : $ResolveBranch<T, $O, [$Else]>
95
- )
96
- : $ResolveBranch<T, $O, [$Else]>,
97
- $else: [T] extends [readonly any[]]
98
- ? (
99
- number extends T['length']
100
- ? $ResolveBranch<T, $O, [$Then]>
101
- : $ResolveBranch<T, $O, [$Else]>
102
- )
103
- : $ResolveBranch<T, $O, [$Else]>
104
- }>,
105
- $else: $IsDistributive<$O, {
106
- $then: T extends readonly any[]
107
- ? $ResolveBranch<T, $O, [$Then]>
108
- : $ResolveBranch<T, $O, [$Else]>,
109
- $else: [T] extends readonly [any[]]
110
- ? $ResolveBranch<T, $O, [$Then]>
111
- : $ResolveBranch<T, $O, [$Else]>
112
- }>
113
- }>
86
+ export type $<T, $O extends $UtilOptions> = $Exact.$IsExact<
87
+ $O,
88
+ {
89
+ $then: $IsDistributive<
90
+ $O,
91
+ {
92
+ $then: T extends readonly any[]
93
+ ? number extends T['length']
94
+ ? $ResolveBranch<T, $O, [$Then]>
95
+ : $ResolveBranch<T, $O, [$Else]>
96
+ : $ResolveBranch<T, $O, [$Else]>
97
+ $else: [T] extends [readonly any[]]
98
+ ? number extends T['length']
99
+ ? $ResolveBranch<T, $O, [$Then]>
100
+ : $ResolveBranch<T, $O, [$Else]>
101
+ : $ResolveBranch<T, $O, [$Else]>
102
+ }
103
+ >
104
+ $else: $IsDistributive<
105
+ $O,
106
+ {
107
+ $then: T extends readonly any[] ? $ResolveBranch<T, $O, [$Then]> : $ResolveBranch<T, $O, [$Else]>
108
+ $else: [T] extends readonly [any[]] ? $ResolveBranch<T, $O, [$Then]> : $ResolveBranch<T, $O, [$Else]>
109
+ }
110
+ >
111
+ }
112
+ >
114
113
 
115
114
  export type $UtilOptions = Assignable.$UtilOptions & $Exact.$Options
116
115
  }
@@ -60,12 +60,12 @@ import type { $Else, $Then } from '../type_plus/branch/$selection.js'
60
60
  * type R = IsNotArray<number, IsNotArray.$Branch> // $Then
61
61
  * ```
62
62
  */
63
- export type IsNotArray<T,
64
- $O extends IsNotArray.$Options = {}
65
- > = $SpecialType<T,
66
- $MergeOptions<$O,
63
+ export type IsNotArray<T, $O extends IsNotArray.$Options = {}> = $SpecialType<
64
+ T,
65
+ $MergeOptions<
66
+ $O,
67
67
  {
68
- $then: $ResolveBranch<T, $O, [$Then]>,
68
+ $then: $ResolveBranch<T, $O, [$Then]>
69
69
  $else: IsNotArray.$<T, $O>
70
70
  }
71
71
  >
@@ -82,33 +82,33 @@ export namespace IsNotArray {
82
82
  * This is a type util for building custom types.
83
83
  * It does not check against special types.
84
84
  */
85
- export type $<T, $O extends $UtilOptions> =
86
- $Exact.$IsExact<$O, {
87
- $then: $IsDistributive<$O, {
88
- $then: T extends readonly any[]
89
- ? (
90
- number extends T['length']
91
- ? $ResolveBranch<T, $O, [$Else]>
92
- : $ResolveBranch<T, $O, [$Then]>
93
- )
94
- : $ResolveBranch<T, $O, [$Then]>,
95
- $else: [T] extends [readonly any[]]
96
- ? (
97
- number extends T['length']
98
- ? $ResolveBranch<T, $O, [$Else]>
99
- : $ResolveBranch<T, $O, [$Then]>
100
- )
101
- : $ResolveBranch<T, $O, [$Then]>
102
- }>,
103
- $else: $IsDistributive<$O, {
104
- $then: T extends readonly any[]
105
- ? $ResolveBranch<T, $O, [$Else]>
106
- : $ResolveBranch<T, $O, [$Then]>,
107
- $else: [T] extends readonly [any[]]
108
- ? $ResolveBranch<T, $O, [$Else]>
109
- : $ResolveBranch<T, $O, [$Then]>
110
- }>
111
- }>
85
+ export type $<T, $O extends $UtilOptions> = $Exact.$IsExact<
86
+ $O,
87
+ {
88
+ $then: $IsDistributive<
89
+ $O,
90
+ {
91
+ $then: T extends readonly any[]
92
+ ? number extends T['length']
93
+ ? $ResolveBranch<T, $O, [$Else]>
94
+ : $ResolveBranch<T, $O, [$Then]>
95
+ : $ResolveBranch<T, $O, [$Then]>
96
+ $else: [T] extends [readonly any[]]
97
+ ? number extends T['length']
98
+ ? $ResolveBranch<T, $O, [$Else]>
99
+ : $ResolveBranch<T, $O, [$Then]>
100
+ : $ResolveBranch<T, $O, [$Then]>
101
+ }
102
+ >
103
+ $else: $IsDistributive<
104
+ $O,
105
+ {
106
+ $then: T extends readonly any[] ? $ResolveBranch<T, $O, [$Else]> : $ResolveBranch<T, $O, [$Then]>
107
+ $else: [T] extends readonly [any[]] ? $ResolveBranch<T, $O, [$Else]> : $ResolveBranch<T, $O, [$Then]>
108
+ }
109
+ >
110
+ }
111
+ >
112
112
 
113
113
  export type $UtilOptions = NotAssignable.$UtilOptions & $Exact.$Options
114
114
  }
package/src/array/last.ts CHANGED
@@ -21,15 +21,20 @@ import type { $Else, $SelectionBranch, $Then } from '../type_plus/branch/$select
21
21
  * @typeParam Options['caseEmptyTuple'] Return type when `T` is `[]`.
22
22
  * Default to `never`.
23
23
  */
24
- export type Last<
25
- T extends readonly unknown[],
26
- Options extends Last.Options = Last.DefaultOptions
27
- > = IsNever<T, $SelectionBranch> extends infer R
28
- ? R extends $Then ? Options['$never']
29
- : R extends $Else ? T['length'] extends 0
30
- ? Options['caseEmptyTuple']
31
- : T extends readonly [...unknown[], infer R] ? R : T[0]
32
- : never : never
24
+ export type Last<T extends readonly unknown[], Options extends Last.Options = Last.DefaultOptions> = IsNever<
25
+ T,
26
+ $SelectionBranch
27
+ > extends infer R
28
+ ? R extends $Then
29
+ ? Options['$never']
30
+ : R extends $Else
31
+ ? T['length'] extends 0
32
+ ? Options['caseEmptyTuple']
33
+ : T extends readonly [...unknown[], infer R]
34
+ ? R
35
+ : T[0]
36
+ : never
37
+ : never
33
38
 
34
39
  export namespace Last {
35
40
  export interface Options extends $Never.$Options {
@@ -17,10 +17,10 @@ import type { IsAnyOrNever } from '../mix_types/is_any_or_never.js'
17
17
  *
18
18
  * type R = LooseArrayType<string> // never
19
19
  * ```
20
- */export type LooseArrayType<T, Then = T, Else = never> = IsAnyOrNever<
20
+ */ export type LooseArrayType<T, Then = T, Else = never> = IsAnyOrNever<
21
21
  T,
22
22
  {
23
- $then: Else,
23
+ $then: Else
24
24
  $else: T extends readonly any[] ? Then : Else
25
25
  }
26
26
  >
@@ -29,9 +29,7 @@ export type PadStart<
29
29
  A extends readonly unknown[],
30
30
  MaxLength extends number,
31
31
  PadWith = unknown
32
- > = number extends A['length']
33
- ? PadStartArray<A, MaxLength, PadWith>
34
- : PadStartTuple<A, MaxLength, PadWith>
32
+ > = number extends A['length'] ? PadStartArray<A, MaxLength, PadWith> : PadStartTuple<A, MaxLength, PadWith>
35
33
 
36
34
  /**
37
35
  * @deprecated use PadStart instead
@@ -6,11 +6,11 @@
6
6
  export type Reverse<A extends unknown[]> = number extends A['length']
7
7
  ? A
8
8
  : A['length'] extends 0
9
- ? A
10
- : A['length'] extends 1
11
- ? A
12
- : A extends [any, ...infer T]
13
- ? T extends any[]
14
- ? [...Reverse<T>, A[0]]
15
- : never
16
- : never
9
+ ? A
10
+ : A['length'] extends 1
11
+ ? A
12
+ : A extends [any, ...infer T]
13
+ ? T extends any[]
14
+ ? [...Reverse<T>, A[0]]
15
+ : never
16
+ : never
@@ -7,8 +7,8 @@ import type { Tail } from '../tuple/tail.js'
7
7
  export type UnionOfProps<A extends readonly Record<any, any>[], P extends KeyTypes> = A['length'] extends 0
8
8
  ? never
9
9
  : A['length'] extends 1
10
- ? A[0][P]
11
- : A[0][P] | UnionOfProps<Tail<A>, P>
10
+ ? A[0][P]
11
+ : A[0][P] | UnionOfProps<Tail<A>, P>
12
12
 
13
13
  /**
14
14
  * Gets the union of properties in the element of `A`
@@ -101,7 +101,7 @@ assertType.noError = <S>(subject: Exclude<S, Error>): void => {
101
101
  if (subject instanceof Error) throw TypeError('subject is an Error')
102
102
  }
103
103
 
104
- assertType.isNever = (_subject: never): asserts _subject is never => { }
104
+ assertType.isNever = (_subject: never): asserts _subject is never => {}
105
105
 
106
106
  /**
107
107
  * creates a custom assertion function with standard TypeError.
@@ -109,9 +109,11 @@ assertType.isNever = (_subject: never): asserts _subject is never => { }
109
109
  * thus making it hard to use:
110
110
  * https://github.com/microsoft/TypeScript/issues/41047
111
111
  */
112
- assertType.custom = <T>(validator: (s: T) => boolean): (subject: unknown) => asserts subject is T => (subject) => {
112
+ assertType.custom =
113
+ <T>(validator: (s: T) => boolean): ((subject: unknown) => asserts subject is T) =>
114
+ (subject) => {
113
115
  if (!validator(subject as any)) throw new TypeError(`subject fails to satisfy ${tersify(validator)}`)
114
116
  return
115
117
  }
116
118
 
117
- assertType.as = <T>(_subject: unknown): asserts _subject is T => { }
119
+ assertType.as = <T>(_subject: unknown): asserts _subject is T => {}
@@ -9,5 +9,5 @@
9
9
  export type StringToBigint<S extends string, Fail = never> = S extends `-0n`
10
10
  ? 0n
11
11
  : S extends `${infer N extends bigint}n`
12
- ? N
13
- : Fail
12
+ ? N
13
+ : Fail
@@ -70,15 +70,16 @@ import type { $Else, $Then } from '../type_plus/branch/$selection.js'
70
70
  * type R = IsBigint<string, $SelectionBranch> // $Else
71
71
  * ```
72
72
  */
73
- export type IsBigint<T, $O extends IsBigint.$Options = {}> =
74
- $SpecialType<T,
75
- $MergeOptions<$O,
76
- {
77
- $then: $ResolveBranch<T, $O, [$Else]>,
78
- $else: IsBigint.$<T, $O>
79
- }
80
- >
73
+ export type IsBigint<T, $O extends IsBigint.$Options = {}> = $SpecialType<
74
+ T,
75
+ $MergeOptions<
76
+ $O,
77
+ {
78
+ $then: $ResolveBranch<T, $O, [$Else]>
79
+ $else: IsBigint.$<T, $O>
80
+ }
81
81
  >
82
+ >
82
83
 
83
84
  export namespace IsBigint {
84
85
  export type $Options = $Equality.$Options & $Exact.$Options
@@ -92,23 +93,19 @@ export namespace IsBigint {
92
93
  * This is a type util for building custom types.
93
94
  * It does not check against special types.
94
95
  */
95
- export type $<T, $O extends $UtilOptions> =
96
- $ResolveOptions<[$O['exact'], $Exact.$Default]> extends true
97
- ? $IsDistributive<$O, { $then: _SD<T, $O>, $else: _SN<T, $O> }>
96
+ export type $<T, $O extends $UtilOptions> = $ResolveOptions<[$O['exact'], $Exact.$Default]> extends true
97
+ ? $IsDistributive<$O, { $then: _SD<T, $O>; $else: _SN<T, $O> }>
98
98
  : Assignable.$<T, bigint, $O>
99
99
  export type $UtilOptions = Assignable.$UtilOptions & $Exact.$Options
100
100
 
101
- export type _SD<T, $O extends $Options> =
102
- T extends bigint & infer U
103
- ? (
104
- U extends bigint
101
+ export type _SD<T, $O extends $Options> = T extends bigint & infer U
102
+ ? U extends bigint
105
103
  ? $ResolveBranch<T, $O, [$Else]>
106
104
  : $ResolveBranch<T, $O, [$Then]>
107
- )
108
105
  : $ResolveBranch<T, $O, [$Else]>
109
- export type _SN<T, $O extends $Options> =
110
- [T] extends [bigint & infer U] ?
111
- U extends bigint ? $ResolveBranch<T, $O, [$Else]>
112
- : $ResolveBranch<T, $O, [$Then]>
106
+ export type _SN<T, $O extends $Options> = [T] extends [bigint & infer U]
107
+ ? U extends bigint
108
+ ? $ResolveBranch<T, $O, [$Else]>
109
+ : $ResolveBranch<T, $O, [$Then]>
113
110
  : $ResolveBranch<T, $O, [$Else]>
114
111
  }
@@ -58,10 +58,12 @@ import type { $Else, $Then } from '../type_plus/branch/$selection.js'
58
58
  * type R = IsBigintLiteral<string, $SelectionBranch> // $Else
59
59
  * ```
60
60
  */
61
- export type IsBigintLiteral<T, $O extends IsBigintLiteral.$Options = {}> = $SpecialType<T,
62
- $MergeOptions<$O,
61
+ export type IsBigintLiteral<T, $O extends IsBigintLiteral.$Options = {}> = $SpecialType<
62
+ T,
63
+ $MergeOptions<
64
+ $O,
63
65
  {
64
- $then: $ResolveBranch<T, $O, [$Else]>,
66
+ $then: $ResolveBranch<T, $O, [$Else]>
65
67
  $else: IsBigintLiteral.$<T, $O>
66
68
  }
67
69
  >
@@ -79,22 +81,18 @@ export namespace IsBigintLiteral {
79
81
  * This is a type util for building custom types.
80
82
  * It does not check against special types.
81
83
  */
82
- export type $<T, $O extends $UtilOptions> =
83
- $IsDistributive<$O, { $then: _D<T, $O>, $else: _N<T, $O> }>
84
+ export type $<T, $O extends $UtilOptions> = $IsDistributive<$O, { $then: _D<T, $O>; $else: _N<T, $O> }>
84
85
 
85
86
  export type $UtilOptions = Assignable.$UtilOptions
86
87
 
87
- export type _D<T, $O extends $UtilOptions> =
88
- T extends bigint & infer U
89
- ? (
90
- U extends bigint
88
+ export type _D<T, $O extends $UtilOptions> = T extends bigint & infer U
89
+ ? U extends bigint
91
90
  ? $ResolveBranch<T, $O, [$Then]>
92
91
  : $ResolveBranch<T, $O, [$Else]>
93
- )
94
- : $ResolveBranch<T, $O, [$Else]>
95
- export type _N<T, $O extends $UtilOptions> =
96
- [T] extends [bigint & infer U] ?
97
- U extends bigint ? $ResolveBranch<T, $O, [$Then]>
98
92
  : $ResolveBranch<T, $O, [$Else]>
93
+ export type _N<T, $O extends $UtilOptions> = [T] extends [bigint & infer U]
94
+ ? U extends bigint
95
+ ? $ResolveBranch<T, $O, [$Then]>
96
+ : $ResolveBranch<T, $O, [$Else]>
99
97
  : $ResolveBranch<T, $O, [$Else]>
100
98
  }
@@ -67,10 +67,12 @@ import type { $Else, $Then } from '../type_plus/branch/$selection.js'
67
67
  * type R = IsNotBigint<bigint, $SelectionBranch> // $Else
68
68
  * ```
69
69
  */
70
- export type IsNotBigint<T, $O extends IsNotBigint.$Options = {}> = $SpecialType<T,
71
- $MergeOptions<$O,
70
+ export type IsNotBigint<T, $O extends IsNotBigint.$Options = {}> = $SpecialType<
71
+ T,
72
+ $MergeOptions<
73
+ $O,
72
74
  {
73
- $then: $ResolveBranch<T, $O, [$Then]>,
75
+ $then: $ResolveBranch<T, $O, [$Then]>
74
76
  $else: IsNotBigint.$<T, $O>
75
77
  }
76
78
  >
@@ -88,23 +90,19 @@ export namespace IsNotBigint {
88
90
  * This is a type util for building custom types.
89
91
  * It does not check against special types.
90
92
  */
91
- export type $<T, $O extends $UtilOptions> =
92
- $ResolveOptions<[$O['exact'], false]> extends true
93
- ? $IsDistributive<$O, { $then: _SD<T, $O>, $else: _SN<T, $O> }>
93
+ export type $<T, $O extends $UtilOptions> = $ResolveOptions<[$O['exact'], false]> extends true
94
+ ? $IsDistributive<$O, { $then: _SD<T, $O>; $else: _SN<T, $O> }>
94
95
  : NotAssignable.$<T, bigint, $O>
95
96
  export type $UtilOptions = NotAssignable.$UtilOptions & $Exact.$Options
96
97
 
97
- export type _SD<T, $O extends $Options> =
98
- T extends bigint & infer U
99
- ? (
100
- U extends bigint
98
+ export type _SD<T, $O extends $Options> = T extends bigint & infer U
99
+ ? U extends bigint
100
+ ? $ResolveBranch<T, $O, [$Then]>
101
+ : $ResolveBranch<T, $O, [$Else]>
102
+ : $ResolveBranch<T, $O, [$Then]>
103
+ export type _SN<T, $O extends $Options> = [T] extends [bigint & infer U]
104
+ ? U extends bigint
101
105
  ? $ResolveBranch<T, $O, [$Then]>
102
106
  : $ResolveBranch<T, $O, [$Else]>
103
- )
104
107
  : $ResolveBranch<T, $O, [$Then]>
105
- export type _SN<T, $O extends $Options> = (
106
- [T] extends [bigint & infer U] ?
107
- U extends bigint ? $ResolveBranch<T, $O, [$Then]>
108
- : $ResolveBranch<T, $O, [$Else]>
109
- : $ResolveBranch<T, $O, [$Then]>)
110
108
  }
@@ -56,10 +56,12 @@ import type { $Else, $Then } from '../type_plus/branch/$selection.js'
56
56
  * type R = IsNotBigintLiteral<bigint, $SelectionBranch> // $Then
57
57
  * ```
58
58
  */
59
- export type IsNotBigintLiteral<T, $O extends IsNotBigintLiteral.$Options = {}> = $SpecialType<T,
60
- $MergeOptions<$O,
59
+ export type IsNotBigintLiteral<T, $O extends IsNotBigintLiteral.$Options = {}> = $SpecialType<
60
+ T,
61
+ $MergeOptions<
62
+ $O,
61
63
  {
62
- $then: $ResolveBranch<T, $O, [$Then]>,
64
+ $then: $ResolveBranch<T, $O, [$Then]>
63
65
  $else: IsNotBigintLiteral.$<T, $O>
64
66
  }
65
67
  >
@@ -77,25 +79,24 @@ export namespace IsNotBigintLiteral {
77
79
  * This is a type util for building custom types.
78
80
  * It does not check against special types.
79
81
  */
80
- export type $<T, $O extends $UtilOptions> =
81
- $IsDistributive<$O, {
82
- $then: _D<T, $O>,
82
+ export type $<T, $O extends $UtilOptions> = $IsDistributive<
83
+ $O,
84
+ {
85
+ $then: _D<T, $O>
83
86
  $else: _N<T, $O>
84
- }>
87
+ }
88
+ >
85
89
 
86
90
  export type $UtilOptions = Assignable.$UtilOptions
87
91
 
88
- export type _D<T, $O extends $UtilOptions> =
89
- T extends bigint & infer U
90
- ? (
91
- U extends bigint
92
+ export type _D<T, $O extends $UtilOptions> = T extends bigint & infer U
93
+ ? U extends bigint
92
94
  ? $ResolveBranch<T, $O, [$Else]>
93
95
  : $ResolveBranch<T, $O, [$Then]>
94
- )
95
- : $ResolveBranch<T, $O, [$Then]>
96
- export type _N<T, $O extends $UtilOptions> =
97
- [T] extends [bigint & infer U] ?
98
- U extends bigint ? $ResolveBranch<T, $O, [$Else]>
99
96
  : $ResolveBranch<T, $O, [$Then]>
97
+ export type _N<T, $O extends $UtilOptions> = [T] extends [bigint & infer U]
98
+ ? U extends bigint
99
+ ? $ResolveBranch<T, $O, [$Else]>
100
+ : $ResolveBranch<T, $O, [$Then]>
100
101
  : $ResolveBranch<T, $O, [$Then]>
101
102
  }