ts-data-forge 5.0.1 → 5.1.1

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 (539) hide show
  1. package/README.md +101 -50
  2. package/dist/array/impl/array-utils-creation.d.mts +14 -0
  3. package/dist/array/impl/array-utils-creation.d.mts.map +1 -1
  4. package/dist/array/impl/array-utils-creation.mjs +12 -0
  5. package/dist/array/impl/array-utils-creation.mjs.map +1 -1
  6. package/dist/array/impl/array-utils-element-access.d.mts +10 -0
  7. package/dist/array/impl/array-utils-element-access.d.mts.map +1 -1
  8. package/dist/array/impl/array-utils-element-access.mjs +6 -0
  9. package/dist/array/impl/array-utils-element-access.mjs.map +1 -1
  10. package/dist/array/impl/array-utils-modification.d.mts +14 -0
  11. package/dist/array/impl/array-utils-modification.d.mts.map +1 -1
  12. package/dist/array/impl/array-utils-modification.mjs.map +1 -1
  13. package/dist/array/impl/array-utils-reducing-value.d.mts +34 -10
  14. package/dist/array/impl/array-utils-reducing-value.d.mts.map +1 -1
  15. package/dist/array/impl/array-utils-reducing-value.mjs.map +1 -1
  16. package/dist/array/impl/array-utils-search.d.mts +34 -4
  17. package/dist/array/impl/array-utils-search.d.mts.map +1 -1
  18. package/dist/array/impl/array-utils-search.mjs.map +1 -1
  19. package/dist/array/impl/array-utils-set-op.d.mts +20 -7
  20. package/dist/array/impl/array-utils-set-op.d.mts.map +1 -1
  21. package/dist/array/impl/array-utils-set-op.mjs +20 -7
  22. package/dist/array/impl/array-utils-set-op.mjs.map +1 -1
  23. package/dist/array/impl/array-utils-size.d.mts +5 -2
  24. package/dist/array/impl/array-utils-size.d.mts.map +1 -1
  25. package/dist/array/impl/array-utils-size.mjs +5 -2
  26. package/dist/array/impl/array-utils-size.mjs.map +1 -1
  27. package/dist/array/impl/array-utils-slice-clamped.d.mts +2 -0
  28. package/dist/array/impl/array-utils-slice-clamped.d.mts.map +1 -1
  29. package/dist/array/impl/array-utils-slice-clamped.mjs.map +1 -1
  30. package/dist/array/impl/array-utils-slicing.d.mts +17 -2
  31. package/dist/array/impl/array-utils-slicing.d.mts.map +1 -1
  32. package/dist/array/impl/array-utils-slicing.mjs +9 -2
  33. package/dist/array/impl/array-utils-slicing.mjs.map +1 -1
  34. package/dist/array/impl/array-utils-transformation.d.mts +27 -0
  35. package/dist/array/impl/array-utils-transformation.d.mts.map +1 -1
  36. package/dist/array/impl/array-utils-transformation.mjs +6 -0
  37. package/dist/array/impl/array-utils-transformation.mjs.map +1 -1
  38. package/dist/array/impl/array-utils-validation.d.mts +35 -18
  39. package/dist/array/impl/array-utils-validation.d.mts.map +1 -1
  40. package/dist/array/impl/array-utils-validation.mjs +25 -14
  41. package/dist/array/impl/array-utils-validation.mjs.map +1 -1
  42. package/dist/collections/imap-mapped.mjs.map +1 -1
  43. package/dist/collections/imap.d.mts +35 -15
  44. package/dist/collections/imap.d.mts.map +1 -1
  45. package/dist/collections/imap.mjs +5 -3
  46. package/dist/collections/imap.mjs.map +1 -1
  47. package/dist/collections/iset-mapped.d.mts +46 -19
  48. package/dist/collections/iset-mapped.d.mts.map +1 -1
  49. package/dist/collections/iset-mapped.mjs +9 -2
  50. package/dist/collections/iset-mapped.mjs.map +1 -1
  51. package/dist/collections/iset.d.mts +48 -19
  52. package/dist/collections/iset.d.mts.map +1 -1
  53. package/dist/collections/iset.mjs +9 -2
  54. package/dist/collections/iset.mjs.map +1 -1
  55. package/dist/collections/queue.d.mts +65 -25
  56. package/dist/collections/queue.d.mts.map +1 -1
  57. package/dist/collections/queue.mjs +13 -5
  58. package/dist/collections/queue.mjs.map +1 -1
  59. package/dist/collections/stack.d.mts +60 -25
  60. package/dist/collections/stack.d.mts.map +1 -1
  61. package/dist/collections/stack.mjs +12 -5
  62. package/dist/collections/stack.mjs.map +1 -1
  63. package/dist/entry-point.mjs +1 -1
  64. package/dist/functional/match.d.mts +1 -1
  65. package/dist/functional/match.d.mts.map +1 -1
  66. package/dist/functional/match.mjs.map +1 -1
  67. package/dist/functional/optional/impl/optional-expect-to-be.d.mts +3 -2
  68. package/dist/functional/optional/impl/optional-expect-to-be.d.mts.map +1 -1
  69. package/dist/functional/optional/impl/optional-expect-to-be.mjs.map +1 -1
  70. package/dist/functional/optional/impl/optional-filter.d.mts +3 -0
  71. package/dist/functional/optional/impl/optional-filter.d.mts.map +1 -1
  72. package/dist/functional/optional/impl/optional-filter.mjs.map +1 -1
  73. package/dist/functional/optional/impl/optional-flat-map.d.mts +2 -0
  74. package/dist/functional/optional/impl/optional-flat-map.d.mts.map +1 -1
  75. package/dist/functional/optional/impl/optional-flat-map.mjs.map +1 -1
  76. package/dist/functional/optional/impl/optional-from-nullable.d.mts +2 -0
  77. package/dist/functional/optional/impl/optional-from-nullable.d.mts.map +1 -1
  78. package/dist/functional/optional/impl/optional-from-nullable.mjs +2 -0
  79. package/dist/functional/optional/impl/optional-from-nullable.mjs.map +1 -1
  80. package/dist/functional/optional/impl/optional-is-none.d.mts +1 -1
  81. package/dist/functional/optional/impl/optional-is-none.mjs +1 -1
  82. package/dist/functional/optional/impl/optional-is-optional.d.mts +4 -2
  83. package/dist/functional/optional/impl/optional-is-optional.d.mts.map +1 -1
  84. package/dist/functional/optional/impl/optional-is-optional.mjs +4 -2
  85. package/dist/functional/optional/impl/optional-is-optional.mjs.map +1 -1
  86. package/dist/functional/optional/impl/optional-is-some.d.mts +2 -1
  87. package/dist/functional/optional/impl/optional-is-some.d.mts.map +1 -1
  88. package/dist/functional/optional/impl/optional-is-some.mjs +2 -1
  89. package/dist/functional/optional/impl/optional-is-some.mjs.map +1 -1
  90. package/dist/functional/optional/impl/optional-map.d.mts +2 -0
  91. package/dist/functional/optional/impl/optional-map.d.mts.map +1 -1
  92. package/dist/functional/optional/impl/optional-map.mjs.map +1 -1
  93. package/dist/functional/optional/impl/optional-none.d.mts +4 -2
  94. package/dist/functional/optional/impl/optional-none.d.mts.map +1 -1
  95. package/dist/functional/optional/impl/optional-none.mjs +4 -2
  96. package/dist/functional/optional/impl/optional-none.mjs.map +1 -1
  97. package/dist/functional/optional/impl/optional-or-else.d.mts +4 -0
  98. package/dist/functional/optional/impl/optional-or-else.d.mts.map +1 -1
  99. package/dist/functional/optional/impl/optional-or-else.mjs.map +1 -1
  100. package/dist/functional/optional/impl/optional-some.d.mts +5 -3
  101. package/dist/functional/optional/impl/optional-some.d.mts.map +1 -1
  102. package/dist/functional/optional/impl/optional-some.mjs +4 -2
  103. package/dist/functional/optional/impl/optional-some.mjs.map +1 -1
  104. package/dist/functional/optional/impl/optional-to-nullable.d.mts +4 -2
  105. package/dist/functional/optional/impl/optional-to-nullable.d.mts.map +1 -1
  106. package/dist/functional/optional/impl/optional-to-nullable.mjs +4 -2
  107. package/dist/functional/optional/impl/optional-to-nullable.mjs.map +1 -1
  108. package/dist/functional/optional/impl/optional-unwrap-or.d.mts +7 -4
  109. package/dist/functional/optional/impl/optional-unwrap-or.d.mts.map +1 -1
  110. package/dist/functional/optional/impl/optional-unwrap-or.mjs.map +1 -1
  111. package/dist/functional/optional/impl/optional-unwrap-throw.d.mts +2 -1
  112. package/dist/functional/optional/impl/optional-unwrap-throw.d.mts.map +1 -1
  113. package/dist/functional/optional/impl/optional-unwrap-throw.mjs +2 -1
  114. package/dist/functional/optional/impl/optional-unwrap-throw.mjs.map +1 -1
  115. package/dist/functional/optional/impl/optional-unwrap.d.mts +4 -2
  116. package/dist/functional/optional/impl/optional-unwrap.d.mts.map +1 -1
  117. package/dist/functional/optional/impl/optional-unwrap.mjs.map +1 -1
  118. package/dist/functional/optional/impl/optional-zip.d.mts +3 -1
  119. package/dist/functional/optional/impl/optional-zip.d.mts.map +1 -1
  120. package/dist/functional/optional/impl/optional-zip.mjs +3 -1
  121. package/dist/functional/optional/impl/optional-zip.mjs.map +1 -1
  122. package/dist/functional/pipe.d.mts +2 -2
  123. package/dist/functional/result/impl/result-err.d.mts +4 -2
  124. package/dist/functional/result/impl/result-err.d.mts.map +1 -1
  125. package/dist/functional/result/impl/result-err.mjs +3 -1
  126. package/dist/functional/result/impl/result-err.mjs.map +1 -1
  127. package/dist/functional/result/impl/result-expect-to-be.d.mts +3 -2
  128. package/dist/functional/result/impl/result-expect-to-be.d.mts.map +1 -1
  129. package/dist/functional/result/impl/result-expect-to-be.mjs.map +1 -1
  130. package/dist/functional/result/impl/result-flat-map.d.mts +5 -0
  131. package/dist/functional/result/impl/result-flat-map.d.mts.map +1 -1
  132. package/dist/functional/result/impl/result-flat-map.mjs.map +1 -1
  133. package/dist/functional/result/impl/result-fold.d.mts +4 -0
  134. package/dist/functional/result/impl/result-fold.d.mts.map +1 -1
  135. package/dist/functional/result/impl/result-fold.mjs.map +1 -1
  136. package/dist/functional/result/impl/result-from-promise.d.mts +4 -1
  137. package/dist/functional/result/impl/result-from-promise.d.mts.map +1 -1
  138. package/dist/functional/result/impl/result-from-promise.mjs +4 -1
  139. package/dist/functional/result/impl/result-from-promise.mjs.map +1 -1
  140. package/dist/functional/result/impl/result-from-throwable.d.mts +3 -1
  141. package/dist/functional/result/impl/result-from-throwable.d.mts.map +1 -1
  142. package/dist/functional/result/impl/result-from-throwable.mjs +3 -1
  143. package/dist/functional/result/impl/result-from-throwable.mjs.map +1 -1
  144. package/dist/functional/result/impl/result-is-err.d.mts +4 -2
  145. package/dist/functional/result/impl/result-is-err.d.mts.map +1 -1
  146. package/dist/functional/result/impl/result-is-err.mjs +4 -2
  147. package/dist/functional/result/impl/result-is-err.mjs.map +1 -1
  148. package/dist/functional/result/impl/result-is-ok.d.mts +4 -2
  149. package/dist/functional/result/impl/result-is-ok.d.mts.map +1 -1
  150. package/dist/functional/result/impl/result-is-ok.mjs +4 -2
  151. package/dist/functional/result/impl/result-is-ok.mjs.map +1 -1
  152. package/dist/functional/result/impl/result-is-result.d.mts +7 -3
  153. package/dist/functional/result/impl/result-is-result.d.mts.map +1 -1
  154. package/dist/functional/result/impl/result-is-result.mjs +7 -3
  155. package/dist/functional/result/impl/result-is-result.mjs.map +1 -1
  156. package/dist/functional/result/impl/result-map-err.d.mts +3 -0
  157. package/dist/functional/result/impl/result-map-err.d.mts.map +1 -1
  158. package/dist/functional/result/impl/result-map-err.mjs.map +1 -1
  159. package/dist/functional/result/impl/result-map.d.mts +4 -0
  160. package/dist/functional/result/impl/result-map.d.mts.map +1 -1
  161. package/dist/functional/result/impl/result-map.mjs.map +1 -1
  162. package/dist/functional/result/impl/result-ok.d.mts +4 -2
  163. package/dist/functional/result/impl/result-ok.d.mts.map +1 -1
  164. package/dist/functional/result/impl/result-ok.mjs +3 -1
  165. package/dist/functional/result/impl/result-ok.mjs.map +1 -1
  166. package/dist/functional/result/impl/result-or-else.d.mts +4 -0
  167. package/dist/functional/result/impl/result-or-else.d.mts.map +1 -1
  168. package/dist/functional/result/impl/result-or-else.mjs.map +1 -1
  169. package/dist/functional/result/impl/result-swap.d.mts +2 -0
  170. package/dist/functional/result/impl/result-swap.d.mts.map +1 -1
  171. package/dist/functional/result/impl/result-swap.mjs +2 -0
  172. package/dist/functional/result/impl/result-swap.mjs.map +1 -1
  173. package/dist/functional/result/impl/result-to-optional.d.mts +2 -0
  174. package/dist/functional/result/impl/result-to-optional.d.mts.map +1 -1
  175. package/dist/functional/result/impl/result-to-optional.mjs +2 -0
  176. package/dist/functional/result/impl/result-to-optional.mjs.map +1 -1
  177. package/dist/functional/result/impl/result-unwrap-err-or.d.mts +7 -4
  178. package/dist/functional/result/impl/result-unwrap-err-or.d.mts.map +1 -1
  179. package/dist/functional/result/impl/result-unwrap-err-or.mjs.map +1 -1
  180. package/dist/functional/result/impl/result-unwrap-err-throw.d.mts +3 -1
  181. package/dist/functional/result/impl/result-unwrap-err-throw.d.mts.map +1 -1
  182. package/dist/functional/result/impl/result-unwrap-err-throw.mjs +3 -1
  183. package/dist/functional/result/impl/result-unwrap-err-throw.mjs.map +1 -1
  184. package/dist/functional/result/impl/result-unwrap-err.d.mts +3 -2
  185. package/dist/functional/result/impl/result-unwrap-err.d.mts.map +1 -1
  186. package/dist/functional/result/impl/result-unwrap-err.mjs +3 -2
  187. package/dist/functional/result/impl/result-unwrap-err.mjs.map +1 -1
  188. package/dist/functional/result/impl/result-unwrap-ok-or.d.mts +7 -4
  189. package/dist/functional/result/impl/result-unwrap-ok-or.d.mts.map +1 -1
  190. package/dist/functional/result/impl/result-unwrap-ok-or.mjs.map +1 -1
  191. package/dist/functional/result/impl/result-unwrap-ok.d.mts +3 -2
  192. package/dist/functional/result/impl/result-unwrap-ok.d.mts.map +1 -1
  193. package/dist/functional/result/impl/result-unwrap-ok.mjs.map +1 -1
  194. package/dist/functional/result/impl/result-unwrap-throw.d.mts +3 -1
  195. package/dist/functional/result/impl/result-unwrap-throw.d.mts.map +1 -1
  196. package/dist/functional/result/impl/result-unwrap-throw.mjs +3 -1
  197. package/dist/functional/result/impl/result-unwrap-throw.mjs.map +1 -1
  198. package/dist/functional/result/impl/result-zip.d.mts +3 -1
  199. package/dist/functional/result/impl/result-zip.d.mts.map +1 -1
  200. package/dist/functional/result/impl/result-zip.mjs +3 -1
  201. package/dist/functional/result/impl/result-zip.mjs.map +1 -1
  202. package/dist/functional/ternary-result/impl/ternary-result-err.d.mts +3 -2
  203. package/dist/functional/ternary-result/impl/ternary-result-err.d.mts.map +1 -1
  204. package/dist/functional/ternary-result/impl/ternary-result-err.mjs +2 -1
  205. package/dist/functional/ternary-result/impl/ternary-result-err.mjs.map +1 -1
  206. package/dist/functional/ternary-result/impl/ternary-result-expect-to-be.d.mts +1 -0
  207. package/dist/functional/ternary-result/impl/ternary-result-expect-to-be.d.mts.map +1 -1
  208. package/dist/functional/ternary-result/impl/ternary-result-expect-to-be.mjs.map +1 -1
  209. package/dist/functional/ternary-result/impl/ternary-result-flat-map.d.mts +4 -0
  210. package/dist/functional/ternary-result/impl/ternary-result-flat-map.d.mts.map +1 -1
  211. package/dist/functional/ternary-result/impl/ternary-result-flat-map.mjs.map +1 -1
  212. package/dist/functional/ternary-result/impl/ternary-result-fold.d.mts +2 -0
  213. package/dist/functional/ternary-result/impl/ternary-result-fold.d.mts.map +1 -1
  214. package/dist/functional/ternary-result/impl/ternary-result-fold.mjs.map +1 -1
  215. package/dist/functional/ternary-result/impl/ternary-result-from-promise.d.mts +3 -1
  216. package/dist/functional/ternary-result/impl/ternary-result-from-promise.d.mts.map +1 -1
  217. package/dist/functional/ternary-result/impl/ternary-result-from-promise.mjs +3 -1
  218. package/dist/functional/ternary-result/impl/ternary-result-from-promise.mjs.map +1 -1
  219. package/dist/functional/ternary-result/impl/ternary-result-from-throwable.d.mts +3 -1
  220. package/dist/functional/ternary-result/impl/ternary-result-from-throwable.d.mts.map +1 -1
  221. package/dist/functional/ternary-result/impl/ternary-result-from-throwable.mjs +3 -1
  222. package/dist/functional/ternary-result/impl/ternary-result-from-throwable.mjs.map +1 -1
  223. package/dist/functional/ternary-result/impl/ternary-result-is-ok.d.mts +1 -0
  224. package/dist/functional/ternary-result/impl/ternary-result-is-ok.d.mts.map +1 -1
  225. package/dist/functional/ternary-result/impl/ternary-result-is-ok.mjs +1 -0
  226. package/dist/functional/ternary-result/impl/ternary-result-is-ok.mjs.map +1 -1
  227. package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.d.mts +7 -3
  228. package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.d.mts.map +1 -1
  229. package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.mjs +7 -3
  230. package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.mjs.map +1 -1
  231. package/dist/functional/ternary-result/impl/ternary-result-is-warn.d.mts +1 -0
  232. package/dist/functional/ternary-result/impl/ternary-result-is-warn.d.mts.map +1 -1
  233. package/dist/functional/ternary-result/impl/ternary-result-is-warn.mjs +1 -0
  234. package/dist/functional/ternary-result/impl/ternary-result-is-warn.mjs.map +1 -1
  235. package/dist/functional/ternary-result/impl/ternary-result-map-err.d.mts +3 -0
  236. package/dist/functional/ternary-result/impl/ternary-result-map-err.d.mts.map +1 -1
  237. package/dist/functional/ternary-result/impl/ternary-result-map-err.mjs.map +1 -1
  238. package/dist/functional/ternary-result/impl/ternary-result-map-warn.d.mts +3 -0
  239. package/dist/functional/ternary-result/impl/ternary-result-map-warn.d.mts.map +1 -1
  240. package/dist/functional/ternary-result/impl/ternary-result-map-warn.mjs.map +1 -1
  241. package/dist/functional/ternary-result/impl/ternary-result-map.d.mts +6 -0
  242. package/dist/functional/ternary-result/impl/ternary-result-map.d.mts.map +1 -1
  243. package/dist/functional/ternary-result/impl/ternary-result-map.mjs.map +1 -1
  244. package/dist/functional/ternary-result/impl/ternary-result-ok.d.mts +1 -1
  245. package/dist/functional/ternary-result/impl/ternary-result-ok.d.mts.map +1 -1
  246. package/dist/functional/ternary-result/impl/ternary-result-ok.mjs.map +1 -1
  247. package/dist/functional/ternary-result/impl/ternary-result-or-else.d.mts +2 -0
  248. package/dist/functional/ternary-result/impl/ternary-result-or-else.d.mts.map +1 -1
  249. package/dist/functional/ternary-result/impl/ternary-result-or-else.mjs.map +1 -1
  250. package/dist/functional/ternary-result/impl/ternary-result-to-optional.d.mts +2 -0
  251. package/dist/functional/ternary-result/impl/ternary-result-to-optional.d.mts.map +1 -1
  252. package/dist/functional/ternary-result/impl/ternary-result-to-optional.mjs +2 -0
  253. package/dist/functional/ternary-result/impl/ternary-result-to-optional.mjs.map +1 -1
  254. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-or.d.mts +2 -0
  255. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-or.d.mts.map +1 -1
  256. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-or.mjs.map +1 -1
  257. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.d.mts +1 -0
  258. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.d.mts.map +1 -1
  259. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mjs +1 -0
  260. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mjs.map +1 -1
  261. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.d.mts +2 -0
  262. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.d.mts.map +1 -1
  263. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.mjs +2 -0
  264. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.mjs.map +1 -1
  265. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok-or.d.mts +2 -0
  266. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok-or.d.mts.map +1 -1
  267. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok-or.mjs.map +1 -1
  268. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok.d.mts +2 -0
  269. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok.d.mts.map +1 -1
  270. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok.mjs.map +1 -1
  271. package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.d.mts +1 -0
  272. package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.d.mts.map +1 -1
  273. package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.mjs +1 -0
  274. package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.mjs.map +1 -1
  275. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-or.d.mts +2 -0
  276. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-or.d.mts.map +1 -1
  277. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-or.mjs.map +1 -1
  278. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.d.mts +1 -0
  279. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.d.mts.map +1 -1
  280. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mjs +1 -0
  281. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mjs.map +1 -1
  282. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.d.mts +2 -0
  283. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.d.mts.map +1 -1
  284. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.mjs +2 -0
  285. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.mjs.map +1 -1
  286. package/dist/functional/ternary-result/impl/ternary-result-warn.d.mts +1 -1
  287. package/dist/functional/ternary-result/impl/ternary-result-warn.d.mts.map +1 -1
  288. package/dist/functional/ternary-result/impl/ternary-result-warn.mjs.map +1 -1
  289. package/dist/functional/ternary-result/impl/ternary-result-zip.d.mts +4 -0
  290. package/dist/functional/ternary-result/impl/ternary-result-zip.d.mts.map +1 -1
  291. package/dist/functional/ternary-result/impl/ternary-result-zip.mjs +4 -0
  292. package/dist/functional/ternary-result/impl/ternary-result-zip.mjs.map +1 -1
  293. package/dist/globals.d.mts +12 -1
  294. package/dist/guard/has-key.d.mts +6 -3
  295. package/dist/guard/has-key.d.mts.map +1 -1
  296. package/dist/guard/has-key.mjs +2 -2
  297. package/dist/guard/index.mjs +1 -1
  298. package/dist/guard/is-record.d.mts +31 -0
  299. package/dist/guard/is-record.d.mts.map +1 -1
  300. package/dist/guard/is-record.mjs +32 -1
  301. package/dist/guard/is-record.mjs.map +1 -1
  302. package/dist/guard/is-type.d.mts +3 -0
  303. package/dist/guard/is-type.d.mts.map +1 -1
  304. package/dist/guard/is-type.mjs +3 -0
  305. package/dist/guard/is-type.mjs.map +1 -1
  306. package/dist/guard/key-is-in.d.mts +3 -2
  307. package/dist/guard/key-is-in.d.mts.map +1 -1
  308. package/dist/guard/key-is-in.mjs +3 -2
  309. package/dist/guard/key-is-in.mjs.map +1 -1
  310. package/dist/index.mjs +1 -1
  311. package/dist/iterator/range.d.mts +4 -0
  312. package/dist/iterator/range.d.mts.map +1 -1
  313. package/dist/iterator/range.mjs +1 -0
  314. package/dist/iterator/range.mjs.map +1 -1
  315. package/dist/json/json.d.mts +42 -21
  316. package/dist/json/json.d.mts.map +1 -1
  317. package/dist/json/json.mjs +42 -21
  318. package/dist/json/json.mjs.map +1 -1
  319. package/dist/number/branded-types/int.d.mts +33 -19
  320. package/dist/number/branded-types/int.d.mts.map +1 -1
  321. package/dist/number/branded-types/int.mjs +33 -19
  322. package/dist/number/branded-types/int.mjs.map +1 -1
  323. package/dist/number/branded-types/non-zero-safe-int.mjs +2 -2
  324. package/dist/number/branded-types/positive-int.d.mts +34 -20
  325. package/dist/number/branded-types/positive-int.d.mts.map +1 -1
  326. package/dist/number/branded-types/positive-int.mjs +34 -20
  327. package/dist/number/branded-types/positive-int.mjs.map +1 -1
  328. package/dist/number/branded-types/positive-safe-int.d.mts +47 -26
  329. package/dist/number/branded-types/positive-safe-int.d.mts.map +1 -1
  330. package/dist/number/branded-types/positive-safe-int.mjs +48 -27
  331. package/dist/number/branded-types/positive-safe-int.mjs.map +1 -1
  332. package/dist/number/branded-types/safe-int.d.mts +48 -27
  333. package/dist/number/branded-types/safe-int.d.mts.map +1 -1
  334. package/dist/number/branded-types/safe-int.mjs +50 -29
  335. package/dist/number/branded-types/safe-int.mjs.map +1 -1
  336. package/dist/number/branded-types/safe-uint.mjs +1 -1
  337. package/dist/number/branded-types/uint.d.mts +31 -19
  338. package/dist/number/branded-types/uint.d.mts.map +1 -1
  339. package/dist/number/branded-types/uint.mjs +31 -19
  340. package/dist/number/branded-types/uint.mjs.map +1 -1
  341. package/dist/number/num.d.mts +29 -20
  342. package/dist/number/num.d.mts.map +1 -1
  343. package/dist/number/num.mjs +24 -17
  344. package/dist/number/num.mjs.map +1 -1
  345. package/dist/number/refined-number-utils.d.mts +33 -11
  346. package/dist/number/refined-number-utils.d.mts.map +1 -1
  347. package/dist/number/refined-number-utils.mjs +33 -11
  348. package/dist/number/refined-number-utils.mjs.map +1 -1
  349. package/dist/object/object.d.mts +12 -3
  350. package/dist/object/object.d.mts.map +1 -1
  351. package/dist/object/object.mjs +10 -3
  352. package/dist/object/object.mjs.map +1 -1
  353. package/dist/others/map-nullable.mjs.map +1 -1
  354. package/dist/others/tuple.d.mts +14 -3
  355. package/dist/others/tuple.d.mts.map +1 -1
  356. package/dist/others/tuple.mjs +14 -3
  357. package/dist/others/tuple.mjs.map +1 -1
  358. package/dist/others/unknown-to-string.d.mts.map +1 -1
  359. package/dist/others/unknown-to-string.mjs.map +1 -1
  360. package/dist/promise/promise.d.mts +8 -4
  361. package/dist/promise/promise.d.mts.map +1 -1
  362. package/dist/promise/promise.mjs +8 -4
  363. package/dist/promise/promise.mjs.map +1 -1
  364. package/package.json +26 -28
  365. package/src/array/impl/array-utils-creation.mts +20 -0
  366. package/src/array/impl/array-utils-creation.test.mts +72 -1
  367. package/src/array/impl/array-utils-element-access.mts +13 -0
  368. package/src/array/impl/array-utils-element-access.test.mts +36 -15
  369. package/src/array/impl/array-utils-iterators.test.mts +17 -0
  370. package/src/array/impl/array-utils-modification.mts +78 -19
  371. package/src/array/impl/array-utils-modification.test.mts +75 -0
  372. package/src/array/impl/array-utils-overload-type-error.test.mts +19 -0
  373. package/src/array/impl/array-utils-reducing-value.mts +61 -16
  374. package/src/array/impl/array-utils-reducing-value.test.mts +107 -25
  375. package/src/array/impl/array-utils-search.mts +57 -4
  376. package/src/array/impl/array-utils-search.test.mts +61 -10
  377. package/src/array/impl/array-utils-set-op.mts +26 -7
  378. package/src/array/impl/array-utils-set-op.test.mts +129 -13
  379. package/src/array/impl/array-utils-size.mts +5 -2
  380. package/src/array/impl/array-utils-size.test.mts +1 -0
  381. package/src/array/impl/array-utils-slice-clamped.mts +7 -0
  382. package/src/array/impl/array-utils-slice-clamped.test.mts +20 -0
  383. package/src/array/impl/array-utils-slicing.mts +29 -2
  384. package/src/array/impl/array-utils-slicing.test.mts +57 -0
  385. package/src/array/impl/array-utils-transformation.mts +58 -0
  386. package/src/array/impl/array-utils-transformation.test.mts +115 -3
  387. package/src/array/impl/array-utils-validation.mts +41 -18
  388. package/src/array/impl/array-utils-validation.test.mts +176 -78
  389. package/src/array/impl/array.test.mts +18 -6
  390. package/src/collections/imap-mapped.mts +11 -0
  391. package/src/collections/imap-mapped.test.mts +86 -18
  392. package/src/collections/imap.mts +47 -15
  393. package/src/collections/imap.test.mts +137 -31
  394. package/src/collections/iset-mapped.mts +54 -19
  395. package/src/collections/iset-mapped.test.mts +163 -52
  396. package/src/collections/iset.mts +53 -19
  397. package/src/collections/iset.test.mts +323 -130
  398. package/src/collections/queue.mts +78 -25
  399. package/src/collections/queue.test.mts +65 -35
  400. package/src/collections/stack.mts +67 -25
  401. package/src/collections/stack.test.mts +59 -15
  402. package/src/functional/match.mts +17 -1
  403. package/src/functional/match.test.mts +2 -0
  404. package/src/functional/optional/impl/optional-expect-to-be.mts +5 -2
  405. package/src/functional/optional/impl/optional-filter.mts +6 -0
  406. package/src/functional/optional/impl/optional-flat-map.mts +4 -0
  407. package/src/functional/optional/impl/optional-from-nullable.mts +2 -0
  408. package/src/functional/optional/impl/optional-is-none.mts +1 -1
  409. package/src/functional/optional/impl/optional-is-optional.mts +4 -2
  410. package/src/functional/optional/impl/optional-is-some.mts +2 -1
  411. package/src/functional/optional/impl/optional-map.mts +5 -0
  412. package/src/functional/optional/impl/optional-none.mts +4 -2
  413. package/src/functional/optional/impl/optional-or-else.mts +6 -0
  414. package/src/functional/optional/impl/optional-some.mts +5 -3
  415. package/src/functional/optional/impl/optional-to-nullable.mts +4 -2
  416. package/src/functional/optional/impl/optional-unwrap-or.mts +9 -4
  417. package/src/functional/optional/impl/optional-unwrap-throw.mts +2 -1
  418. package/src/functional/optional/impl/optional-unwrap.mts +4 -2
  419. package/src/functional/optional/impl/optional-zip.mts +3 -1
  420. package/src/functional/optional.test.mts +126 -54
  421. package/src/functional/pipe.mts +2 -2
  422. package/src/functional/pipe.test.mts +7 -4
  423. package/src/functional/result/impl/result-err.mts +4 -2
  424. package/src/functional/result/impl/result-expect-to-be.mts +5 -2
  425. package/src/functional/result/impl/result-flat-map.mts +7 -0
  426. package/src/functional/result/impl/result-fold.mts +6 -0
  427. package/src/functional/result/impl/result-from-promise.mts +4 -1
  428. package/src/functional/result/impl/result-from-throwable.mts +5 -1
  429. package/src/functional/result/impl/result-is-err.mts +4 -2
  430. package/src/functional/result/impl/result-is-ok.mts +4 -2
  431. package/src/functional/result/impl/result-is-result.mts +7 -3
  432. package/src/functional/result/impl/result-map-err.mts +5 -0
  433. package/src/functional/result/impl/result-map.mts +6 -0
  434. package/src/functional/result/impl/result-ok.mts +4 -2
  435. package/src/functional/result/impl/result-or-else.mts +6 -0
  436. package/src/functional/result/impl/result-swap.mts +2 -0
  437. package/src/functional/result/impl/result-to-optional.mts +2 -0
  438. package/src/functional/result/impl/result-unwrap-err-or.mts +9 -4
  439. package/src/functional/result/impl/result-unwrap-err-throw.mts +3 -1
  440. package/src/functional/result/impl/result-unwrap-err.mts +3 -2
  441. package/src/functional/result/impl/result-unwrap-ok-or.mts +9 -4
  442. package/src/functional/result/impl/result-unwrap-ok.mts +4 -2
  443. package/src/functional/result/impl/result-unwrap-throw.mts +3 -1
  444. package/src/functional/result/impl/result-zip.mts +3 -1
  445. package/src/functional/result.test.mts +182 -152
  446. package/src/functional/ternary-result/impl/ternary-result-err.mts +3 -2
  447. package/src/functional/ternary-result/impl/ternary-result-expect-to-be.mts +4 -0
  448. package/src/functional/ternary-result/impl/ternary-result-flat-map.mts +7 -0
  449. package/src/functional/ternary-result/impl/ternary-result-fold.mts +5 -0
  450. package/src/functional/ternary-result/impl/ternary-result-from-promise.mts +3 -1
  451. package/src/functional/ternary-result/impl/ternary-result-from-throwable.mts +4 -1
  452. package/src/functional/ternary-result/impl/ternary-result-is-ok.mts +1 -0
  453. package/src/functional/ternary-result/impl/ternary-result-is-ternary-result.mts +7 -3
  454. package/src/functional/ternary-result/impl/ternary-result-is-warn.mts +1 -0
  455. package/src/functional/ternary-result/impl/ternary-result-map-err.mts +6 -0
  456. package/src/functional/ternary-result/impl/ternary-result-map-warn.mts +6 -0
  457. package/src/functional/ternary-result/impl/ternary-result-map.mts +9 -0
  458. package/src/functional/ternary-result/impl/ternary-result-ok.mts +1 -1
  459. package/src/functional/ternary-result/impl/ternary-result-or-else.mts +5 -0
  460. package/src/functional/ternary-result/impl/ternary-result-to-optional.mts +2 -0
  461. package/src/functional/ternary-result/impl/ternary-result-unwrap-err-or.mts +5 -0
  462. package/src/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mts +1 -0
  463. package/src/functional/ternary-result/impl/ternary-result-unwrap-err.mts +2 -0
  464. package/src/functional/ternary-result/impl/ternary-result-unwrap-ok-or.mts +5 -0
  465. package/src/functional/ternary-result/impl/ternary-result-unwrap-ok.mts +3 -0
  466. package/src/functional/ternary-result/impl/ternary-result-unwrap-throw.mts +1 -0
  467. package/src/functional/ternary-result/impl/ternary-result-unwrap-warn-or.mts +5 -0
  468. package/src/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mts +1 -0
  469. package/src/functional/ternary-result/impl/ternary-result-unwrap-warn.mts +2 -0
  470. package/src/functional/ternary-result/impl/ternary-result-warn.mts +4 -1
  471. package/src/functional/ternary-result/impl/ternary-result-zip.mts +4 -0
  472. package/src/functional/ternary-result.test.mts +99 -8
  473. package/src/globals.d.mts +12 -1
  474. package/src/guard/has-key.mts +8 -5
  475. package/src/guard/has-key.test.mts +9 -5
  476. package/src/guard/is-error.test.mts +143 -0
  477. package/src/guard/is-non-empty-string.test.mts +44 -24
  478. package/src/guard/is-non-null-object.test.mts +45 -26
  479. package/src/guard/is-primitive.test.mts +51 -28
  480. package/src/guard/is-record.mts +34 -0
  481. package/src/guard/is-record.test.mts +28 -7
  482. package/src/guard/is-type.mts +3 -0
  483. package/src/guard/is-type.test.mts +285 -155
  484. package/src/guard/key-is-in.mts +3 -2
  485. package/src/guard/key-is-in.test.mts +2 -2
  486. package/src/iterator/range.mts +9 -0
  487. package/src/json/json.mts +50 -21
  488. package/src/json/json.test.mts +224 -176
  489. package/src/number/branded-types/finite-number.test.mts +51 -11
  490. package/src/number/branded-types/int.mts +33 -19
  491. package/src/number/branded-types/int.test.mts +56 -14
  492. package/src/number/branded-types/int16.test.mts +63 -16
  493. package/src/number/branded-types/int32.test.mts +63 -16
  494. package/src/number/branded-types/non-negative-finite-number.test.mts +52 -12
  495. package/src/number/branded-types/non-negative-int16.test.mts +59 -16
  496. package/src/number/branded-types/non-negative-int32.test.mts +59 -16
  497. package/src/number/branded-types/non-zero-finite-number.test.mts +65 -14
  498. package/src/number/branded-types/non-zero-int.test.mts +72 -19
  499. package/src/number/branded-types/non-zero-int16.test.mts +60 -16
  500. package/src/number/branded-types/non-zero-int32.test.mts +60 -16
  501. package/src/number/branded-types/non-zero-safe-int.mts +2 -2
  502. package/src/number/branded-types/non-zero-safe-int.test.mts +85 -23
  503. package/src/number/branded-types/non-zero-uint16.test.mts +53 -16
  504. package/src/number/branded-types/non-zero-uint32.test.mts +53 -16
  505. package/src/number/branded-types/positive-finite-number.test.mts +59 -14
  506. package/src/number/branded-types/positive-int.mts +34 -20
  507. package/src/number/branded-types/positive-int.test.mts +64 -17
  508. package/src/number/branded-types/positive-int16.test.mts +50 -15
  509. package/src/number/branded-types/positive-int32.test.mts +50 -15
  510. package/src/number/branded-types/positive-safe-int.mts +48 -27
  511. package/src/number/branded-types/positive-safe-int.test.mts +68 -19
  512. package/src/number/branded-types/positive-uint16.test.mts +53 -16
  513. package/src/number/branded-types/positive-uint32.test.mts +53 -16
  514. package/src/number/branded-types/safe-int.mts +50 -29
  515. package/src/number/branded-types/safe-int.test.mts +70 -18
  516. package/src/number/branded-types/safe-uint.mts +1 -1
  517. package/src/number/branded-types/safe-uint.test.mts +65 -17
  518. package/src/number/branded-types/uint.mts +31 -19
  519. package/src/number/branded-types/uint.test.mts +58 -15
  520. package/src/number/branded-types/uint16.test.mts +56 -15
  521. package/src/number/branded-types/uint32.test.mts +56 -15
  522. package/src/number/enum/int8.test.mts +7 -1
  523. package/src/number/enum/uint8.test.mts +7 -1
  524. package/src/number/num.mts +32 -21
  525. package/src/number/num.test.mts +88 -26
  526. package/src/number/refined-number-utils.mts +38 -13
  527. package/src/object/object.mts +19 -3
  528. package/src/object/object.test.mts +16 -6
  529. package/src/others/cast-mutable.test.mts +8 -1
  530. package/src/others/cast-readonly.test.mts +21 -4
  531. package/src/others/if-then.test.mts +40 -24
  532. package/src/others/map-nullable.mts +3 -0
  533. package/src/others/map-nullable.test.mts +27 -0
  534. package/src/others/memoize-function.test.mts +41 -0
  535. package/src/others/tuple.mts +14 -3
  536. package/src/others/unknown-to-string.mts +2 -0
  537. package/src/others/unknown-to-string.test.mts +10 -0
  538. package/src/promise/promise.mts +8 -4
  539. package/src/promise/promise.test.mts +8 -13
