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

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 (1020) hide show
  1. package/cjs/any/any.d.ts +49 -0
  2. package/cjs/any/any.d.ts.map +1 -0
  3. package/cjs/any/any.js +3 -0
  4. package/cjs/any/any.js.map +1 -0
  5. package/cjs/any/is_any.d.ts +55 -0
  6. package/cjs/any/is_any.d.ts.map +1 -0
  7. package/cjs/any/is_any.js +3 -0
  8. package/cjs/any/is_any.js.map +1 -0
  9. package/cjs/any/is_not_any.d.ts +55 -0
  10. package/cjs/any/is_not_any.d.ts.map +1 -0
  11. package/cjs/any/is_not_any.js +3 -0
  12. package/cjs/any/is_not_any.js.map +1 -0
  13. package/cjs/array/array.at.d.ts +27 -0
  14. package/cjs/array/array.at.d.ts.map +1 -0
  15. package/cjs/array/array.at.js +3 -0
  16. package/cjs/array/array.at.js.map +1 -0
  17. package/cjs/array/array.entries.d.ts +21 -0
  18. package/cjs/array/array.entries.d.ts.map +1 -0
  19. package/cjs/array/array.entries.js +3 -0
  20. package/cjs/array/array.entries.js.map +1 -0
  21. package/cjs/array/array.find_last.d.ts +22 -0
  22. package/cjs/array/array.find_last.d.ts.map +1 -0
  23. package/cjs/array/array.find_last.js +3 -0
  24. package/cjs/array/array.find_last.js.map +1 -0
  25. package/cjs/array/array.reverse.d.ts +6 -0
  26. package/cjs/array/array.reverse.d.ts.map +1 -0
  27. package/cjs/array/array.reverse.js +3 -0
  28. package/cjs/array/array.reverse.js.map +1 -0
  29. package/cjs/array/array.some.d.ts +33 -0
  30. package/cjs/array/array.some.d.ts.map +1 -0
  31. package/cjs/array/array.some.js +3 -0
  32. package/cjs/array/array.some.js.map +1 -0
  33. package/cjs/array/array_plus.common_prop_keys.d.ts +31 -0
  34. package/cjs/array/array_plus.common_prop_keys.d.ts.map +1 -0
  35. package/cjs/array/array_plus.common_prop_keys.js +3 -0
  36. package/cjs/array/array_plus.common_prop_keys.js.map +1 -0
  37. package/cjs/array/array_plus.concat.d.ts +16 -0
  38. package/cjs/array/array_plus.concat.d.ts.map +1 -0
  39. package/cjs/array/array_plus.concat.js +3 -0
  40. package/cjs/array/array_plus.concat.js.map +1 -0
  41. package/cjs/array/array_plus.d.ts +17 -0
  42. package/cjs/array/array_plus.d.ts.map +1 -0
  43. package/cjs/array/array_plus.drop_match.d.ts +5 -0
  44. package/cjs/array/array_plus.drop_match.d.ts.map +1 -0
  45. package/cjs/array/array_plus.drop_match.js +3 -0
  46. package/cjs/array/array_plus.drop_match.js.map +1 -0
  47. package/cjs/array/array_plus.element_match.d.ts +49 -0
  48. package/cjs/array/array_plus.element_match.d.ts.map +1 -0
  49. package/cjs/array/array_plus.element_match.js +3 -0
  50. package/cjs/array/array_plus.element_match.js.map +1 -0
  51. package/cjs/array/array_plus.filter.d.ts +29 -0
  52. package/cjs/array/array_plus.filter.d.ts.map +1 -0
  53. package/cjs/array/array_plus.filter.js +4 -0
  54. package/cjs/array/array_plus.filter.js.map +1 -0
  55. package/cjs/array/array_plus.find.d.ts +60 -0
  56. package/cjs/array/array_plus.find.d.ts.map +1 -0
  57. package/cjs/array/array_plus.find.js +3 -0
  58. package/cjs/array/array_plus.find.js.map +1 -0
  59. package/cjs/array/array_plus.index_at.d.ts +42 -0
  60. package/cjs/array/array_plus.index_at.d.ts.map +1 -0
  61. package/cjs/array/array_plus.index_at.js +85 -0
  62. package/cjs/array/array_plus.index_at.js.map +1 -0
  63. package/cjs/array/array_plus.is_index_out_of_bound.d.ts +21 -0
  64. package/cjs/array/array_plus.is_index_out_of_bound.d.ts.map +1 -0
  65. package/cjs/array/array_plus.is_index_out_of_bound.js +3 -0
  66. package/cjs/array/array_plus.is_index_out_of_bound.js.map +1 -0
  67. package/cjs/array/array_plus.is_readonly.d.ts +35 -0
  68. package/cjs/array/array_plus.is_readonly.d.ts.map +1 -0
  69. package/cjs/array/array_plus.is_readonly.js +3 -0
  70. package/cjs/array/array_plus.is_readonly.js.map +1 -0
  71. package/cjs/array/array_plus.js +3 -0
  72. package/cjs/array/array_plus.js.map +1 -0
  73. package/cjs/array/array_plus.pad_start.d.ts +5 -0
  74. package/cjs/array/array_plus.pad_start.d.ts.map +1 -0
  75. package/cjs/array/array_plus.pad_start.js +3 -0
  76. package/cjs/array/array_plus.pad_start.js.map +1 -0
  77. package/cjs/array/array_plus.split_at.d.ts +50 -0
  78. package/cjs/array/array_plus.split_at.d.ts.map +1 -0
  79. package/cjs/array/array_plus.split_at.js +3 -0
  80. package/cjs/array/array_plus.split_at.js.map +1 -0
  81. package/cjs/array/filter.d.ts +29 -0
  82. package/cjs/array/filter.d.ts.map +1 -0
  83. package/cjs/array/filter.js +3 -0
  84. package/cjs/array/filter.js.map +1 -0
  85. package/cjs/array/find_first.d.ts +65 -0
  86. package/cjs/array/find_first.d.ts.map +1 -0
  87. package/cjs/array/find_first.js +3 -0
  88. package/cjs/array/find_first.js.map +1 -0
  89. package/cjs/array/head.d.ts +33 -0
  90. package/cjs/array/head.d.ts.map +1 -0
  91. package/cjs/array/head.js +3 -0
  92. package/cjs/array/head.js.map +1 -0
  93. package/cjs/array/intersect_of_props.d.ts +14 -0
  94. package/cjs/array/intersect_of_props.d.ts.map +1 -0
  95. package/cjs/array/intersect_of_props.js +3 -0
  96. package/cjs/array/intersect_of_props.js.map +1 -0
  97. package/cjs/array/is_array.d.ts +89 -0
  98. package/cjs/array/is_array.d.ts.map +1 -0
  99. package/cjs/array/is_array.js +3 -0
  100. package/cjs/array/is_array.js.map +1 -0
  101. package/cjs/array/is_not_array.d.ts +89 -0
  102. package/cjs/array/is_not_array.d.ts.map +1 -0
  103. package/cjs/array/is_not_array.js +3 -0
  104. package/cjs/array/is_not_array.js.map +1 -0
  105. package/cjs/array/last.d.ts +32 -0
  106. package/cjs/array/last.d.ts.map +1 -0
  107. package/cjs/array/last.js +3 -0
  108. package/cjs/array/last.js.map +1 -0
  109. package/cjs/array/literal_array.d.ts +8 -0
  110. package/cjs/array/literal_array.d.ts.map +1 -0
  111. package/cjs/array/literal_array.js +12 -0
  112. package/cjs/array/literal_array.js.map +1 -0
  113. package/cjs/array/loose_array_type.d.ts +65 -0
  114. package/cjs/array/loose_array_type.d.ts.map +1 -0
  115. package/cjs/array/loose_array_type.js +3 -0
  116. package/cjs/array/loose_array_type.js.map +1 -0
  117. package/cjs/array/pad_start.d.ts +32 -0
  118. package/cjs/array/pad_start.d.ts.map +1 -0
  119. package/cjs/array/pad_start.js +3 -0
  120. package/cjs/array/pad_start.js.map +1 -0
  121. package/cjs/array/reduce_while.d.ts +8 -0
  122. package/cjs/array/reduce_while.d.ts.map +1 -0
  123. package/cjs/array/reduce_while.js +20 -0
  124. package/cjs/array/reduce_while.js.map +1 -0
  125. package/cjs/array/reverse.d.ts +7 -0
  126. package/cjs/array/reverse.d.ts.map +1 -0
  127. package/cjs/array/reverse.js +3 -0
  128. package/cjs/array/reverse.js.map +1 -0
  129. package/cjs/array/union_of_props.d.ts +12 -0
  130. package/cjs/array/union_of_props.d.ts.map +1 -0
  131. package/cjs/array/union_of_props.js +3 -0
  132. package/cjs/array/union_of_props.js.map +1 -0
  133. package/cjs/array/union_of_values.d.ts +10 -0
  134. package/cjs/array/union_of_values.d.ts.map +1 -0
  135. package/cjs/array/union_of_values.js +3 -0
  136. package/cjs/array/union_of_values.js.map +1 -0
  137. package/cjs/assertion/assert_type.d.ts +40 -0
  138. package/cjs/assertion/assert_type.d.ts.map +1 -0
  139. package/cjs/assertion/assert_type.js +111 -0
  140. package/cjs/assertion/assert_type.js.map +1 -0
  141. package/cjs/bigint/cast.d.ts +10 -0
  142. package/cjs/bigint/cast.d.ts.map +1 -0
  143. package/cjs/bigint/cast.js +3 -0
  144. package/cjs/bigint/cast.js.map +1 -0
  145. package/cjs/bigint/is_bigint.d.ts +95 -0
  146. package/cjs/bigint/is_bigint.d.ts.map +1 -0
  147. package/cjs/bigint/is_bigint.js +3 -0
  148. package/cjs/bigint/is_bigint.js.map +1 -0
  149. package/cjs/bigint/is_bigint_literal.d.ts +83 -0
  150. package/cjs/bigint/is_bigint_literal.d.ts.map +1 -0
  151. package/cjs/bigint/is_bigint_literal.js +3 -0
  152. package/cjs/bigint/is_bigint_literal.js.map +1 -0
  153. package/cjs/bigint/is_not_bigint.d.ts +92 -0
  154. package/cjs/bigint/is_not_bigint.d.ts.map +1 -0
  155. package/cjs/bigint/is_not_bigint.js +3 -0
  156. package/cjs/bigint/is_not_bigint.js.map +1 -0
  157. package/cjs/bigint/is_not_bigint_literal.d.ts +81 -0
  158. package/cjs/bigint/is_not_bigint_literal.d.ts.map +1 -0
  159. package/cjs/bigint/is_not_bigint_literal.js +3 -0
  160. package/cjs/bigint/is_not_bigint_literal.js.map +1 -0
  161. package/cjs/binary/Bit.d.ts +6 -0
  162. package/cjs/binary/Bit.d.ts.map +1 -0
  163. package/cjs/binary/Bit.js +3 -0
  164. package/cjs/binary/Bit.js.map +1 -0
  165. package/cjs/binary/_binary.d.ts +2 -0
  166. package/cjs/binary/_binary.d.ts.map +1 -0
  167. package/cjs/binary/_binary.js +3 -0
  168. package/cjs/binary/_binary.js.map +1 -0
  169. package/cjs/binary/index.d.ts +3 -0
  170. package/cjs/binary/index.d.ts.map +1 -0
  171. package/cjs/binary/index.js +6 -0
  172. package/cjs/binary/index.js.map +1 -0
  173. package/cjs/boolean/is_boolean.d.ts +85 -0
  174. package/cjs/boolean/is_boolean.d.ts.map +1 -0
  175. package/cjs/boolean/is_boolean.js +3 -0
  176. package/cjs/boolean/is_boolean.js.map +1 -0
  177. package/cjs/boolean/is_false.d.ts +78 -0
  178. package/cjs/boolean/is_false.d.ts.map +1 -0
  179. package/cjs/boolean/is_false.js +3 -0
  180. package/cjs/boolean/is_false.js.map +1 -0
  181. package/cjs/boolean/is_not_boolean.d.ts +85 -0
  182. package/cjs/boolean/is_not_boolean.d.ts.map +1 -0
  183. package/cjs/boolean/is_not_boolean.js +3 -0
  184. package/cjs/boolean/is_not_boolean.js.map +1 -0
  185. package/cjs/boolean/is_not_false.d.ts +79 -0
  186. package/cjs/boolean/is_not_false.d.ts.map +1 -0
  187. package/cjs/boolean/is_not_false.js +3 -0
  188. package/cjs/boolean/is_not_false.js.map +1 -0
  189. package/cjs/boolean/is_not_true.d.ts +80 -0
  190. package/cjs/boolean/is_not_true.d.ts.map +1 -0
  191. package/cjs/boolean/is_not_true.js +3 -0
  192. package/cjs/boolean/is_not_true.js.map +1 -0
  193. package/cjs/boolean/is_true.d.ts +78 -0
  194. package/cjs/boolean/is_true.d.ts.map +1 -0
  195. package/cjs/boolean/is_true.js +3 -0
  196. package/cjs/boolean/is_true.js.map +1 -0
  197. package/cjs/class/AnyConstructor.d.ts +2 -0
  198. package/cjs/class/AnyConstructor.d.ts.map +1 -0
  199. package/cjs/class/AnyConstructor.js +3 -0
  200. package/cjs/class/AnyConstructor.js.map +1 -0
  201. package/cjs/class/index.d.ts +3 -0
  202. package/cjs/class/index.d.ts.map +1 -0
  203. package/cjs/class/index.js +18 -0
  204. package/cjs/class/index.js.map +1 -0
  205. package/cjs/class/isConstructor.d.ts +18 -0
  206. package/cjs/class/isConstructor.d.ts.map +1 -0
  207. package/cjs/class/isConstructor.js +35 -0
  208. package/cjs/class/isConstructor.js.map +1 -0
  209. package/cjs/composable_types.d.ts +9 -0
  210. package/cjs/composable_types.d.ts.map +1 -0
  211. package/cjs/composable_types.js +3 -0
  212. package/cjs/composable_types.js.map +1 -0
  213. package/cjs/equal/equal.d.ts +103 -0
  214. package/cjs/equal/equal.d.ts.map +1 -0
  215. package/cjs/equal/equal.js +3 -0
  216. package/cjs/equal/equal.js.map +1 -0
  217. package/cjs/equal/identity_equal.d.ts +6 -0
  218. package/cjs/equal/identity_equal.d.ts.map +1 -0
  219. package/cjs/equal/identity_equal.js +3 -0
  220. package/cjs/equal/identity_equal.js.map +1 -0
  221. package/cjs/function/any_function.d.ts +2 -0
  222. package/cjs/function/any_function.d.ts.map +1 -0
  223. package/cjs/function/any_function.js +3 -0
  224. package/cjs/function/any_function.js.map +1 -0
  225. package/cjs/function/extract_function.d.ts +24 -0
  226. package/cjs/function/extract_function.d.ts.map +1 -0
  227. package/cjs/function/extract_function.js +12 -0
  228. package/cjs/function/extract_function.js.map +1 -0
  229. package/cjs/function/is_function.d.ts +61 -0
  230. package/cjs/function/is_function.d.ts.map +1 -0
  231. package/cjs/function/is_function.js +3 -0
  232. package/cjs/function/is_function.js.map +1 -0
  233. package/cjs/function/is_not_function.d.ts +73 -0
  234. package/cjs/function/is_not_function.d.ts.map +1 -0
  235. package/cjs/function/is_not_function.js +3 -0
  236. package/cjs/function/is_not_function.js.map +1 -0
  237. package/cjs/function/is_not_strict_function.d.ts +31 -0
  238. package/cjs/function/is_not_strict_function.d.ts.map +1 -0
  239. package/cjs/function/is_not_strict_function.js +3 -0
  240. package/cjs/function/is_not_strict_function.js.map +1 -0
  241. package/cjs/function/is_strict_function.d.ts +31 -0
  242. package/cjs/function/is_strict_function.d.ts.map +1 -0
  243. package/cjs/function/is_strict_function.js +3 -0
  244. package/cjs/function/is_strict_function.js.map +1 -0
  245. package/cjs/functional/ChainFn.d.ts +6 -0
  246. package/cjs/functional/ChainFn.d.ts.map +1 -0
  247. package/cjs/functional/ChainFn.js +3 -0
  248. package/cjs/functional/ChainFn.js.map +1 -0
  249. package/cjs/functional/Maybe.d.ts +13 -0
  250. package/cjs/functional/Maybe.d.ts.map +1 -0
  251. package/cjs/functional/Maybe.js +16 -0
  252. package/cjs/functional/Maybe.js.map +1 -0
  253. package/cjs/functional/compose.d.ts +12 -0
  254. package/cjs/functional/compose.d.ts.map +1 -0
  255. package/cjs/functional/compose.js +16 -0
  256. package/cjs/functional/compose.js.map +1 -0
  257. package/cjs/functional/context.d.ts +40 -0
  258. package/cjs/functional/context.d.ts.map +1 -0
  259. package/cjs/functional/context.js +31 -0
  260. package/cjs/functional/context.js.map +1 -0
  261. package/cjs/functional/index.d.ts +4 -0
  262. package/cjs/functional/index.d.ts.map +1 -0
  263. package/cjs/functional/index.js +19 -0
  264. package/cjs/functional/index.js.map +1 -0
  265. package/cjs/index.d.ts +139 -0
  266. package/cjs/index.d.ts.map +1 -0
  267. package/cjs/index.js +47 -0
  268. package/cjs/index.js.map +1 -0
  269. package/cjs/json.d.ts +12 -0
  270. package/cjs/json.d.ts.map +1 -0
  271. package/cjs/json.js +14 -0
  272. package/cjs/json.js.map +1 -0
  273. package/cjs/math/abs.d.ts +5 -0
  274. package/cjs/math/abs.d.ts.map +1 -0
  275. package/cjs/math/abs.js +3 -0
  276. package/cjs/math/abs.js.map +1 -0
  277. package/cjs/math/add.d.ts +7 -0
  278. package/cjs/math/add.d.ts.map +1 -0
  279. package/cjs/math/add.js +3 -0
  280. package/cjs/math/add.js.map +1 -0
  281. package/cjs/math/greater_than.d.ts +4 -0
  282. package/cjs/math/greater_than.d.ts.map +1 -0
  283. package/cjs/math/greater_than.js +3 -0
  284. package/cjs/math/greater_than.js.map +1 -0
  285. package/cjs/math/index.d.ts +7 -0
  286. package/cjs/math/index.d.ts.map +1 -0
  287. package/cjs/math/index.js +3 -0
  288. package/cjs/math/index.js.map +1 -0
  289. package/cjs/math/math_plus.d.ts +5 -0
  290. package/cjs/math/math_plus.d.ts.map +1 -0
  291. package/cjs/math/math_plus.js +3 -0
  292. package/cjs/math/math_plus.js.map +1 -0
  293. package/cjs/math/math_plus.to_negative.d.ts +13 -0
  294. package/cjs/math/math_plus.to_negative.d.ts.map +1 -0
  295. package/cjs/math/math_plus.to_negative.js +3 -0
  296. package/cjs/math/math_plus.to_negative.js.map +1 -0
  297. package/cjs/math/max.d.ts +4 -0
  298. package/cjs/math/max.d.ts.map +1 -0
  299. package/cjs/math/max.js +3 -0
  300. package/cjs/math/max.js.map +1 -0
  301. package/cjs/math/multiply.d.ts +6 -0
  302. package/cjs/math/multiply.d.ts.map +1 -0
  303. package/cjs/math/multiply.js +3 -0
  304. package/cjs/math/multiply.js.map +1 -0
  305. package/cjs/math/numeric_struct.d.ts +1480 -0
  306. package/cjs/math/numeric_struct.d.ts.map +1 -0
  307. package/cjs/math/numeric_struct.js +3 -0
  308. package/cjs/math/numeric_struct.js.map +1 -0
  309. package/cjs/math/subtract.d.ts +7 -0
  310. package/cjs/math/subtract.d.ts.map +1 -0
  311. package/cjs/math/subtract.js +3 -0
  312. package/cjs/math/subtract.js.map +1 -0
  313. package/cjs/mix_types/box.d.ts +47 -0
  314. package/cjs/mix_types/box.d.ts.map +1 -0
  315. package/cjs/mix_types/box.js +3 -0
  316. package/cjs/mix_types/box.js.map +1 -0
  317. package/cjs/mix_types/exclude.d.ts +19 -0
  318. package/cjs/mix_types/exclude.d.ts.map +1 -0
  319. package/cjs/mix_types/exclude.js +3 -0
  320. package/cjs/mix_types/exclude.js.map +1 -0
  321. package/cjs/mix_types/is_any_or_never.d.ts +28 -0
  322. package/cjs/mix_types/is_any_or_never.d.ts.map +1 -0
  323. package/cjs/mix_types/is_any_or_never.js +3 -0
  324. package/cjs/mix_types/is_any_or_never.js.map +1 -0
  325. package/cjs/mix_types/merge.d.ts +38 -0
  326. package/cjs/mix_types/merge.d.ts.map +1 -0
  327. package/cjs/mix_types/merge.js +17 -0
  328. package/cjs/mix_types/merge.js.map +1 -0
  329. package/cjs/never/is_never.d.ts +59 -0
  330. package/cjs/never/is_never.d.ts.map +1 -0
  331. package/cjs/never/is_never.js +3 -0
  332. package/cjs/never/is_never.js.map +1 -0
  333. package/cjs/never/is_not_never.d.ts +59 -0
  334. package/cjs/never/is_not_never.d.ts.map +1 -0
  335. package/cjs/never/is_not_never.js +3 -0
  336. package/cjs/never/is_not_never.js.map +1 -0
  337. package/cjs/never/never.d.ts +75 -0
  338. package/cjs/never/never.d.ts.map +1 -0
  339. package/cjs/never/never.js +3 -0
  340. package/cjs/never/never.js.map +1 -0
  341. package/cjs/nodejs/index.d.ts +2 -0
  342. package/cjs/nodejs/index.d.ts.map +1 -0
  343. package/cjs/nodejs/index.js +18 -0
  344. package/cjs/nodejs/index.js.map +1 -0
  345. package/cjs/nodejs/isNodeError.d.ts +31 -0
  346. package/cjs/nodejs/isNodeError.d.ts.map +1 -0
  347. package/cjs/nodejs/isNodeError.js +12 -0
  348. package/cjs/nodejs/isNodeError.js.map +1 -0
  349. package/cjs/nominal/brand.d.ts +23 -0
  350. package/cjs/nominal/brand.d.ts.map +1 -0
  351. package/cjs/nominal/brand.js +17 -0
  352. package/cjs/nominal/brand.js.map +1 -0
  353. package/cjs/nominal/constants.d.ts +3 -0
  354. package/cjs/nominal/constants.d.ts.map +1 -0
  355. package/cjs/nominal/constants.js +6 -0
  356. package/cjs/nominal/constants.js.map +1 -0
  357. package/cjs/nominal/flavor.d.ts +31 -0
  358. package/cjs/nominal/flavor.d.ts.map +1 -0
  359. package/cjs/nominal/flavor.js +17 -0
  360. package/cjs/nominal/flavor.js.map +1 -0
  361. package/cjs/nominal/index.d.ts +4 -0
  362. package/cjs/nominal/index.d.ts.map +1 -0
  363. package/cjs/nominal/index.js +20 -0
  364. package/cjs/nominal/index.js.map +1 -0
  365. package/cjs/nominal/nominal_match.d.ts +5 -0
  366. package/cjs/nominal/nominal_match.d.ts.map +1 -0
  367. package/cjs/nominal/nominal_match.js +10 -0
  368. package/cjs/nominal/nominal_match.js.map +1 -0
  369. package/cjs/null/is_not_null.d.ts +71 -0
  370. package/cjs/null/is_not_null.d.ts.map +1 -0
  371. package/cjs/null/is_not_null.js +3 -0
  372. package/cjs/null/is_not_null.js.map +1 -0
  373. package/cjs/null/is_null.d.ts +75 -0
  374. package/cjs/null/is_null.d.ts.map +1 -0
  375. package/cjs/null/is_null.js +3 -0
  376. package/cjs/null/is_null.js.map +1 -0
  377. package/cjs/number/cast.d.ts +10 -0
  378. package/cjs/number/cast.d.ts.map +1 -0
  379. package/cjs/number/cast.js +3 -0
  380. package/cjs/number/cast.js.map +1 -0
  381. package/cjs/number/is_not_number.d.ts +82 -0
  382. package/cjs/number/is_not_number.d.ts.map +1 -0
  383. package/cjs/number/is_not_number.js +3 -0
  384. package/cjs/number/is_not_number.js.map +1 -0
  385. package/cjs/number/is_not_number_literal.d.ts +81 -0
  386. package/cjs/number/is_not_number_literal.d.ts.map +1 -0
  387. package/cjs/number/is_not_number_literal.js +3 -0
  388. package/cjs/number/is_not_number_literal.js.map +1 -0
  389. package/cjs/number/is_number.d.ts +85 -0
  390. package/cjs/number/is_number.d.ts.map +1 -0
  391. package/cjs/number/is_number.js +3 -0
  392. package/cjs/number/is_number.js.map +1 -0
  393. package/cjs/number/is_number_literal.d.ts +83 -0
  394. package/cjs/number/is_number_literal.d.ts.map +1 -0
  395. package/cjs/number/is_number_literal.js +3 -0
  396. package/cjs/number/is_number_literal.js.map +1 -0
  397. package/cjs/number/number_array.d.ts +1 -0
  398. package/cjs/number/number_array.d.ts.map +1 -0
  399. package/cjs/number/number_array.js +16 -0
  400. package/cjs/number/number_array.js.map +1 -0
  401. package/cjs/number/number_plus.d.ts +12 -0
  402. package/cjs/number/number_plus.d.ts.map +1 -0
  403. package/cjs/number/number_plus.js +4 -0
  404. package/cjs/number/number_plus.js.map +1 -0
  405. package/cjs/numeric/cast.d.ts +27 -0
  406. package/cjs/numeric/cast.d.ts.map +1 -0
  407. package/cjs/numeric/cast.js +3 -0
  408. package/cjs/numeric/cast.js.map +1 -0
  409. package/cjs/numeric/is_integer.d.ts +30 -0
  410. package/cjs/numeric/is_integer.d.ts.map +1 -0
  411. package/cjs/numeric/is_integer.js +3 -0
  412. package/cjs/numeric/is_integer.js.map +1 -0
  413. package/cjs/numeric/is_negative.d.ts +35 -0
  414. package/cjs/numeric/is_negative.d.ts.map +1 -0
  415. package/cjs/numeric/is_negative.js +3 -0
  416. package/cjs/numeric/is_negative.js.map +1 -0
  417. package/cjs/numeric/is_not_integer.d.ts +32 -0
  418. package/cjs/numeric/is_not_integer.d.ts.map +1 -0
  419. package/cjs/numeric/is_not_integer.js +3 -0
  420. package/cjs/numeric/is_not_integer.js.map +1 -0
  421. package/cjs/numeric/is_not_negative.d.ts +35 -0
  422. package/cjs/numeric/is_not_negative.d.ts.map +1 -0
  423. package/cjs/numeric/is_not_negative.js +3 -0
  424. package/cjs/numeric/is_not_negative.js.map +1 -0
  425. package/cjs/numeric/is_not_numeric.d.ts +19 -0
  426. package/cjs/numeric/is_not_numeric.d.ts.map +1 -0
  427. package/cjs/numeric/is_not_numeric.js +3 -0
  428. package/cjs/numeric/is_not_numeric.js.map +1 -0
  429. package/cjs/numeric/is_not_positive.d.ts +36 -0
  430. package/cjs/numeric/is_not_positive.d.ts.map +1 -0
  431. package/cjs/numeric/is_not_positive.js +3 -0
  432. package/cjs/numeric/is_not_positive.js.map +1 -0
  433. package/cjs/numeric/is_numeric.d.ts +19 -0
  434. package/cjs/numeric/is_numeric.d.ts.map +1 -0
  435. package/cjs/numeric/is_numeric.js +3 -0
  436. package/cjs/numeric/is_numeric.js.map +1 -0
  437. package/cjs/numeric/is_positive.d.ts +35 -0
  438. package/cjs/numeric/is_positive.d.ts.map +1 -0
  439. package/cjs/numeric/is_positive.js +3 -0
  440. package/cjs/numeric/is_positive.js.map +1 -0
  441. package/cjs/numeric/numeric_plus.d.ts +10 -0
  442. package/cjs/numeric/numeric_plus.d.ts.map +1 -0
  443. package/cjs/numeric/numeric_plus.js +3 -0
  444. package/cjs/numeric/numeric_plus.js.map +1 -0
  445. package/cjs/numeric/numeric_type.d.ts +9 -0
  446. package/cjs/numeric/numeric_type.d.ts.map +1 -0
  447. package/cjs/numeric/numeric_type.js +3 -0
  448. package/cjs/numeric/numeric_type.js.map +1 -0
  449. package/cjs/object/ANotB.d.ts +9 -0
  450. package/cjs/object/ANotB.d.ts.map +1 -0
  451. package/cjs/object/ANotB.js +3 -0
  452. package/cjs/object/ANotB.js.map +1 -0
  453. package/cjs/object/ExcludePropType.d.ts +7 -0
  454. package/cjs/object/ExcludePropType.d.ts.map +1 -0
  455. package/cjs/object/ExcludePropType.js +3 -0
  456. package/cjs/object/ExcludePropType.js.map +1 -0
  457. package/cjs/object/IsDisjoint.d.ts +9 -0
  458. package/cjs/object/IsDisjoint.d.ts.map +1 -0
  459. package/cjs/object/IsDisjoint.js +3 -0
  460. package/cjs/object/IsDisjoint.js.map +1 -0
  461. package/cjs/object/IsRecord.d.ts +2 -0
  462. package/cjs/object/IsRecord.d.ts.map +1 -0
  463. package/cjs/object/IsRecord.js +3 -0
  464. package/cjs/object/IsRecord.js.map +1 -0
  465. package/cjs/object/KeyTypes.d.ts +7 -0
  466. package/cjs/object/KeyTypes.d.ts.map +1 -0
  467. package/cjs/object/KeyTypes.js +3 -0
  468. package/cjs/object/KeyTypes.js.map +1 -0
  469. package/cjs/object/KeyofOptional.d.ts +6 -0
  470. package/cjs/object/KeyofOptional.d.ts.map +1 -0
  471. package/cjs/object/KeyofOptional.js +3 -0
  472. package/cjs/object/KeyofOptional.js.map +1 -0
  473. package/cjs/object/KeysWithDiffType.d.ts +7 -0
  474. package/cjs/object/KeysWithDiffType.d.ts.map +1 -0
  475. package/cjs/object/KeysWithDiffType.js +3 -0
  476. package/cjs/object/KeysWithDiffType.js.map +1 -0
  477. package/cjs/object/KnownKeys.d.ts +7 -0
  478. package/cjs/object/KnownKeys.d.ts.map +1 -0
  479. package/cjs/object/KnownKeys.js +6 -0
  480. package/cjs/object/KnownKeys.js.map +1 -0
  481. package/cjs/object/Partial.d.ts +22 -0
  482. package/cjs/object/Partial.d.ts.map +1 -0
  483. package/cjs/object/Partial.js +3 -0
  484. package/cjs/object/Partial.js.map +1 -0
  485. package/cjs/object/RecursiveIntersect.d.ts +16 -0
  486. package/cjs/object/RecursiveIntersect.d.ts.map +1 -0
  487. package/cjs/object/RecursiveIntersect.js +3 -0
  488. package/cjs/object/RecursiveIntersect.js.map +1 -0
  489. package/cjs/object/RecursiveRequired.d.ts +5 -0
  490. package/cjs/object/RecursiveRequired.d.ts.map +1 -0
  491. package/cjs/object/RecursiveRequired.js +3 -0
  492. package/cjs/object/RecursiveRequired.js.map +1 -0
  493. package/cjs/object/Required.d.ts +6 -0
  494. package/cjs/object/Required.d.ts.map +1 -0
  495. package/cjs/object/Required.js +4 -0
  496. package/cjs/object/Required.js.map +1 -0
  497. package/cjs/object/RequiredKeys.d.ts +7 -0
  498. package/cjs/object/RequiredKeys.d.ts.map +1 -0
  499. package/cjs/object/RequiredKeys.js +3 -0
  500. package/cjs/object/RequiredKeys.js.map +1 -0
  501. package/cjs/object/SpreadRecord.d.ts +3 -0
  502. package/cjs/object/SpreadRecord.d.ts.map +1 -0
  503. package/cjs/object/SpreadRecord.js +3 -0
  504. package/cjs/object/SpreadRecord.js.map +1 -0
  505. package/cjs/object/ValueOf.d.ts +2 -0
  506. package/cjs/object/ValueOf.d.ts.map +1 -0
  507. package/cjs/object/ValueOf.js +3 -0
  508. package/cjs/object/ValueOf.js.map +1 -0
  509. package/cjs/object/any_record.d.ts +3 -0
  510. package/cjs/object/any_record.d.ts.map +1 -0
  511. package/cjs/object/any_record.js +3 -0
  512. package/cjs/object/any_record.js.map +1 -0
  513. package/cjs/object/everyKey.d.ts +3 -0
  514. package/cjs/object/everyKey.d.ts.map +1 -0
  515. package/cjs/object/everyKey.js +7 -0
  516. package/cjs/object/everyKey.js.map +1 -0
  517. package/cjs/object/facade.d.ts +17 -0
  518. package/cjs/object/facade.d.ts.map +1 -0
  519. package/cjs/object/facade.js +26 -0
  520. package/cjs/object/facade.js.map +1 -0
  521. package/cjs/object/filterKey.d.ts +3 -0
  522. package/cjs/object/filterKey.d.ts.map +1 -0
  523. package/cjs/object/filterKey.js +9 -0
  524. package/cjs/object/filterKey.js.map +1 -0
  525. package/cjs/object/findKey.d.ts +3 -0
  526. package/cjs/object/findKey.d.ts.map +1 -0
  527. package/cjs/object/findKey.js +9 -0
  528. package/cjs/object/findKey.js.map +1 -0
  529. package/cjs/object/forEachKey.d.ts +3 -0
  530. package/cjs/object/forEachKey.d.ts.map +1 -0
  531. package/cjs/object/forEachKey.js +7 -0
  532. package/cjs/object/forEachKey.js.map +1 -0
  533. package/cjs/object/getField.d.ts +4 -0
  534. package/cjs/object/getField.d.ts.map +1 -0
  535. package/cjs/object/getField.js +7 -0
  536. package/cjs/object/getField.js.map +1 -0
  537. package/cjs/object/hasKey.d.ts +4 -0
  538. package/cjs/object/hasKey.d.ts.map +1 -0
  539. package/cjs/object/hasKey.js +7 -0
  540. package/cjs/object/hasKey.js.map +1 -0
  541. package/cjs/object/hasProperty.d.ts +3 -0
  542. package/cjs/object/hasProperty.d.ts.map +1 -0
  543. package/cjs/object/hasProperty.js +7 -0
  544. package/cjs/object/hasProperty.js.map +1 -0
  545. package/cjs/object/index.d.ts +38 -0
  546. package/cjs/object/index.d.ts.map +1 -0
  547. package/cjs/object/index.js +36 -0
  548. package/cjs/object/index.js.map +1 -0
  549. package/cjs/object/is_not_object.d.ts +117 -0
  550. package/cjs/object/is_not_object.d.ts.map +1 -0
  551. package/cjs/object/is_not_object.js +3 -0
  552. package/cjs/object/is_not_object.js.map +1 -0
  553. package/cjs/object/is_object.d.ts +104 -0
  554. package/cjs/object/is_object.d.ts.map +1 -0
  555. package/cjs/object/is_object.js +3 -0
  556. package/cjs/object/is_object.js.map +1 -0
  557. package/cjs/object/left_join.d.ts +10 -0
  558. package/cjs/object/left_join.d.ts.map +1 -0
  559. package/cjs/object/left_join.js +3 -0
  560. package/cjs/object/left_join.js.map +1 -0
  561. package/cjs/object/mapKey.d.ts +3 -0
  562. package/cjs/object/mapKey.d.ts.map +1 -0
  563. package/cjs/object/mapKey.js +9 -0
  564. package/cjs/object/mapKey.js.map +1 -0
  565. package/cjs/object/mapProperties.d.ts +14 -0
  566. package/cjs/object/mapProperties.d.ts.map +1 -0
  567. package/cjs/object/mapProperties.js +16 -0
  568. package/cjs/object/mapProperties.js.map +1 -0
  569. package/cjs/object/merge.d.ts +81 -0
  570. package/cjs/object/merge.d.ts.map +1 -0
  571. package/cjs/object/merge.js +3 -0
  572. package/cjs/object/merge.js.map +1 -0
  573. package/cjs/object/object_plus.d.ts +2 -0
  574. package/cjs/object/object_plus.d.ts.map +1 -0
  575. package/cjs/object/object_plus.js +18 -0
  576. package/cjs/object/object_plus.js.map +1 -0
  577. package/cjs/object/omit.d.ts +29 -0
  578. package/cjs/object/omit.d.ts.map +1 -0
  579. package/cjs/object/omit.js +13 -0
  580. package/cjs/object/omit.js.map +1 -0
  581. package/cjs/object/optional_key.d.ts +35 -0
  582. package/cjs/object/optional_key.d.ts.map +1 -0
  583. package/cjs/object/optional_key.js +3 -0
  584. package/cjs/object/optional_key.js.map +1 -0
  585. package/cjs/object/pick.d.ts +29 -0
  586. package/cjs/object/pick.d.ts.map +1 -0
  587. package/cjs/object/pick.js +13 -0
  588. package/cjs/object/pick.js.map +1 -0
  589. package/cjs/object/properties.d.ts +7 -0
  590. package/cjs/object/properties.d.ts.map +1 -0
  591. package/cjs/object/properties.js +3 -0
  592. package/cjs/object/properties.js.map +1 -0
  593. package/cjs/object/record.d.ts +17 -0
  594. package/cjs/object/record.d.ts.map +1 -0
  595. package/cjs/object/record.js +8 -0
  596. package/cjs/object/record.js.map +1 -0
  597. package/cjs/object/recursive_partial.d.ts +29 -0
  598. package/cjs/object/recursive_partial.d.ts.map +1 -0
  599. package/cjs/object/recursive_partial.js +4 -0
  600. package/cjs/object/recursive_partial.js.map +1 -0
  601. package/cjs/object/reduceKey.d.ts +7 -0
  602. package/cjs/object/reduceKey.d.ts.map +1 -0
  603. package/cjs/object/reduceKey.js +12 -0
  604. package/cjs/object/reduceKey.js.map +1 -0
  605. package/cjs/object/replaceProperty.d.ts +6 -0
  606. package/cjs/object/replaceProperty.d.ts.map +1 -0
  607. package/cjs/object/replaceProperty.js +7 -0
  608. package/cjs/object/replaceProperty.js.map +1 -0
  609. package/cjs/object/someKey.d.ts +3 -0
  610. package/cjs/object/someKey.d.ts.map +1 -0
  611. package/cjs/object/someKey.js +9 -0
  612. package/cjs/object/someKey.js.map +1 -0
  613. package/cjs/object/split.d.ts +69 -0
  614. package/cjs/object/split.d.ts.map +1 -0
  615. package/cjs/object/split.js +11 -0
  616. package/cjs/object/split.js.map +1 -0
  617. package/cjs/object/typeOverrideIncompatible.d.ts +3 -0
  618. package/cjs/object/typeOverrideIncompatible.d.ts.map +1 -0
  619. package/cjs/object/typeOverrideIncompatible.js +10 -0
  620. package/cjs/object/typeOverrideIncompatible.js.map +1 -0
  621. package/cjs/predicates/CanAssign.d.ts +53 -0
  622. package/cjs/predicates/CanAssign.d.ts.map +1 -0
  623. package/cjs/predicates/CanAssign.js +7 -0
  624. package/cjs/predicates/CanAssign.js.map +1 -0
  625. package/cjs/predicates/Extends.d.ts +8 -0
  626. package/cjs/predicates/Extends.d.ts.map +1 -0
  627. package/cjs/predicates/Extends.js +3 -0
  628. package/cjs/predicates/Extends.js.map +1 -0
  629. package/cjs/predicates/If.d.ts +2 -0
  630. package/cjs/predicates/If.d.ts.map +1 -0
  631. package/cjs/predicates/If.js +3 -0
  632. package/cjs/predicates/If.js.map +1 -0
  633. package/cjs/predicates/IsEmptyObject.d.ts +2 -0
  634. package/cjs/predicates/IsEmptyObject.d.ts.map +1 -0
  635. package/cjs/predicates/IsEmptyObject.js +3 -0
  636. package/cjs/predicates/IsEmptyObject.js.map +1 -0
  637. package/cjs/predicates/assignable.d.ts +89 -0
  638. package/cjs/predicates/assignable.d.ts.map +1 -0
  639. package/cjs/predicates/assignable.js +3 -0
  640. package/cjs/predicates/assignable.js.map +1 -0
  641. package/cjs/predicates/index.d.ts +7 -0
  642. package/cjs/predicates/index.d.ts.map +1 -0
  643. package/cjs/predicates/index.js +18 -0
  644. package/cjs/predicates/index.js.map +1 -0
  645. package/cjs/predicates/literal.d.ts +22 -0
  646. package/cjs/predicates/literal.d.ts.map +1 -0
  647. package/cjs/predicates/literal.js +3 -0
  648. package/cjs/predicates/literal.js.map +1 -0
  649. package/cjs/predicates/logical.d.ts +5 -0
  650. package/cjs/predicates/logical.d.ts.map +1 -0
  651. package/cjs/predicates/logical.js +3 -0
  652. package/cjs/predicates/logical.js.map +1 -0
  653. package/cjs/predicates/not_assignable.d.ts +89 -0
  654. package/cjs/predicates/not_assignable.d.ts.map +1 -0
  655. package/cjs/predicates/not_assignable.js +3 -0
  656. package/cjs/predicates/not_assignable.js.map +1 -0
  657. package/cjs/primitive.d.ts +5 -0
  658. package/cjs/primitive.d.ts.map +1 -0
  659. package/cjs/primitive.js +3 -0
  660. package/cjs/primitive.js.map +1 -0
  661. package/cjs/promise/MaybePromise.d.ts +22 -0
  662. package/cjs/promise/MaybePromise.d.ts.map +1 -0
  663. package/cjs/promise/MaybePromise.js +12 -0
  664. package/cjs/promise/MaybePromise.js.map +1 -0
  665. package/cjs/promise/PromiseValue.d.ts +13 -0
  666. package/cjs/promise/PromiseValue.d.ts.map +1 -0
  667. package/cjs/promise/PromiseValue.js +3 -0
  668. package/cjs/promise/PromiseValue.js.map +1 -0
  669. package/cjs/promise/PromiseValueMerge.d.ts +5 -0
  670. package/cjs/promise/PromiseValueMerge.d.ts.map +1 -0
  671. package/cjs/promise/PromiseValueMerge.js +3 -0
  672. package/cjs/promise/PromiseValueMerge.js.map +1 -0
  673. package/cjs/promise/index.d.ts +6 -0
  674. package/cjs/promise/index.d.ts.map +1 -0
  675. package/cjs/promise/index.js +20 -0
  676. package/cjs/promise/index.js.map +1 -0
  677. package/cjs/promise/isPromise.d.ts +2 -0
  678. package/cjs/promise/isPromise.d.ts.map +1 -0
  679. package/cjs/promise/isPromise.js +8 -0
  680. package/cjs/promise/isPromise.js.map +1 -0
  681. package/cjs/promise/mapSeries.d.ts +2 -0
  682. package/cjs/promise/mapSeries.d.ts.map +1 -0
  683. package/cjs/promise/mapSeries.js +7 -0
  684. package/cjs/promise/mapSeries.js.map +1 -0
  685. package/cjs/string/$extract_manipulated_string.d.ts +18 -0
  686. package/cjs/string/$extract_manipulated_string.d.ts.map +1 -0
  687. package/cjs/string/$extract_manipulated_string.js +3 -0
  688. package/cjs/string/$extract_manipulated_string.js.map +1 -0
  689. package/cjs/string/_string_type.d.ts +5 -0
  690. package/cjs/string/_string_type.d.ts.map +1 -0
  691. package/cjs/string/_string_type.js +3 -0
  692. package/cjs/string/_string_type.js.map +1 -0
  693. package/cjs/string/is_not_string.d.ts +82 -0
  694. package/cjs/string/is_not_string.d.ts.map +1 -0
  695. package/cjs/string/is_not_string.js +3 -0
  696. package/cjs/string/is_not_string.js.map +1 -0
  697. package/cjs/string/is_not_string_literal.d.ts +100 -0
  698. package/cjs/string/is_not_string_literal.d.ts.map +1 -0
  699. package/cjs/string/is_not_string_literal.js +3 -0
  700. package/cjs/string/is_not_string_literal.js.map +1 -0
  701. package/cjs/string/is_not_template_literal.d.ts +73 -0
  702. package/cjs/string/is_not_template_literal.d.ts.map +1 -0
  703. package/cjs/string/is_not_template_literal.js +3 -0
  704. package/cjs/string/is_not_template_literal.js.map +1 -0
  705. package/cjs/string/is_string.d.ts +81 -0
  706. package/cjs/string/is_string.d.ts.map +1 -0
  707. package/cjs/string/is_string.js +3 -0
  708. package/cjs/string/is_string.js.map +1 -0
  709. package/cjs/string/is_string_literal.d.ts +100 -0
  710. package/cjs/string/is_string_literal.d.ts.map +1 -0
  711. package/cjs/string/is_string_literal.js +3 -0
  712. package/cjs/string/is_string_literal.js.map +1 -0
  713. package/cjs/string/is_template_literal.d.ts +75 -0
  714. package/cjs/string/is_template_literal.d.ts.map +1 -0
  715. package/cjs/string/is_template_literal.js +3 -0
  716. package/cjs/string/is_template_literal.js.map +1 -0
  717. package/cjs/string/string.d.ts +24 -0
  718. package/cjs/string/string.d.ts.map +1 -0
  719. package/cjs/string/string.js +3 -0
  720. package/cjs/string/string.js.map +1 -0
  721. package/cjs/string/string_plus.d.ts +27 -0
  722. package/cjs/string/string_plus.d.ts.map +1 -0
  723. package/cjs/string/string_plus.js +3 -0
  724. package/cjs/string/string_plus.js.map +1 -0
  725. package/cjs/symbol/is_not_symbol.d.ts +71 -0
  726. package/cjs/symbol/is_not_symbol.d.ts.map +1 -0
  727. package/cjs/symbol/is_not_symbol.js +3 -0
  728. package/cjs/symbol/is_not_symbol.js.map +1 -0
  729. package/cjs/symbol/is_symbol.d.ts +73 -0
  730. package/cjs/symbol/is_symbol.d.ts.map +1 -0
  731. package/cjs/symbol/is_symbol.js +3 -0
  732. package/cjs/symbol/is_symbol.js.map +1 -0
  733. package/cjs/testing/stub.d.ts +31 -0
  734. package/cjs/testing/stub.d.ts.map +1 -0
  735. package/cjs/testing/stub.js +59 -0
  736. package/cjs/testing/stub.js.map +1 -0
  737. package/cjs/testing/test_type.d.ts +350 -0
  738. package/cjs/testing/test_type.d.ts.map +1 -0
  739. package/cjs/testing/test_type.js +16 -0
  740. package/cjs/testing/test_type.js.map +1 -0
  741. package/cjs/tuple/common_prop_keys.d.ts +34 -0
  742. package/cjs/tuple/common_prop_keys.d.ts.map +1 -0
  743. package/cjs/tuple/common_prop_keys.js +3 -0
  744. package/cjs/tuple/common_prop_keys.js.map +1 -0
  745. package/cjs/tuple/create_tuple.d.ts +28 -0
  746. package/cjs/tuple/create_tuple.d.ts.map +1 -0
  747. package/cjs/tuple/create_tuple.js +3 -0
  748. package/cjs/tuple/create_tuple.js.map +1 -0
  749. package/cjs/tuple/drop.d.ts +91 -0
  750. package/cjs/tuple/drop.d.ts.map +1 -0
  751. package/cjs/tuple/drop.js +12 -0
  752. package/cjs/tuple/drop.js.map +1 -0
  753. package/cjs/tuple/is_not_tuple.d.ts +78 -0
  754. package/cjs/tuple/is_not_tuple.d.ts.map +1 -0
  755. package/cjs/tuple/is_not_tuple.js +3 -0
  756. package/cjs/tuple/is_not_tuple.js.map +1 -0
  757. package/cjs/tuple/is_tuple.d.ts +76 -0
  758. package/cjs/tuple/is_tuple.d.ts.map +1 -0
  759. package/cjs/tuple/is_tuple.js +3 -0
  760. package/cjs/tuple/is_tuple.js.map +1 -0
  761. package/cjs/tuple/tail.d.ts +6 -0
  762. package/cjs/tuple/tail.d.ts.map +1 -0
  763. package/cjs/tuple/tail.js +3 -0
  764. package/cjs/tuple/tail.js.map +1 -0
  765. package/cjs/tuple/tuple_plus.common_prop_keys.d.ts +32 -0
  766. package/cjs/tuple/tuple_plus.common_prop_keys.d.ts.map +1 -0
  767. package/cjs/tuple/tuple_plus.common_prop_keys.js +3 -0
  768. package/cjs/tuple/tuple_plus.common_prop_keys.js.map +1 -0
  769. package/cjs/tuple/tuple_plus.d.ts +6 -0
  770. package/cjs/tuple/tuple_plus.d.ts.map +1 -0
  771. package/cjs/tuple/tuple_plus.drop_match.d.ts +6 -0
  772. package/cjs/tuple/tuple_plus.drop_match.d.ts.map +1 -0
  773. package/cjs/tuple/tuple_plus.drop_match.js +3 -0
  774. package/cjs/tuple/tuple_plus.drop_match.js.map +1 -0
  775. package/cjs/tuple/tuple_plus.filter.d.ts +13 -0
  776. package/cjs/tuple/tuple_plus.filter.d.ts.map +1 -0
  777. package/cjs/tuple/tuple_plus.filter.js +3 -0
  778. package/cjs/tuple/tuple_plus.filter.js.map +1 -0
  779. package/cjs/tuple/tuple_plus.find.d.ts +67 -0
  780. package/cjs/tuple/tuple_plus.find.d.ts.map +1 -0
  781. package/cjs/tuple/tuple_plus.find.js +3 -0
  782. package/cjs/tuple/tuple_plus.find.js.map +1 -0
  783. package/cjs/tuple/tuple_plus.js +3 -0
  784. package/cjs/tuple/tuple_plus.js.map +1 -0
  785. package/cjs/tuple/tuple_plus.pad_start.d.ts +25 -0
  786. package/cjs/tuple/tuple_plus.pad_start.d.ts.map +1 -0
  787. package/cjs/tuple/tuple_plus.pad_start.js +3 -0
  788. package/cjs/tuple/tuple_plus.pad_start.js.map +1 -0
  789. package/cjs/type/failed.d.ts +32 -0
  790. package/cjs/type/failed.d.ts.map +1 -0
  791. package/cjs/type/failed.js +3 -0
  792. package/cjs/type/failed.js.map +1 -0
  793. package/cjs/type/no_infer.d.ts +28 -0
  794. package/cjs/type/no_infer.d.ts.map +1 -0
  795. package/cjs/type/no_infer.js +3 -0
  796. package/cjs/type/no_infer.js.map +1 -0
  797. package/cjs/type-guard/is_type.d.ts +27 -0
  798. package/cjs/type-guard/is_type.d.ts.map +1 -0
  799. package/cjs/type-guard/is_type.js +27 -0
  800. package/cjs/type-guard/is_type.js.map +1 -0
  801. package/cjs/type_plus/$equality.d.ts +12 -0
  802. package/cjs/type_plus/$equality.d.ts.map +1 -0
  803. package/cjs/type_plus/$equality.js +3 -0
  804. package/cjs/type_plus/$equality.js.map +1 -0
  805. package/cjs/type_plus/$error.d.ts +8 -0
  806. package/cjs/type_plus/$error.d.ts.map +1 -0
  807. package/cjs/type_plus/$error.js +3 -0
  808. package/cjs/type_plus/$error.js.map +1 -0
  809. package/cjs/type_plus/$infer_error.d.ts +21 -0
  810. package/cjs/type_plus/$infer_error.d.ts.map +1 -0
  811. package/cjs/type_plus/$infer_error.js +3 -0
  812. package/cjs/type_plus/$infer_error.js.map +1 -0
  813. package/cjs/type_plus/$merge_options.d.ts +11 -0
  814. package/cjs/type_plus/$merge_options.d.ts.map +1 -0
  815. package/cjs/type_plus/$merge_options.js +3 -0
  816. package/cjs/type_plus/$merge_options.js.map +1 -0
  817. package/cjs/type_plus/$resolve_options.d.ts +11 -0
  818. package/cjs/type_plus/$resolve_options.d.ts.map +1 -0
  819. package/cjs/type_plus/$resolve_options.js +3 -0
  820. package/cjs/type_plus/$resolve_options.js.map +1 -0
  821. package/cjs/type_plus/$special_type.d.ts +19 -0
  822. package/cjs/type_plus/$special_type.d.ts.map +1 -0
  823. package/cjs/type_plus/$special_type.js +3 -0
  824. package/cjs/type_plus/$special_type.js.map +1 -0
  825. package/cjs/type_plus/$type.d.ts +11 -0
  826. package/cjs/type_plus/$type.d.ts.map +1 -0
  827. package/cjs/type_plus/$type.js +3 -0
  828. package/cjs/type_plus/$type.js.map +1 -0
  829. package/cjs/type_plus/branch/$branch.d.ts +29 -0
  830. package/cjs/type_plus/branch/$branch.d.ts.map +1 -0
  831. package/cjs/type_plus/branch/$branch.js +3 -0
  832. package/cjs/type_plus/branch/$branch.js.map +1 -0
  833. package/cjs/type_plus/branch/$distributive.d.ts +19 -0
  834. package/cjs/type_plus/branch/$distributive.d.ts.map +1 -0
  835. package/cjs/type_plus/branch/$distributive.js +3 -0
  836. package/cjs/type_plus/branch/$distributive.js.map +1 -0
  837. package/cjs/type_plus/branch/$exact.d.ts +30 -0
  838. package/cjs/type_plus/branch/$exact.d.ts.map +1 -0
  839. package/cjs/type_plus/branch/$exact.js +3 -0
  840. package/cjs/type_plus/branch/$exact.js.map +1 -0
  841. package/cjs/type_plus/branch/$input_options.d.ts +10 -0
  842. package/cjs/type_plus/branch/$input_options.d.ts.map +1 -0
  843. package/cjs/type_plus/branch/$input_options.js +3 -0
  844. package/cjs/type_plus/branch/$input_options.js.map +1 -0
  845. package/cjs/type_plus/branch/$is_distributive.d.ts +6 -0
  846. package/cjs/type_plus/branch/$is_distributive.d.ts.map +1 -0
  847. package/cjs/type_plus/branch/$is_distributive.js +3 -0
  848. package/cjs/type_plus/branch/$is_distributive.js.map +1 -0
  849. package/cjs/type_plus/branch/$override.d.ts +21 -0
  850. package/cjs/type_plus/branch/$override.d.ts.map +1 -0
  851. package/cjs/type_plus/branch/$override.js +3 -0
  852. package/cjs/type_plus/branch/$override.js.map +1 -0
  853. package/cjs/type_plus/branch/$resolve_branch.d.ts +29 -0
  854. package/cjs/type_plus/branch/$resolve_branch.d.ts.map +1 -0
  855. package/cjs/type_plus/branch/$resolve_branch.js +3 -0
  856. package/cjs/type_plus/branch/$resolve_branch.js.map +1 -0
  857. package/cjs/type_plus/branch/$select.d.ts +77 -0
  858. package/cjs/type_plus/branch/$select.d.ts.map +1 -0
  859. package/cjs/type_plus/branch/$select.js +3 -0
  860. package/cjs/type_plus/branch/$select.js.map +1 -0
  861. package/cjs/type_plus/branch/$select_invert.d.ts +75 -0
  862. package/cjs/type_plus/branch/$select_invert.d.ts.map +1 -0
  863. package/cjs/type_plus/branch/$select_invert.js +3 -0
  864. package/cjs/type_plus/branch/$select_invert.js.map +1 -0
  865. package/cjs/type_plus/branch/$select_invert_strict.d.ts +75 -0
  866. package/cjs/type_plus/branch/$select_invert_strict.d.ts.map +1 -0
  867. package/cjs/type_plus/branch/$select_invert_strict.js +3 -0
  868. package/cjs/type_plus/branch/$select_invert_strict.js.map +1 -0
  869. package/cjs/type_plus/branch/$select_strict.d.ts +76 -0
  870. package/cjs/type_plus/branch/$select_strict.d.ts.map +1 -0
  871. package/cjs/type_plus/branch/$select_strict.js +3 -0
  872. package/cjs/type_plus/branch/$select_strict.js.map +1 -0
  873. package/cjs/type_plus/branch/$selection.d.ts +127 -0
  874. package/cjs/type_plus/branch/$selection.d.ts.map +1 -0
  875. package/cjs/type_plus/branch/$selection.js +3 -0
  876. package/cjs/type_plus/branch/$selection.js.map +1 -0
  877. package/cjs/type_plus/branch/$selection_options.d.ts +37 -0
  878. package/cjs/type_plus/branch/$selection_options.d.ts.map +1 -0
  879. package/cjs/type_plus/branch/$selection_options.js +3 -0
  880. package/cjs/type_plus/branch/$selection_options.js.map +1 -0
  881. package/cjs/undefined/has_undefined.d.ts +43 -0
  882. package/cjs/undefined/has_undefined.d.ts.map +1 -0
  883. package/cjs/undefined/has_undefined.js +3 -0
  884. package/cjs/undefined/has_undefined.js.map +1 -0
  885. package/cjs/undefined/is_not_undefined.d.ts +72 -0
  886. package/cjs/undefined/is_not_undefined.d.ts.map +1 -0
  887. package/cjs/undefined/is_not_undefined.js +3 -0
  888. package/cjs/undefined/is_not_undefined.js.map +1 -0
  889. package/cjs/undefined/is_undefined.d.ts +75 -0
  890. package/cjs/undefined/is_undefined.d.ts.map +1 -0
  891. package/cjs/undefined/is_undefined.js +3 -0
  892. package/cjs/undefined/is_undefined.js.map +1 -0
  893. package/cjs/union/union.d.ts +33 -0
  894. package/cjs/union/union.d.ts.map +1 -0
  895. package/cjs/union/union.js +3 -0
  896. package/cjs/union/union.js.map +1 -0
  897. package/cjs/union/union_to_intersection.d.ts +3 -0
  898. package/cjs/union/union_to_intersection.d.ts.map +1 -0
  899. package/cjs/union/union_to_intersection.js +7 -0
  900. package/cjs/union/union_to_intersection.js.map +1 -0
  901. package/cjs/union_keys.d.ts +6 -0
  902. package/cjs/union_keys.d.ts.map +1 -0
  903. package/cjs/union_keys.js +3 -0
  904. package/cjs/union_keys.js.map +1 -0
  905. package/cjs/unknown/is_not_unknown.d.ts +53 -0
  906. package/cjs/unknown/is_not_unknown.d.ts.map +1 -0
  907. package/cjs/unknown/is_not_unknown.js +3 -0
  908. package/cjs/unknown/is_not_unknown.js.map +1 -0
  909. package/cjs/unknown/is_unknown.d.ts +53 -0
  910. package/cjs/unknown/is_unknown.d.ts.map +1 -0
  911. package/cjs/unknown/is_unknown.js +3 -0
  912. package/cjs/unknown/is_unknown.js.map +1 -0
  913. package/cjs/unknown/not_unknown_or.d.ts +30 -0
  914. package/cjs/unknown/not_unknown_or.d.ts.map +1 -0
  915. package/cjs/unknown/not_unknown_or.js +3 -0
  916. package/cjs/unknown/not_unknown_or.js.map +1 -0
  917. package/cjs/unknown/unknown.d.ts +55 -0
  918. package/cjs/unknown/unknown.d.ts.map +1 -0
  919. package/cjs/unknown/unknown.js +3 -0
  920. package/cjs/unknown/unknown.js.map +1 -0
  921. package/cjs/unpartial.d.ts +2 -0
  922. package/cjs/unpartial.d.ts.map +1 -0
  923. package/cjs/unpartial.js +8 -0
  924. package/cjs/unpartial.js.map +1 -0
  925. package/cjs/utils/Widen.d.ts +6 -0
  926. package/cjs/utils/Widen.d.ts.map +1 -0
  927. package/cjs/utils/Widen.js +3 -0
  928. package/cjs/utils/Widen.js.map +1 -0
  929. package/cjs/utils/as.d.ts +10 -0
  930. package/cjs/utils/as.d.ts.map +1 -0
  931. package/cjs/utils/as.js +25 -0
  932. package/cjs/utils/as.js.map +1 -0
  933. package/cjs/utils/index.d.ts +41 -0
  934. package/cjs/utils/index.d.ts.map +1 -0
  935. package/cjs/utils/index.js +19 -0
  936. package/cjs/utils/index.js.map +1 -0
  937. package/cjs/utils/inspect.d.ts +5 -0
  938. package/cjs/utils/inspect.d.ts.map +1 -0
  939. package/cjs/utils/inspect.js +12 -0
  940. package/cjs/utils/inspect.js.map +1 -0
  941. package/cjs/utils/options.d.ts +15 -0
  942. package/cjs/utils/options.d.ts.map +1 -0
  943. package/cjs/utils/options.js +3 -0
  944. package/cjs/utils/options.js.map +1 -0
  945. package/cjs/void/is_not_void.d.ts +78 -0
  946. package/cjs/void/is_not_void.d.ts.map +1 -0
  947. package/cjs/void/is_not_void.js +3 -0
  948. package/cjs/void/is_not_void.js.map +1 -0
  949. package/cjs/void/is_void.d.ts +79 -0
  950. package/cjs/void/is_void.d.ts.map +1 -0
  951. package/cjs/void/is_void.js +3 -0
  952. package/cjs/void/is_void.js.map +1 -0
  953. package/esm/assertion/assert_type.d.ts +1 -1
  954. package/esm/assertion/assert_type.d.ts.map +1 -1
  955. package/esm/function/extract_function.d.ts.map +1 -1
  956. package/esm/functional/Maybe.js +1 -1
  957. package/esm/functional/context.js +1 -1
  958. package/esm/object/facade.js +1 -1
  959. package/esm/object/typeOverrideIncompatible.d.ts.map +1 -1
  960. package/esm/object/typeOverrideIncompatible.js +1 -1
  961. package/esm/promise/MaybePromise.js +1 -1
  962. package/esm/testing/stub.d.ts +2 -2
  963. package/esm/testing/stub.d.ts.map +1 -1
  964. package/esm/testing/stub.js +1 -1
  965. package/esm/testing/test_type.js +1 -1
  966. package/esm/type-guard/is_type.d.ts +2 -2
  967. package/esm/type-guard/is_type.d.ts.map +1 -1
  968. package/esm/utils/as.d.ts +1 -1
  969. package/esm/utils/as.d.ts.map +1 -1
  970. package/esm/utils/as.js +1 -1
  971. package/package.json +9 -2
  972. package/src/array/array.some.ts +1 -1
  973. package/src/array/array_plus.common_prop_keys.ts +1 -1
  974. package/src/array/array_plus.element_match.ts +1 -1
  975. package/src/array/array_plus.filter.ts +1 -1
  976. package/src/array/array_plus.find.ts +1 -1
  977. package/src/array/array_plus.index_at.ts +1 -1
  978. package/src/array/array_plus.split_at.ts +3 -3
  979. package/src/array/find_first.ts +1 -1
  980. package/src/array/pad_start.ts +1 -1
  981. package/src/array/reduce_while.ts +1 -1
  982. package/src/assertion/assert_type.ts +1 -1
  983. package/src/class/isConstructor.ts +1 -1
  984. package/src/functional/Maybe.ts +1 -1
  985. package/src/functional/context.ts +3 -3
  986. package/src/math/add.ts +1 -1
  987. package/src/math/multiply.ts +1 -1
  988. package/src/math/numeric_struct.ts +15 -15
  989. package/src/math/subtract.ts +1 -1
  990. package/src/nominal/nominal_match.ts +1 -1
  991. package/src/object/everyKey.ts +1 -1
  992. package/src/object/facade.ts +18 -18
  993. package/src/object/filterKey.ts +1 -1
  994. package/src/object/findKey.ts +1 -1
  995. package/src/object/forEachKey.ts +1 -1
  996. package/src/object/getField.ts +2 -2
  997. package/src/object/mapKey.ts +1 -1
  998. package/src/object/mapProperties.ts +2 -2
  999. package/src/object/merge.ts +1 -1
  1000. package/src/object/omit.ts +18 -18
  1001. package/src/object/pick.ts +18 -18
  1002. package/src/object/reduceKey.ts +1 -1
  1003. package/src/object/replaceProperty.ts +1 -1
  1004. package/src/object/someKey.ts +1 -1
  1005. package/src/object/split.ts +21 -21
  1006. package/src/object/typeOverrideIncompatible.ts +1 -1
  1007. package/src/predicates/literal.ts +1 -1
  1008. package/src/promise/MaybePromise.ts +2 -2
  1009. package/src/promise/PromiseValueMerge.ts +1 -1
  1010. package/src/string/string.ts +2 -2
  1011. package/src/testing/stub.ts +3 -3
  1012. package/src/testing/test_type.ts +1 -1
  1013. package/src/tuple/common_prop_keys.ts +1 -1
  1014. package/src/tuple/drop.ts +2 -2
  1015. package/src/tuple/tuple_plus.common_prop_keys.ts +1 -1
  1016. package/src/tuple/tuple_plus.find.ts +1 -1
  1017. package/src/tuple/tuple_plus.pad_start.ts +1 -1
  1018. package/src/type_plus/branch/$is_distributive.ts +1 -1
  1019. package/src/type_plus/branch/$resolve_branch.ts +2 -2
  1020. package/src/utils/as.ts +1 -1