@@ -20,19 +20,24 @@ import {
20
20
 
21
21
  describe(isUndefined, () => {
22
22
  test('should return true for undefined', () => {
23
- expect(isUndefined(undefined)).toBe(true);
23
+ assert.isTrue(isUndefined(undefined));
24
24
  });
25
25
 
26
26
  test('should return false for non-undefined values', () => {
27
- expect(isUndefined(null)).toBe(false);
28
- expect(isUndefined(0)).toBe(false);
29
- expect(isUndefined('')).toBe(false);
30
- expect(isUndefined(false)).toBe(false);
31
- expect(isUndefined({})).toBe(false);
27
+ assert.isFalse(isUndefined(null));
28
+
29
+ assert.isFalse(isUndefined(0));
30
+
31
+ assert.isFalse(isUndefined(''));
32
+
33
+ assert.isFalse(isUndefined(false));
34
+
35
+ assert.isFalse(isUndefined({}));
32
36
  });
33
37
 
34
38
  test('should act as a type guard', () => {
35
39
  const value: string | undefined = undefined;
40
+
36
41
  if (isUndefined(value)) {
37
42
  expectType<typeof value, undefined>('=');
38
43
  }
@@ -41,18 +46,22 @@ describe(isUndefined, () => {
41
46
 
42
47
  describe(isNotUndefined, () => {
43
48
  test('should return false for undefined', () => {
44
- expect(isNotUndefined(undefined)).toBe(false);
49
+ assert.isFalse(isNotUndefined(undefined));
45
50
  });
46
51
 
47
52
  test('should return true for non-undefined values', () => {
48
- expect(isNotUndefined(null)).toBe(true);
49
- expect(isNotUndefined(0)).toBe(true);
50
- expect(isNotUndefined('')).toBe(true);
51
- expect(isNotUndefined(false)).toBe(true);
53
+ assert.isTrue(isNotUndefined(null));
54
+
55
+ assert.isTrue(isNotUndefined(0));
56
+
57
+ assert.isTrue(isNotUndefined(''));
58
+
59
+ assert.isTrue(isNotUndefined(false));
52
60
  });
53
61
 
54
62
  test('should narrow types correctly', () => {
55
63
  const value: string | undefined = 'test';
64
+
56
65
  if (isNotUndefined(value)) {
57
66
  expectType<typeof value, string>('=');
58
67
  }
@@ -61,19 +70,24 @@ describe(isNotUndefined, () => {
61
70
 
62
71
  describe(isNull, () => {
63
72
  test('should return true for null', () => {
64
- expect(isNull(null)).toBe(true);
73
+ assert.isTrue(isNull(null));
65
74
  });
66
75
 
67
76
  test('should return false for non-null values', () => {
68
- expect(isNull(undefined)).toBe(false);
69
- expect(isNull(0)).toBe(false);
70
- expect(isNull('')).toBe(false);
71
- expect(isNull(false)).toBe(false);
72
- expect(isNull({})).toBe(false);
77
+ assert.isFalse(isNull(undefined));
78
+
79
+ assert.isFalse(isNull(0));
80
+
81
+ assert.isFalse(isNull(''));
82
+
83
+ assert.isFalse(isNull(false));
84
+
85
+ assert.isFalse(isNull({}));
73
86
  });
74
87
 
75
88
  test('should act as a type guard', () => {
76
89
  const value: string | null = null;
90
+
77
91
  if (isNull(value)) {
78
92
  expectType<typeof value, null>('=');
79
93
  }
@@ -82,17 +96,20 @@ describe(isNull, () => {
82
96
 
83
97
  describe(isNotNull, () => {
84
98
  test('should return false for null', () => {
85
- expect(isNotNull(null)).toBe(false);
99
+ assert.isFalse(isNotNull(null));
86
100
  });
87
101
 
88
102
  test('should return true for non-null values', () => {
89
- expect(isNotNull(undefined)).toBe(true);
90
- expect(isNotNull(0)).toBe(true);
91
- expect(isNotNull('')).toBe(true);
103
+ assert.isTrue(isNotNull(undefined));
104
+
105
+ assert.isTrue(isNotNull(0));
106
+
107
+ assert.isTrue(isNotNull(''));
92
108
  });
93
109
 
94
110
  test('should narrow types correctly', () => {
95
111
  const value: string | null = 'test';
112
+
96
113
  if (isNotNull(value)) {
97
114
  expectType<typeof value, string>('=');
98
115
  }
@@ -101,23 +118,31 @@ describe(isNotNull, () => {
101
118
 
102
119
  describe(isString, () => {
103
120
  test('should return true for strings', () => {
104
- expect(isString('')).toBe(true);
105
- expect(isString('hello')).toBe(true);
106
- expect(isString('123')).toBe(true);
107
- expect(isString(`template`)).toBe(true);
121
+ assert.isTrue(isString(''));
122
+
123
+ assert.isTrue(isString('hello'));
124
+
125
+ assert.isTrue(isString('123'));
126
+
127
+ assert.isTrue(isString(`template`));
108
128
  });
109
129
 
110
130
  test('should return false for non-strings', () => {
111
- expect(isString(123)).toBe(false);
112
- expect(isString(true)).toBe(false);
113
- expect(isString(null)).toBe(false);
114
- expect(isString(undefined)).toBe(false);
131
+ assert.isFalse(isString(123));
132
+
133
+ assert.isFalse(isString(true));
134
+
135
+ assert.isFalse(isString(null));
136
+
137
+ assert.isFalse(isString(undefined));
138
+
115
139
  // eslint-disable-next-line unicorn/new-for-builtins
116
- expect(isString(new String('hello'))).toBe(false);
140
+ assert.isFalse(isString(new String('hello')));
117
141
  });
118
142
 
119
143
  test('should act as a type guard', () => {
120
144
  const value: unknown = 'test';
145
+
121
146
  if (isString(value)) {
122
147
  expectType<typeof value, string>('=');
123
148
 
@@ -128,25 +153,35 @@ describe(isString, () => {
128
153
 
129
154
  describe(isNumber, () => {
130
155
  test('should return true for numbers', () => {
131
- expect(isNumber(0)).toBe(true);
132
- expect(isNumber(42)).toBe(true);
133
- expect(isNumber(-3.14)).toBe(true);
134
- expect(isNumber(Number.NaN)).toBe(true);
135
- expect(isNumber(Number.POSITIVE_INFINITY)).toBe(true);
136
- expect(isNumber(Number.NEGATIVE_INFINITY)).toBe(true);
156
+ assert.isTrue(isNumber(0));
157
+
158
+ assert.isTrue(isNumber(42));
159
+
160
+ assert.isTrue(isNumber(-3.14));
161
+
162
+ assert.isTrue(isNumber(Number.NaN));
163
+
164
+ assert.isTrue(isNumber(Number.POSITIVE_INFINITY));
165
+
166
+ assert.isTrue(isNumber(Number.NEGATIVE_INFINITY));
137
167
  });
138
168
 
139
169
  test('should return false for non-numbers', () => {
140
- expect(isNumber('123')).toBe(false);
141
- expect(isNumber(true)).toBe(false);
142
- expect(isNumber(null)).toBe(false);
143
- expect(isNumber(123n)).toBe(false);
170
+ assert.isFalse(isNumber('123'));
171
+
172
+ assert.isFalse(isNumber(true));
173
+
174
+ assert.isFalse(isNumber(null));
175
+
176
+ assert.isFalse(isNumber(123n));
177
+
144
178
  // eslint-disable-next-line unicorn/new-for-builtins
145
- expect(isNumber(new Number(42))).toBe(false);
179
+ assert.isFalse(isNumber(new Number(42)));
146
180
  });
147
181
 
148
182
  test('should act as a type guard', () => {
149
183
  const value: unknown = 42;
184
+
150
185
  if (isNumber(value)) {
151
186
  expectType<typeof value, number>('=');
152
187
 
@@ -157,20 +192,26 @@ describe(isNumber, () => {
157
192
 
158
193
  describe(isBigint, () => {
159
194
  test('should return true for bigints', () => {
160
- expect(isBigint(0n)).toBe(true);
161
- expect(isBigint(123n)).toBe(true);
162
- expect(isBigint(-456n)).toBe(true);
195
+ assert.isTrue(isBigint(0n));
196
+
197
+ assert.isTrue(isBigint(123n));
198
+
199
+ assert.isTrue(isBigint(-456n));
163
200
  });
164
201
 
165
202
  test('should return false for non-bigints', () => {
166
- expect(isBigint(123)).toBe(false);
167
- expect(isBigint('123')).toBe(false);
168
- expect(isBigint(true)).toBe(false);
169
- expect(isBigint(null)).toBe(false);
203
+ assert.isFalse(isBigint(123));
204
+
205
+ assert.isFalse(isBigint('123'));
206
+
207
+ assert.isFalse(isBigint(true));
208
+
209
+ assert.isFalse(isBigint(null));
170
210
  });
171
211
 
172
212
  test('should act as a type guard', () => {
173
213
  const value: unknown = 123n;
214
+
174
215
  if (isBigint(value)) {
175
216
  expectType<typeof value, bigint>('=');
176
217
 
@@ -181,44 +222,55 @@ describe(isBigint, () => {
181
222
 
182
223
  describe(isBoolean, () => {
183
224
  test('should return true for booleans', () => {
184
- expect(isBoolean(true)).toBe(true);
185
- expect(isBoolean(false)).toBe(true);
225
+ assert.isTrue(isBoolean(true));
226
+
227
+ assert.isTrue(isBoolean(false));
186
228
  });
187
229
 
188
230
  test('should return false for non-booleans', () => {
189
- expect(isBoolean(1)).toBe(false);
190
- expect(isBoolean(0)).toBe(false);
191
- expect(isBoolean('true')).toBe(false);
192
- expect(isBoolean(null)).toBe(false);
231
+ assert.isFalse(isBoolean(1));
232
+
233
+ assert.isFalse(isBoolean(0));
234
+
235
+ assert.isFalse(isBoolean('true'));
236
+
237
+ assert.isFalse(isBoolean(null));
238
+
193
239
  // eslint-disable-next-line unicorn/new-for-builtins
194
- expect(isBoolean(new Boolean(true))).toBe(false);
240
+ assert.isFalse(isBoolean(new Boolean(true)));
195
241
  });
196
242
 
197
243
  test('should act as a type guard', () => {
198
244
  const value: unknown = true;
245
+
199
246
  if (isBoolean(value)) {
200
247
  expectType<typeof value, boolean>('=');
201
248
 
202
- expect(!value).toBe(false);
249
+ assert.isTrue(value);
203
250
  }
204
251
  });
205
252
  });
206
253
 
207
254
  describe(isSymbol, () => {
208
255
  test('should return true for symbols', () => {
209
- expect(isSymbol(Symbol())).toBe(true);
210
- expect(isSymbol(Symbol('test'))).toBe(true);
211
- expect(isSymbol(Symbol.iterator)).toBe(true);
256
+ assert.isTrue(isSymbol(Symbol()));
257
+
258
+ assert.isTrue(isSymbol(Symbol('test')));
259
+
260
+ assert.isTrue(isSymbol(Symbol.iterator));
212
261
  });
213
262
 
214
263
  test('should return false for non-symbols', () => {
215
- expect(isSymbol('symbol')).toBe(false);
216
- expect(isSymbol(123)).toBe(false);
217
- expect(isSymbol(null)).toBe(false);
264
+ assert.isFalse(isSymbol('symbol'));
265
+
266
+ assert.isFalse(isSymbol(123));
267
+
268
+ assert.isFalse(isSymbol(null));
218
269
  });
219
270
 
220
271
  test('should act as a type guard', () => {
221
272
  const value: unknown = Symbol('test');
273
+
222
274
  if (isSymbol(value)) {
223
275
  expectType<typeof value, symbol>('=');
224
276
 
@@ -229,86 +281,117 @@ describe(isSymbol, () => {
229
281
 
230
282
  describe(isNotBoolean, () => {
231
283
  test('should return false for boolean values', () => {
232
- expect(isNotBoolean(true)).toBe(false);
233
- expect(isNotBoolean(false)).toBe(false);
284
+ assert.isFalse(isNotBoolean(true));
285
+
286
+ assert.isFalse(isNotBoolean(false));
234
287
  });
235
288
 
236
289
  test('should return true for non-boolean values', () => {
237
- expect(isNotBoolean(0)).toBe(true);
238
- expect(isNotBoolean(1)).toBe(true);
239
- expect(isNotBoolean('true')).toBe(true);
240
- expect(isNotBoolean('false')).toBe(true);
241
- expect(isNotBoolean(null)).toBe(true);
242
- expect(isNotBoolean(undefined)).toBe(true);
243
- expect(isNotBoolean({})).toBe(true);
244
- expect(isNotBoolean([])).toBe(true);
290
+ assert.isTrue(isNotBoolean(0));
291
+
292
+ assert.isTrue(isNotBoolean(1));
293
+
294
+ assert.isTrue(isNotBoolean('true'));
295
+
296
+ assert.isTrue(isNotBoolean('false'));
297
+
298
+ assert.isTrue(isNotBoolean(null));
299
+
300
+ assert.isTrue(isNotBoolean(undefined));
301
+
302
+ assert.isTrue(isNotBoolean({}));
303
+
304
+ assert.isTrue(isNotBoolean([]));
245
305
  });
246
306
 
247
307
  test('should act as a type guard', () => {
248
308
  const value: string | number | boolean = 'test';
309
+
249
310
  if (isNotBoolean(value)) {
250
311
  expectType<typeof value, string | number>('<=');
251
312
 
252
313
  // Should not have boolean methods
253
- expect(typeof value === 'string' || typeof value === 'number').toBe(true);
314
+ assert.isTrue(typeof value === 'string' || typeof value === 'number');
254
315
  }
255
316
  });
256
317
  });
257
318
 
258
319
  describe(isNotNumber, () => {
259
320
  test('should return false for number values', () => {
260
- expect(isNotNumber(0)).toBe(false);
261
- expect(isNotNumber(42)).toBe(false);
262
- expect(isNotNumber(-3.14)).toBe(false);
263
- expect(isNotNumber(Number.NaN)).toBe(false);
264
- expect(isNotNumber(Number.POSITIVE_INFINITY)).toBe(false);
265
- expect(isNotNumber(Number.NEGATIVE_INFINITY)).toBe(false);
321
+ assert.isFalse(isNotNumber(0));
322
+
323
+ assert.isFalse(isNotNumber(42));
324
+
325
+ assert.isFalse(isNotNumber(-3.14));
326
+
327
+ assert.isFalse(isNotNumber(Number.NaN));
328
+
329
+ assert.isFalse(isNotNumber(Number.POSITIVE_INFINITY));
330
+
331
+ assert.isFalse(isNotNumber(Number.NEGATIVE_INFINITY));
266
332
  });
267
333
 
268
334
  test('should return true for non-number values', () => {
269
- expect(isNotNumber('123')).toBe(true);
270
- expect(isNotNumber(true)).toBe(true);
271
- expect(isNotNumber(false)).toBe(true);
272
- expect(isNotNumber(null)).toBe(true);
273
- expect(isNotNumber(undefined)).toBe(true);
274
- expect(isNotNumber(123n)).toBe(true);
275
- expect(isNotNumber({})).toBe(true);
276
- expect(isNotNumber([])).toBe(true);
277
- expect(isNotNumber(Symbol('test'))).toBe(true);
335
+ assert.isTrue(isNotNumber('123'));
336
+
337
+ assert.isTrue(isNotNumber(true));
338
+
339
+ assert.isTrue(isNotNumber(false));
340
+
341
+ assert.isTrue(isNotNumber(null));
342
+
343
+ assert.isTrue(isNotNumber(undefined));
344
+
345
+ assert.isTrue(isNotNumber(123n));
346
+
347
+ assert.isTrue(isNotNumber({}));
348
+
349
+ assert.isTrue(isNotNumber([]));
350
+
351
+ assert.isTrue(isNotNumber(Symbol('test')));
278
352
  });
279
353
 
280
354
  test('should act as a type guard', () => {
281
355
  const value: string | number | boolean = 'test';
356
+
282
357
  if (isNotNumber(value)) {
283
358
  expectType<typeof value, string | boolean>('<=');
284
359
 
285
- expect(typeof value === 'string' || typeof value === 'boolean').toBe(
286
- true,
287
- );
360
+ assert.isTrue(typeof value === 'string' || typeof value === 'boolean');
288
361
  }
289
362
  });
290
363
  });
291
364
 
292
365
  describe(isNotBigint, () => {
293
366
  test('should return false for bigint values', () => {
294
- expect(isNotBigint(0n)).toBe(false);
295
- expect(isNotBigint(123n)).toBe(false);
296
- expect(isNotBigint(-456n)).toBe(false);
367
+ assert.isFalse(isNotBigint(0n));
368
+
369
+ assert.isFalse(isNotBigint(123n));
370
+
371
+ assert.isFalse(isNotBigint(-456n));
297
372
  });
298
373
 
299
374
  test('should return true for non-bigint values', () => {
300
- expect(isNotBigint(123)).toBe(true);
301
- expect(isNotBigint('123')).toBe(true);
302
- expect(isNotBigint(true)).toBe(true);
303
- expect(isNotBigint(false)).toBe(true);
304
- expect(isNotBigint(null)).toBe(true);
305
- expect(isNotBigint(undefined)).toBe(true);
306
- expect(isNotBigint({})).toBe(true);
307
- expect(isNotBigint(Symbol('test'))).toBe(true);
375
+ assert.isTrue(isNotBigint(123));
376
+
377
+ assert.isTrue(isNotBigint('123'));
378
+
379
+ assert.isTrue(isNotBigint(true));
380
+
381
+ assert.isTrue(isNotBigint(false));
382
+
383
+ assert.isTrue(isNotBigint(null));
384
+
385
+ assert.isTrue(isNotBigint(undefined));
386
+
387
+ assert.isTrue(isNotBigint({}));
388
+
389
+ assert.isTrue(isNotBigint(Symbol('test')));
308
390
  });
309
391
 
310
392
  test('should act as a type guard', () => {
311
393
  const value: number | bigint = 123;
394
+
312
395
  if (isNotBigint(value)) {
313
396
  expectType<typeof value, number>('<=');
314
397
 
@@ -319,84 +402,114 @@ describe(isNotBigint, () => {
319
402
 
320
403
  describe(isNotString, () => {
321
404
  test('should return false for string values', () => {
322
- expect(isNotString('')).toBe(false);
323
- expect(isNotString('hello')).toBe(false);
324
- expect(isNotString('123')).toBe(false);
325
- expect(isNotString(`template`)).toBe(false);
405
+ assert.isFalse(isNotString(''));
406
+
407
+ assert.isFalse(isNotString('hello'));
408
+
409
+ assert.isFalse(isNotString('123'));
410
+
411
+ assert.isFalse(isNotString(`template`));
326
412
  });
327
413
 
328
414
  test('should return true for non-string values', () => {
329
- expect(isNotString(123)).toBe(true);
330
- expect(isNotString(true)).toBe(true);
331
- expect(isNotString(false)).toBe(true);
332
- expect(isNotString(null)).toBe(true);
333
- expect(isNotString(undefined)).toBe(true);
334
- expect(isNotString({})).toBe(true);
335
- expect(isNotString([])).toBe(true);
336
- expect(isNotString(Symbol('test'))).toBe(true);
337
- expect(isNotString(123n)).toBe(true);
415
+ assert.isTrue(isNotString(123));
416
+
417
+ assert.isTrue(isNotString(true));
418
+
419
+ assert.isTrue(isNotString(false));
420
+
421
+ assert.isTrue(isNotString(null));
422
+
423
+ assert.isTrue(isNotString(undefined));
424
+
425
+ assert.isTrue(isNotString({}));
426
+
427
+ assert.isTrue(isNotString([]));
428
+
429
+ assert.isTrue(isNotString(Symbol('test')));
430
+
431
+ assert.isTrue(isNotString(123n));
338
432
  });
339
433
 
340
434
  test('should act as a type guard', () => {
341
435
  const value: string | number | boolean = 42;
436
+
342
437
  if (isNotString(value)) {
343
438
  expectType<typeof value, number | boolean>('<=');
344
439
 
345
- expect(typeof value === 'number' || typeof value === 'boolean').toBe(
346
- true,
347
- );
440
+ assert.isTrue(typeof value === 'number' || typeof value === 'boolean');
348
441
  }
349
442
  });
350
443
  });
351
444
 
352
445
  describe(isNotSymbol, () => {
353
446
  test('should return false for symbol values', () => {
354
- expect(isNotSymbol(Symbol())).toBe(false);
355
- expect(isNotSymbol(Symbol('test'))).toBe(false);
356
- expect(isNotSymbol(Symbol.iterator)).toBe(false);
447
+ assert.isFalse(isNotSymbol(Symbol()));
448
+
449
+ assert.isFalse(isNotSymbol(Symbol('test')));
450
+
451
+ assert.isFalse(isNotSymbol(Symbol.iterator));
357
452
  });
358
453
 
359
454
  test('should return true for non-symbol values', () => {
360
- expect(isNotSymbol('symbol')).toBe(true);
361
- expect(isNotSymbol(123)).toBe(true);
362
- expect(isNotSymbol(true)).toBe(true);
363
- expect(isNotSymbol(false)).toBe(true);
364
- expect(isNotSymbol(null)).toBe(true);
365
- expect(isNotSymbol(undefined)).toBe(true);
366
- expect(isNotSymbol({})).toBe(true);
367
- expect(isNotSymbol([])).toBe(true);
368
- expect(isNotSymbol(123n)).toBe(true);
455
+ assert.isTrue(isNotSymbol('symbol'));
456
+
457
+ assert.isTrue(isNotSymbol(123));
458
+
459
+ assert.isTrue(isNotSymbol(true));
460
+
461
+ assert.isTrue(isNotSymbol(false));
462
+
463
+ assert.isTrue(isNotSymbol(null));
464
+
465
+ assert.isTrue(isNotSymbol(undefined));
466
+
467
+ assert.isTrue(isNotSymbol({}));
468
+
469
+ assert.isTrue(isNotSymbol([]));
470
+
471
+ assert.isTrue(isNotSymbol(123n));
369
472
  });
370
473
 
371
474
  test('should act as a type guard', () => {
372
475
  const value: string | number | symbol = 'test';
476
+
373
477
  if (isNotSymbol(value)) {
374
478
  expectType<typeof value, string | number>('<=');
375
479
 
376
- expect(typeof value === 'string' || typeof value === 'number').toBe(true);
480
+ assert.isTrue(typeof value === 'string' || typeof value === 'number');
377
481
  }
378
482
  });
379
483
  });
380
484
 
381
485
  describe(isNullish, () => {
382
486
  test('should return true for null and undefined', () => {
383
- expect(isNullish(null)).toBe(true);
384
- expect(isNullish(undefined)).toBe(true);
487
+ assert.isTrue(isNullish(null));
488
+
489
+ assert.isTrue(isNullish(undefined));
385
490
  });
386
491
 
387
492
  test('should return false for non-nullish values', () => {
388
- expect(isNullish(0)).toBe(false);
389
- expect(isNullish(false)).toBe(false);
390
- expect(isNullish('')).toBe(false);
391
- expect(isNullish('null')).toBe(false);
392
- expect(isNullish('undefined')).toBe(false);
393
- expect(isNullish({})).toBe(false);
394
- expect(isNullish([])).toBe(false);
395
- expect(isNullish(Number.NaN)).toBe(false);
493
+ assert.isFalse(isNullish(0));
494
+
495
+ assert.isFalse(isNullish(false));
496
+
497
+ assert.isFalse(isNullish(''));
498
+
499
+ assert.isFalse(isNullish('null'));
500
+
501
+ assert.isFalse(isNullish('undefined'));
502
+
503
+ assert.isFalse(isNullish({}));
504
+
505
+ assert.isFalse(isNullish([]));
506
+
507
+ assert.isFalse(isNullish(Number.NaN));
396
508
  });
397
509
 
398
510
  test('should act as a type guard', () => {
399
511
  const value: string | null | undefined = null;
512
+
400
513
  if (isNullish(value)) {
401
514
  expectType<typeof value, null | undefined>('<=');
402
515
 
@@ -407,32 +520,44 @@ describe(isNullish, () => {
407
520
 
408
521
  test('should handle edge cases', () => {
409
522
  // Test that it uses loose equality (==)
410
- expect(isNullish(null)).toBe(true);
411
- expect(isNullish(undefined)).toBe(true);
523
+ assert.isTrue(isNullish(null));
524
+
525
+ assert.isTrue(isNullish(undefined));
412
526
  });
413
527
  });
414
528
 
415
529
  describe(isNonNullish, () => {
416
530
  test('should return false for null and undefined', () => {
417
- expect(isNonNullish(null)).toBe(false);
418
- expect(isNonNullish(undefined)).toBe(false);
531
+ assert.isFalse(isNonNullish(null));
532
+
533
+ assert.isFalse(isNonNullish(undefined));
419
534
  });
420
535
 
421
536
  test('should return true for non-nullish values', () => {
422
- expect(isNonNullish(0)).toBe(true);
423
- expect(isNonNullish(false)).toBe(true);
424
- expect(isNonNullish('')).toBe(true);
425
- expect(isNonNullish('null')).toBe(true);
426
- expect(isNonNullish('undefined')).toBe(true);
427
- expect(isNonNullish({})).toBe(true);
428
- expect(isNonNullish([])).toBe(true);
429
- expect(isNonNullish(Number.NaN)).toBe(true);
430
- expect(isNonNullish(Symbol('test'))).toBe(true);
431
- expect(isNonNullish(123n)).toBe(true);
537
+ assert.isTrue(isNonNullish(0));
538
+
539
+ assert.isTrue(isNonNullish(false));
540
+
541
+ assert.isTrue(isNonNullish(''));
542
+
543
+ assert.isTrue(isNonNullish('null'));
544
+
545
+ assert.isTrue(isNonNullish('undefined'));
546
+
547
+ assert.isTrue(isNonNullish({}));
548
+
549
+ assert.isTrue(isNonNullish([]));
550
+
551
+ assert.isTrue(isNonNullish(Number.NaN));
552
+
553
+ assert.isTrue(isNonNullish(Symbol('test')));
554
+
555
+ assert.isTrue(isNonNullish(123n));
432
556
  });
433
557
 
434
558
  test('should act as a type guard', () => {
435
559
  const value: string | null | undefined = 'test';
560
+
436
561
  if (isNonNullish(value)) {
437
562
  expectType<typeof value, string>('<=');
438
563
 
@@ -450,6 +575,7 @@ describe(isNonNullish, () => {
450
575
  ];
451
576
 
452
577
  const definedItems = items.filter(isNonNullish);
578
+
453
579
  expectType<typeof definedItems, string[]>('<=');
454
580
 
455
581
  expect(definedItems).toHaveLength(3);
@@ -459,6 +585,7 @@ describe(isNonNullish, () => {
459
585
 
460
586
  test('should handle complex union types', () => {
461
587
  type ComplexType = string | number | boolean | null | undefined;
588
+
462
589
  const value: ComplexType = 42;
463
590
 
464
591
  if (isNonNullish(value)) {
@@ -494,12 +621,15 @@ describe('type guard behavior in complex scenarios', () => {
494
621
  ];
495
622
 
496
623
  const nonNullish = mixed.filter(isNonNullish);
624
+
497
625
  expectType<typeof nonNullish, (string | number | boolean)[]>('<=');
498
626
 
499
627
  const nonBooleans = nonNullish.filter(isNotBoolean);
628
+
500
629
  expectType<typeof nonBooleans, (string | number)[]>('<=');
501
630
 
502
631
  const strings = nonBooleans.filter(isNotNumber);
632
+
503
633
  expectType<typeof strings, string[]>('<=');
504
634
 
505
635
  assert.deepStrictEqual(strings, ['hello', 'world']);