@@ -0,0 +1,60 @@
1
+ import type { $Never } from '../never/never.js';
2
+ import type { IsTuple } from '../tuple/is_tuple.js';
3
+ import type { $ResolveOptions } from '../type_plus/$resolve_options.js';
4
+ import type { ElementMatch } from './array_plus.element_match.js';
5
+ /**
6
+ * 🦴 *utilities*
7
+ * 🔢 *customizable*
8
+ *
9
+ * Finds the type in array `A` that matches `Criteria`.
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * type R = ArrayPlus.Find<Array<string>, string> // string
14
+ * type R = ArrayPlus.Find<Array<1 | 2 | 'x'>, number> // 1 | 2 | undefined
15
+ * type R = ArrayPlus.Find<Array<string | number>, number | string> // string | number
16
+ * type R = ArrayPlus.Find<Array<number>, 1> // widen: 1 | undefined
17
+ * type R = ArrayPlus.Find<Array<string | number>, number> // unionMiss: number | undefined
18
+ *
19
+ * type R = ArrayPlus.Find<string[], number> // never
20
+ * ```
21
+ *
22
+ * @typeParam Options['widen'] performs widen match.
23
+ * Default to `true`.
24
+ * With widen match, a narrowed type will match its widen type.
25
+ * e.g. matching `1` against `number` yields `1 | undefined`
26
+ *
27
+ * The widen behavior can be customized by `Options['$widen']`
28
+ *
29
+ * @typeParam Options['$never'] return type when `A` is `never`. Default to `never`.
30
+ *
31
+ * @typeParam Options['$notMatch'] Return value when `T` does not match `Criteria`.
32
+ * Default to `never`.
33
+ *
34
+ * @typeParam Options['$tuple'] return type when `A` is a tuple. Default to `not supported` message.
35
+ *
36
+ * @typeParam Options['$widen'] return type when `T` in `A` is a widen type of `Criteria`.
37
+ * Default to `Criteria | undefined`.
38
+ * Set it to `never` for a more type-centric behavior
39
+ *
40
+ * @typeParam Options['$unionNotMatch'] Return value when a branch of the union `T` does not match `Criteria`.
41
+ * Default to `never`.
42
+ *
43
+ * If you want the type to behave more like JavaScript,
44
+ * you can override it to return `undefined`.
45
+ *
46
+ * Since it is a union, the result will be joined to the matched branch as union.
47
+ */
48
+ export type Find<A extends readonly unknown[], Criteria, Options extends Find.Options = Find.DefaultOptions<Criteria>> = IsTuple<A, {
49
+ $then: $ResolveOptions<[Options['$tuple'], Find.DefaultOptions<Criteria>['$tuple']]>;
50
+ $else: A extends Readonly<Array<infer T>> ? ElementMatch<T, Criteria, Options> : never;
51
+ }>;
52
+ export declare namespace Find {
53
+ interface Options extends ElementMatch.Options, $Never.$Options {
54
+ $tuple?: unknown;
55
+ }
56
+ interface DefaultOptions<Criteria> extends ElementMatch.DefaultOptions<Criteria>, $Never.$Default {
57
+ $tuple: 'does not support tuple. Please use `FindFirst` or `TuplePlus.Find` instead.';
58
+ }
59
+ }
60
+ //# sourceMappingURL=array_plus.find.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array_plus.find.d.ts","sourceRoot":"","sources":["../../src/array/array_plus.find.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAA;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAEjE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,MAAM,MAAM,IAAI,CACf,CAAC,SAAS,SAAS,OAAO,EAAE,EAC5B,QAAQ,EACR,OAAO,SAAS,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IACzD,OAAO,CACV,CAAC,EACD;IACC,KAAK,EAAE,eAAe,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;IACpF,KAAK,EAAE,CAAC,SAAS,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,GAAG,KAAK,CAAA;CACtF,CACD,CAAA;AAED,yBAAiB,IAAI,CAAC;IACrB,UAAiB,OAAQ,SAAQ,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ;QACrE,MAAM,CAAC,EAAE,OAAO,CAAA;KAChB;IAED,UAAiB,cAAc,CAAC,QAAQ,CAAE,SAAQ,YAAY,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ;QACvG,MAAM,EAAE,6EAA6E,CAAA;KACrF;CACD"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=array_plus.find.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array_plus.find.js","sourceRoot":"","sources":["../../src/array/array_plus.find.ts"],"names":[],"mappings":""}
@@ -0,0 +1,42 @@
1
+ import type { IsAny } from '../any/is_any.js';
2
+ import type { IsEqual } from '../equal/equal.js';
3
+ import type { Abs } from '../math/abs.js';
4
+ import type { GreaterThan } from '../math/greater_than.js';
5
+ import type { Subtract } from '../math/subtract.js';
6
+ import type { IsNever } from '../never/is_never.js';
7
+ import type { IsNumber } from '../number/is_number.js';
8
+ import type { IsInteger } from '../numeric/is_integer.js';
9
+ import type { IsNegative } from '../numeric/is_negative.js';
10
+ import type { $Else, $SelectionBranch, $Then } from '../type_plus/branch/$selection.js';
11
+ /**
12
+ * 🦴 *utilities*
13
+ *
14
+ * Gets the normalized index to access the element of an array or tuple.
15
+ *
16
+ * @example
17
+ * ```ts
18
+ * type R = IndexAt<['a', 'b', 'c'], 2> // 2
19
+ * type R = IndexAt<['a', 'b', 'c'], -2> // 1
20
+ *
21
+ * type R = IndexAt<['a', 'b', 'c'], 3> // never
22
+ * type R = IndexAt<['a', 'b', 'c'], -4> // never
23
+ * ```
24
+ */
25
+ export type IndexAt<A extends readonly unknown[], N extends number, Fail = never, Upper = A['length'], Lower = 0> = IsNever<A, $SelectionBranch> extends infer R ? R extends $Then ? Fail : R extends $Else ? IndexAt._<A, N, Fail, Upper, Lower> : never : never;
26
+ export declare namespace IndexAt {
27
+ type _<A extends readonly unknown[], N extends number, Fail = never, Upper = A['length'], Lower = 0> = IsEqual<A['length'], 0, Fail, IsInteger<N, {
28
+ $then: IsNumber<A['length'], IsNumber.$Branch<{
29
+ exact: true;
30
+ }>> extends infer R ? R extends $Then ? N : R extends $Else ? IsNegative<N, {
31
+ $then: GreaterThan<Abs<N>, A['length']> extends true ? Lower : Subtract<A['length'], Abs<N>>;
32
+ $else: GreaterThan<A['length'], N> extends true ? N : Upper;
33
+ }> : never : never;
34
+ $else: IsAny<N, {
35
+ $then: number;
36
+ $else: IsNumber<N, IsNumber.$Branch<{
37
+ exact: true;
38
+ }>> extends infer R ? R extends $Then ? N : never : never;
39
+ }>;
40
+ }>>;
41
+ }
42
+ //# sourceMappingURL=array_plus.index_at.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array_plus.index_at.d.ts","sourceRoot":"","sources":["../../src/array/array_plus.index_at.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAA;AAEvF;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,OAAO,CAClB,CAAC,SAAS,SAAS,OAAO,EAAE,EAC5B,CAAC,SAAS,MAAM,EAChB,IAAI,GAAG,KAAK,EACZ,KAAK,GAAG,CAAC,CAAC,QAAQ,CAAC,EACnB,KAAK,GAAG,CAAC,IACN,OAAO,CAAC,CAAC,EAAE,gBAAgB,CAAC,SAAS,MAAM,CAAC,GAC7C,CAAC,SAAS,KAAK,GACd,IAAI,GACJ,CAAC,SAAS,KAAK,GACd,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,GACnC,KAAK,GACP,KAAK,CAAA;AAER,yBAAiB,OAAO,CAAC;IACxB,KAAY,CAAC,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,EAAE,CAAC,SAAS,MAAM,EAAE,IAAI,GAAG,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,KAAK,GAAG,CAAC,IAAI,OAAO,CACpH,CAAC,CAAC,QAAQ,CAAC,EACX,CAAC,EACD,IAAI,EACJ,SAAS,CACR,CAAC,EACD;QACC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC;YAAE,KAAK,EAAE,IAAI,CAAA;SAAE,CAAC,CAAC,SAAS,MAAM,CAAC,GAE7E,CAAC,SAAS,KAAK,GACb,CAAC,GAEF,CAAC,SAAS,KAAK,GACb,UAAU,CACV,CAAC,EACD;YACC,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,SAAS,IAAI,GAAG,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YAC5F,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,GAAG,KAAK,CAAA;SAC3D,CACD,GACA,KAAK,GACP,KAAK,CAAA;QAER,KAAK,EAAE,KAAK,CACX,CAAC,EACD;YACC,KAAK,EAAE,MAAM,CAAA;YACb,KAAK,EAAE,QAAQ,CAAC,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC;gBAAE,KAAK,EAAE,IAAI,CAAA;aAAE,CAAC,CAAC,SAAS,MAAM,CAAC,GAClE,CAAC,SAAS,KAAK,GACd,CAAC,GACD,KAAK,GACN,KAAK,CAAA;SACR,CACD,CAAA;KACD,CACD,CACD,CAAA;CACD"}
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ // import type { IsAny } from '../any/is_any.js'
4
+ // import type { IsEqual } from '../equal/equal.js'
5
+ // import type { Abs } from '../math/abs.js'
6
+ // import type { GreaterThan } from '../math/greater_than.js'
7
+ // import type { Subtract } from '../math/subtract.js'
8
+ // import type { IsNever } from '../never/is_never.js'
9
+ // import type { IsStrictNumber } from '../number/is_strict_number.js'
10
+ // import type { IsInteger } from '../numeric/is_integer.js'
11
+ // import type { IsNegative } from '../numeric/is_negative.js'
12
+ // import type { $Else, $SelectionBranch, $Then } from '../type_plus/branch/selection.js'
13
+ // /**
14
+ // * 🦴 *utilities*
15
+ // *
16
+ // * Gets the normalized index to access the element of an array or tuple.
17
+ // *
18
+ // * @example
19
+ // * ```ts
20
+ // * type R = IndexAt<['a', 'b', 'c'], 2> // 2
21
+ // * type R = IndexAt<['a', 'b', 'c'], -2> // 1
22
+ // *
23
+ // * type R = IndexAt<['a', 'b', 'c'], 3> // never
24
+ // * type R = IndexAt<['a', 'b', 'c'], -4> // never
25
+ // * ```
26
+ // */
27
+ // export type IndexAt<
28
+ // A extends readonly unknown[],
29
+ // N extends number,
30
+ // Fail = never,
31
+ // Upper = A['length'],
32
+ // Lower = 0
33
+ // > = IsNever<
34
+ // A,
35
+ // $SelectionBranch> extends infer R
36
+ // ? R extends $Then ? Fail
37
+ // : R extends $Else ? IndexAt._<A, N, Fail, Upper, Lower>
38
+ // : never : never
39
+ // export namespace IndexAt {
40
+ // export type _<
41
+ // A extends readonly unknown[],
42
+ // N extends number,
43
+ // Fail = never,
44
+ // Upper = A['length'],
45
+ // Lower = 0
46
+ // > = IsEqual<
47
+ // A['length'],
48
+ // 0,
49
+ // Fail,
50
+ // IsInteger<
51
+ // N,
52
+ // IsInteger.$Branch
53
+ // > extends infer R
54
+ // ? R extends $Then
55
+ // ? IsStrictNumber<
56
+ // A['length'],
57
+ // IsStrictNumber.$Branch
58
+ // > extends infer R
59
+ // // A: array
60
+ // ? R extends $Then ? N
61
+ // // A: tuple
62
+ // : R extends $Else ? IsNegative<
63
+ // N,
64
+ // IsNegative.$Branch
65
+ // > extends infer R
66
+ // ? R extends $Then ? GreaterThan<Abs<N>, A['length']> extends true ? Lower : Subtract<A['length'], Abs<N>>
67
+ // : GreaterThan<A['length'], N> extends true ? N : Upper
68
+ // : never
69
+ // : never : never
70
+ // // N: number or float
71
+ // : IsAny<
72
+ // N,
73
+ // {
74
+ // $then: number,
75
+ // $else: IsStrictNumber<
76
+ // N,
77
+ // IsStrictNumber.$Branch
78
+ // > extends infer R
79
+ // ? R extends $Then ? N : never : never
80
+ // }
81
+ // >
82
+ // : never
83
+ // >
84
+ // }
85
+ //# sourceMappingURL=array_plus.index_at.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array_plus.index_at.js","sourceRoot":"","sources":["../../src/array/array_plus.index_at.ts"],"names":[],"mappings":";;AA+EA,gDAAgD;AAChD,mDAAmD;AACnD,4CAA4C;AAC5C,6DAA6D;AAC7D,sDAAsD;AACtD,sDAAsD;AACtD,sEAAsE;AACtE,4DAA4D;AAC5D,8DAA8D;AAC9D,yFAAyF;AAEzF,MAAM;AACN,oBAAoB;AACpB,KAAK;AACL,2EAA2E;AAC3E,KAAK;AACL,cAAc;AACd,WAAW;AACX,+CAA+C;AAC/C,gDAAgD;AAChD,KAAK;AACL,mDAAmD;AACnD,oDAAoD;AACpD,SAAS;AACT,MAAM;AACN,uBAAuB;AACvB,iCAAiC;AACjC,qBAAqB;AACrB,iBAAiB;AACjB,wBAAwB;AACxB,aAAa;AACb,eAAe;AACf,MAAM;AACN,qCAAqC;AACrC,4BAA4B;AAC5B,2DAA2D;AAC3D,mBAAmB;AAEnB,6BAA6B;AAC7B,kBAAkB;AAClB,kCAAkC;AAClC,sBAAsB;AACtB,kBAAkB;AAClB,yBAAyB;AACzB,cAAc;AACd,gBAAgB;AAChB,iBAAiB;AACjB,OAAO;AACP,UAAU;AACV,eAAe;AACf,QAAQ;AACR,uBAAuB;AACvB,sBAAsB;AACtB,sBAAsB;AACtB,sBAAsB;AACtB,kBAAkB;AAClB,4BAA4B;AAC5B,sBAAsB;AACtB,gBAAgB;AAChB,0BAA0B;AAC1B,gBAAgB;AAChB,oCAAoC;AACpC,QAAQ;AACR,wBAAwB;AACxB,sBAAsB;AACtB,8GAA8G;AAC9G,2DAA2D;AAC3D,YAAY;AACZ,oBAAoB;AACpB,0BAA0B;AAC1B,aAAa;AACb,QAAQ;AACR,OAAO;AACP,qBAAqB;AACrB,6BAA6B;AAC7B,UAAU;AACV,8BAA8B;AAC9B,wBAAwB;AACxB,4CAA4C;AAC5C,OAAO;AACP,MAAM;AACN,YAAY;AACZ,KAAK;AACL,IAAI"}
@@ -0,0 +1,21 @@
1
+ import type { IsNever } from '../never/is_never.js';
2
+ import type { IndexAt } from './array_plus.index_at.js';
3
+ /**
4
+ * 🎭 *predicate*
5
+ *
6
+ * Is `N` an out of bound index of `A`.
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * type R = IsIndexOutOfBound<[1], 0> // false
11
+ * type R = IsIndexOutOfBound<[1], -1> // false
12
+ *
13
+ * type R = IsIndexOutOfBound<[1], 1> // true
14
+ * type R = IsIndexOutOfBound<[1], -2> // true
15
+ * ```
16
+ */
17
+ export type IsIndexOutOfBound<A extends readonly unknown[], N extends number, Then = true, Else = false> = IsNever<IndexAt<A, N, never, never, never>, {
18
+ $then: Then;
19
+ $else: Else;
20
+ }>;
21
+ //# sourceMappingURL=array_plus.is_index_out_of_bound.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array_plus.is_index_out_of_bound.d.ts","sourceRoot":"","sources":["../../src/array/array_plus.is_index_out_of_bound.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAA;AAEvD;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,EAAE,CAAC,SAAS,MAAM,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,KAAK,IAAI,OAAO,CACjH,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,EAClC;IACC,KAAK,EAAE,IAAI,CAAA;IACX,KAAK,EAAE,IAAI,CAAA;CACX,CACD,CAAA"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=array_plus.is_index_out_of_bound.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array_plus.is_index_out_of_bound.js","sourceRoot":"","sources":["../../src/array/array_plus.is_index_out_of_bound.ts"],"names":[],"mappings":""}
@@ -0,0 +1,35 @@
1
+ import type { IsNever } from '../never/is_never.js';
2
+ import type { $Never } from '../never/never.js';
3
+ import type { $SelectionOptions } from '../type_plus/branch/$selection_options.js';
4
+ import type { TypePlusOptions } from '../utils/options.js';
5
+ import type { LooseArrayType } from './loose_array_type.js';
6
+ /**
7
+ * 🎭 *predicate*
8
+ * 🔢 *customizable*
9
+ *
10
+ * Checks if `A` is a readonly array or tuple
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * type R = IsReadonly<readonly string[]> // true
15
+ * type R = IsReadonly<readonly [1, 2, 3, 4, 5]> // true
16
+ *
17
+ * type R = IsReadonly<[1, 2, 3, 4, 5]> // false
18
+ * type R = IsReadonly<readonly string[] | number> // boolean
19
+ * ```
20
+ */
21
+ export type IsReadonly<A, $Options extends IsReadonly.Options = IsReadonly.DefaultOptions> = TypePlusOptions.Merge<$Options, IsReadonly.DefaultOptions> extends infer O extends IsReadonly.Options ? IsNever<A, {
22
+ $then: O['$never'];
23
+ $else: A extends any ? LooseArrayType<A, Readonly<A> extends A ? O['$then'] : O['$else'], O['$notArray']> : never;
24
+ }> : never;
25
+ export declare namespace IsReadonly {
26
+ interface Options extends $Never.$Options, $SelectionOptions, TypePlusOptions.NotArray {
27
+ }
28
+ interface DefaultOptions {
29
+ $then: true;
30
+ $else: false;
31
+ $never: false;
32
+ $notArray: false;
33
+ }
34
+ }
35
+ //# sourceMappingURL=array_plus.is_readonly.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array_plus.is_readonly.d.ts","sourceRoot":"","sources":["../../src/array/array_plus.is_readonly.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAA;AAClF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAE3D;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,EAAE,QAAQ,SAAS,UAAU,CAAC,OAAO,GAAG,UAAU,CAAC,cAAc,IAAI,eAAe,CAAC,KAAK,CACjH,QAAQ,EACR,UAAU,CAAC,cAAc,CACzB,SAAS,MAAM,CAAC,SAAS,UAAU,CAAC,OAAO,GACzC,OAAO,CACP,CAAC,EACD;IACC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAA;IAClB,KAAK,EAAE,CAAC,SAAS,GAAG,GACjB,cAAc,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,GAClF,KAAK,CAAA;CACR,CACD,GACA,KAAK,CAAA;AAER,yBAAiB,UAAU,CAAC;IAC3B,UAAiB,OAAQ,SAAQ,MAAM,CAAC,QAAQ,EAAE,iBAAiB,EAAE,eAAe,CAAC,QAAQ;KAAG;IAEhG,UAAiB,cAAc;QAC9B,KAAK,EAAE,IAAI,CAAA;QACX,KAAK,EAAE,KAAK,CAAA;QACZ,MAAM,EAAE,KAAK,CAAA;QACb,SAAS,EAAE,KAAK,CAAA;KAChB;CACD"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=array_plus.is_readonly.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array_plus.is_readonly.js","sourceRoot":"","sources":["../../src/array/array_plus.is_readonly.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=array_plus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array_plus.js","sourceRoot":"","sources":["../../src/array/array_plus.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import type { CanAssign } from '../index.js';
2
+ import type { CreateTuple } from '../tuple/create_tuple.js';
3
+ import type { UnionOfValues } from './union_of_values.js';
4
+ export type PadStart<A extends readonly unknown[], MaxLength extends number, PadWith = unknown> = MaxLength extends 0 ? A : CanAssign<PadWith, UnionOfValues<A>> extends true ? A : PadStart<[...CreateTuple<MaxLength, PadWith>, ...A], MaxLength, PadWith>;
5
+ //# sourceMappingURL=array_plus.pad_start.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array_plus.pad_start.d.ts","sourceRoot":"","sources":["../../src/array/array_plus.pad_start.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEzD,MAAM,MAAM,QAAQ,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,EAAE,SAAS,SAAS,MAAM,EAAE,OAAO,GAAG,OAAO,IAAI,SAAS,SAAS,CAAC,GAClH,CAAC,GACD,SAAS,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,GAChD,CAAC,GACD,QAAQ,CAAC,CAAC,GAAG,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=array_plus.pad_start.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array_plus.pad_start.js","sourceRoot":"","sources":["../../src/array/array_plus.pad_start.ts"],"names":[],"mappings":""}
@@ -0,0 +1,50 @@
1
+ import type { IsNever } from '../never/is_never.js';
2
+ import type { IsTuple } from '../tuple/is_tuple.js';
3
+ import type { IndexAt } from './array_plus.index_at.js';
4
+ import type { IsArray } from './is_array.js';
5
+ /**
6
+ * ⚗️ *transform*
7
+ *
8
+ * Splits array or tuple `A` into two at the specified `Index`.
9
+ *
10
+ * If the `Index` is out of bounds,
11
+ * it will set to the boundary value.
12
+ *
13
+ * It is the type level `splice()`.
14
+ *
15
+ * @example
16
+ * ```ts
17
+ * SplitAt<[1, 2, 3, 4, 5], 2> // [[1, 2], [3, 4, 5]]
18
+ * SplitAt<[1, 2, 3, 4, 5], -3> // [[1, 2], [3, 4, 5]]
19
+ *
20
+ * SplitAt<[1, 2, 3, 4, 5], 2, 2> // [[1, 2, 5], [3, 4]]
21
+ *
22
+ * SplitAt<[1, 2, 3, 4, 5], 2, 2, ['a', 'b']> // [[1, 2, 'a', 'b', 5], [3, 4]]
23
+ *
24
+ * // out of bound resets to boundary
25
+ * SplitAt<[1, 2, 3, 4, 5], 6> // [[1, 2, 3, 4, 5], []]
26
+ * SplitAt<[1, 2, 3, 4, 5], -6> // [[], [1, 2, 3, 4, 5]]
27
+ * ```
28
+ */
29
+ export type SplitAt<A extends readonly unknown[], Index extends number, DeleteCount extends number | never = never, Insert extends readonly unknown[] | never = never> = IsArray<A, {
30
+ exact: true;
31
+ $then: [A, A];
32
+ $else: SplitAt._<A, [], [], IndexAt._<A, Index>, DeleteCount, Insert>;
33
+ }>;
34
+ export declare namespace SplitAt {
35
+ type _<A extends readonly unknown[], B extends readonly unknown[], C extends readonly unknown[], Index extends number, DeleteCount, Insert extends readonly unknown[]> = 0 extends A['length'] ? IsTuple<Insert, {
36
+ $then: [[...Insert, ...B], C];
37
+ $else: [B, C];
38
+ }> : Index extends B['length'] ? IsNever<DeleteCount, {
39
+ $then: [B, A];
40
+ $else: _D<A, B, C, DeleteCount, Insert>;
41
+ }> : A extends readonly [infer Head, ...infer Tail] ? _<Tail, [...B, Head], [], Index, DeleteCount, Insert> : 'unexpected: A does not extends [Head, ...Tail]';
42
+ type _D<A extends readonly unknown[], B extends readonly unknown[], C extends readonly unknown[], DeleteCount, Insert extends readonly unknown[]> = DeleteCount extends C['length'] ? IsTuple<Insert, {
43
+ $then: [[...B, ...Insert, ...A], C];
44
+ $else: [[...B, ...A], C];
45
+ }> : A extends readonly [infer Head, ...infer Tail] ? _D<Tail, B, [...C, Head], DeleteCount, Insert> : IsTuple<Insert, {
46
+ $then: [[...Insert, ...B], C];
47
+ $else: [B, C];
48
+ }>;
49
+ }
50
+ //# sourceMappingURL=array_plus.split_at.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array_plus.split_at.d.ts","sourceRoot":"","sources":["../../src/array/array_plus.split_at.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAA;AACvD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAE5C;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,MAAM,OAAO,CAClB,CAAC,SAAS,SAAS,OAAO,EAAE,EAC5B,KAAK,SAAS,MAAM,EACpB,WAAW,SAAS,MAAM,GAAG,KAAK,GAAG,KAAK,EAC1C,MAAM,SAAS,SAAS,OAAO,EAAE,GAAG,KAAK,GAAG,KAAK,IAC9C,OAAO,CACV,CAAC,EACD;IACC,KAAK,EAAE,IAAI,CAAA;IACX,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACb,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,CAAA;CACrE,CACD,CAAA;AAED,yBAAiB,OAAO,CAAC;IACxB,KAAY,CAAC,CACZ,CAAC,SAAS,SAAS,OAAO,EAAE,EAC5B,CAAC,SAAS,SAAS,OAAO,EAAE,EAC5B,CAAC,SAAS,SAAS,OAAO,EAAE,EAC5B,KAAK,SAAS,MAAM,EACpB,WAAW,EACX,MAAM,SAAS,SAAS,OAAO,EAAE,IAC9B,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,GACtB,OAAO,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,CAAC,CAAC,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;KAAE,CAAC,GACjE,KAAK,SAAS,CAAC,CAAC,QAAQ,CAAC,GACxB,OAAO,CACP,WAAW,EACX;QACC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QACb,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,CAAA;KACvC,CACD,GACA,CAAC,SAAS,SAAS,CAAC,MAAM,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,GAC7C,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,GACrD,gDAAgD,CAAA;IAErD,KAAY,EAAE,CACb,CAAC,SAAS,SAAS,OAAO,EAAE,EAC5B,CAAC,SAAS,SAAS,OAAO,EAAE,EAC5B,CAAC,SAAS,SAAS,OAAO,EAAE,EAC5B,WAAW,EACX,MAAM,SAAS,SAAS,OAAO,EAAE,IAC9B,WAAW,SAAS,CAAC,CAAC,QAAQ,CAAC,GAChC,OAAO,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;KAAE,CAAC,GAClF,CAAC,SAAS,SAAS,CAAC,MAAM,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,GAC7C,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,GAC9C,OAAO,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,CAAC,CAAC,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;KAAE,CAAC,CAAA;CACrE"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=array_plus.split_at.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array_plus.split_at.js","sourceRoot":"","sources":["../../src/array/array_plus.split_at.ts"],"names":[],"mappings":""}
@@ -0,0 +1,29 @@
1
+ import type { Filter as FilterTuple } from '../tuple/tuple_plus.filter.js';
2
+ import type { Filter as FilterArray } from './array_plus.filter.js';
3
+ /**
4
+ * ⚗️ *transform*
5
+ *
6
+ * Filter the array or tuple `A`, keeping entries satisfying `Criteria`.
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * type R = Filter<[1, 2, '3'], number> // [1, 2]
11
+ * type R = Filter<Array<string | undefined>, string> // string[]
12
+ * ```
13
+ */
14
+ export type Filter<A extends readonly unknown[], Criteria> = number extends A['length'] ? FilterArray<A, Criteria> : FilterTuple<A, Criteria>;
15
+ /**
16
+ * ⚗️ *transform*
17
+ * 👽 *alias*
18
+ *
19
+ * Keeps entries satisfying `Criteria` in array or tuple `A`.
20
+ *
21
+ * @alias of [Filter](./filter.ts)
22
+ * @example
23
+ * ```ts
24
+ * type R = KeepMatch<[1, 2, 3], number> // [1, 2]
25
+ * type R = KeepMatch<Array<string|undefined>, string> // string[]
26
+ * ```
27
+ */
28
+ export type KeepMatch<A extends readonly unknown[], Criteria> = Filter<A, Criteria>;
29
+ //# sourceMappingURL=filter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../src/array/filter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,+BAA+B,CAAA;AAC1E,OAAO,KAAK,EAAE,MAAM,IAAI,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAEnE;;;;;;;;;;GAUG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,EAAE,QAAQ,IAAI,MAAM,SAAS,CAAC,CAAC,QAAQ,CAAC,GACpF,WAAW,CAAC,CAAC,EAAE,QAAQ,CAAC,GACxB,WAAW,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA;AAE3B;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,EAAE,QAAQ,IAAI,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=filter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter.js","sourceRoot":"","sources":["../../src/array/filter.ts"],"names":[],"mappings":""}
@@ -0,0 +1,65 @@
1
+ import type { IsTuple } from '../tuple/is_tuple.js';
2
+ import type { Find as TupleFind } from '../tuple/tuple_plus.find.js';
3
+ import type { Find as ArrayFind } from './array_plus.find.js';
4
+ /**
5
+ * 🦴 *utilities*
6
+ * 🔢 *customizable*
7
+ *
8
+ * Find the first type in the array or tuple `A` that matches `Criteria`.
9
+ *
10
+ * If the `Criteria` is not met, it will return `never'.
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * type R = FindFirst<[true, 1, 'x', 3], string> // 'x'
15
+ * type R = FindFirst<[true, 1, 'x', 3], number> // 1
16
+ * type R = FindFirst<[string, number, 1], 1> // widen: 1 | undefined
17
+ * type R = FindFirst<[true, number | string], string> // unionMiss: string | undefined
18
+ * type R = FindFirst<Array<string>, string> // string
19
+ * type R = FindFirst<Array<1 | 2 | 'x'>, number> // 1 | 2 | undefined
20
+ * type R = FindFirst<Array<string | number>, number | string> // string | number
21
+ * type R = FindFirst<Array<number>, 1> // widen: 1 | undefined
22
+ * type R = FindFirst<Array<string | number>, number> // unionMiss: number | undefined
23
+ *
24
+ * type R = FindFirst<[true, 1, 'x'], 2> // never
25
+ * type R = FindFirst<string[], number> // never
26
+ * ```
27
+ *
28
+ * @typeParam Options['widen'] performs widen match.
29
+ * Default to `true`.
30
+ * With widen match, a narrowed type will match its widen type.
31
+ * e.g. matching `1` against `number` yields `1 | undefined`
32
+ *
33
+ * The widen behavior can be customized by `Options['$widen']`
34
+ *
35
+ * @typeParam Options['caseEmptyTuple'] return type when `A` is an empty tuple.
36
+ * Default to `never`.
37
+ *
38
+ * @typeParam Options['$never'] return type when `A` is `never`. Default to `never`.
39
+ *
40
+ * @typeParam Options['$noMatch'] Return value when `T` does not match `Criteria`.
41
+ * Default to `never`.
42
+ *
43
+ * @typeParam Options['$widen'] return type when `T` in `A` is a widen type of `Criteria`.
44
+ * Default to `Criteria | undefined`.
45
+ * Set it to `never` for a more type-centric behavior
46
+ *
47
+ * @typeParam Options['$unionMiss'] Return value when a branch of the union `T` does not match `Criteria`.
48
+ * Default to `undefined`.
49
+ * Since it is a union, the result will be join to the matched branch as union.
50
+ */
51
+ export type FindFirst<A extends readonly unknown[], Criteria, Options extends FindFirst.Options = FindFirst.DefaultOptions<Criteria>> = IsTuple<A, {
52
+ $then: TupleFind<A, Criteria, Options>;
53
+ $else: ArrayFind<A, Criteria, Options>;
54
+ }>;
55
+ export declare namespace FindFirst {
56
+ interface Options extends ArrayFind.Options, TupleFind.Options {
57
+ }
58
+ interface DefaultOptions<Criteria> extends ArrayFind.DefaultOptions<Criteria>, TupleFind.DefaultOptions<Criteria> {
59
+ }
60
+ }
61
+ /**
62
+ * @deprecated use FindFirst
63
+ */
64
+ export type First<A extends any[], Criteria> = FindFirst<A, Criteria>;
65
+ //# sourceMappingURL=find_first.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find_first.d.ts","sourceRoot":"","sources":["../../src/array/find_first.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,IAAI,IAAI,SAAS,EAAE,MAAM,6BAA6B,CAAA;AACpE,OAAO,KAAK,EAAE,IAAI,IAAI,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAE7D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,MAAM,MAAM,SAAS,CACpB,CAAC,SAAS,SAAS,OAAO,EAAE,EAC5B,QAAQ,EACR,OAAO,SAAS,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC,cAAc,CAAC,QAAQ,CAAC,IACnE,OAAO,CACV,CAAC,EACD;IACC,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;IACtC,KAAK,EAAE,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;CACtC,CACD,CAAA;AAED,yBAAiB,SAAS,CAAC;IAC1B,UAAiB,OAAQ,SAAQ,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO;KAAG;IACxE,UAAiB,cAAc,CAAC,QAAQ,CACvC,SAAQ,SAAS,CAAC,cAAc,CAAC,QAAQ,CAAC,EACzC,SAAS,CAAC,cAAc,CAAC,QAAQ,CAAC;KAAG;CACvC;AAED;;GAEG;AACH,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,QAAQ,IAAI,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=find_first.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"find_first.js","sourceRoot":"","sources":["../../src/array/find_first.ts"],"names":[],"mappings":""}
@@ -0,0 +1,33 @@
1
+ import type { IsNever } from '../never/is_never.js';
2
+ import type { $Never } from '../never/never.js';
3
+ import type { $Else, $SelectionBranch, $Then } from '../type_plus/branch/$selection.js';
4
+ /**
5
+ * 🦴 *utilities*
6
+ * 🔢 *customizable*
7
+ *
8
+ * Gets the first entry in the tuple or the type of array `T`.
9
+ *
10
+ * @example
11
+ * ```ts
12
+ * type R = Head<[1, 2, 3]> // 1
13
+ * type R = Head<string[]> // string
14
+ *
15
+ * type R = Head<[]> // never
16
+ * ```
17
+ *
18
+ * @typeParam Options['$never'] Return type when `T` is `never`.
19
+ * Default to `never`.
20
+ *
21
+ * @typeParam Options['caseEmptyTuple'] Return type when `T` is `[]`.
22
+ * Default to `never`.
23
+ */
24
+ export type Head<T extends readonly unknown[], Options extends Head.Options = Head.DefaultOptions> = IsNever<T, $SelectionBranch> extends infer R ? R extends $Then ? Options['$never'] : R extends $Else ? T['length'] extends 0 ? Options['caseEmptyTuple'] : T[0] : never : never;
25
+ export declare namespace Head {
26
+ interface Options extends $Never.$Options {
27
+ caseEmptyTuple?: unknown;
28
+ }
29
+ interface DefaultOptions extends $Never.$Default {
30
+ caseEmptyTuple: never;
31
+ }
32
+ }
33
+ //# sourceMappingURL=head.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"head.d.ts","sourceRoot":"","sources":["../../src/array/head.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AACnD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,mCAAmC,CAAA;AAEvF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,IAAI,CAAC,CAAC,SAAS,SAAS,OAAO,EAAE,EAAE,OAAO,SAAS,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,cAAc,IAAI,OAAO,CAC3G,CAAC,EACD,gBAAgB,CAChB,SAAS,MAAM,CAAC,GACd,CAAC,SAAS,KAAK,GACd,OAAO,CAAC,QAAQ,CAAC,GACjB,CAAC,SAAS,KAAK,GACd,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,GACpB,OAAO,CAAC,gBAAgB,CAAC,GACzB,CAAC,CAAC,CAAC,CAAC,GACL,KAAK,GACP,KAAK,CAAA;AAER,yBAAiB,IAAI,CAAC;IACrB,UAAiB,OAAQ,SAAQ,MAAM,CAAC,QAAQ;QAC/C,cAAc,CAAC,EAAE,OAAO,CAAA;KACxB;IAED,UAAiB,cAAe,SAAQ,MAAM,CAAC,QAAQ;QACtD,cAAc,EAAE,KAAK,CAAA;KACrB;CACD"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=head.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"head.js","sourceRoot":"","sources":["../../src/array/head.ts"],"names":[],"mappings":""}
@@ -0,0 +1,14 @@
1
+ import type { KeyTypes } from '../object/index.js';
2
+ import type { Tail } from '../tuple/tail.js';
3
+ /**
4
+ * 🦴 *utilities*
5
+ *
6
+ * Gets the intersect of properties of the elements in `A`.
7
+ */
8
+ export type IntersectOfProps<A extends readonly Record<any, unknown>[], P extends KeyTypes> = number extends A['length'] ? A[0][P] : A['length'] extends 0 ? never : A['length'] extends 1 ? A[0][P] : A[0][P] & IntersectOfProps<Tail<A>, P>;
9
+ /**
10
+ * Gets the intersect of properties of the elements in `A`
11
+ * This will be deprecated in 4.0. Please use IntersectOfProps instead.
12
+ */
13
+ export type MapToProp<A extends Record<any, any>[], P extends KeyTypes> = IntersectOfProps<A, P>;
14
+ //# sourceMappingURL=intersect_of_props.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intersect_of_props.d.ts","sourceRoot":"","sources":["../../src/array/intersect_of_props.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AAE5C;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,SAAS,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,SAAS,QAAQ,IAAI,MAAM,SAAS,CAAC,CAAC,QAAQ,CAAC,GACrH,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GACP,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,GACpB,KAAK,GACL,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,GACpB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GACP,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAE3C;;;GAGG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,SAAS,QAAQ,IAAI,gBAAgB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=intersect_of_props.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intersect_of_props.js","sourceRoot":"","sources":["../../src/array/intersect_of_props.ts"],"names":[],"mappings":""}