@fluixi/utils 1.0.0-alpha.53

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 (354) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +73 -0
  3. package/dist/index.cjs +1 -0
  4. package/dist/index.d.ts +2 -0
  5. package/dist/index.d.ts.map +1 -0
  6. package/dist/index.js +1 -0
  7. package/dist/index.mjs +1 -0
  8. package/dist/lib/array/advanced.cjs +1 -0
  9. package/dist/lib/array/advanced.d.ts +1116 -0
  10. package/dist/lib/array/advanced.d.ts.map +1 -0
  11. package/dist/lib/array/advanced.js +2429 -0
  12. package/dist/lib/array/advanced.mjs +1 -0
  13. package/dist/lib/array/array.cjs +1 -0
  14. package/dist/lib/array/array.d.ts +6 -0
  15. package/dist/lib/array/array.d.ts.map +1 -0
  16. package/dist/lib/array/array.js +31 -0
  17. package/dist/lib/array/array.mjs +1 -0
  18. package/dist/lib/array/index.cjs +1 -0
  19. package/dist/lib/array/index.d.ts +4 -0
  20. package/dist/lib/array/index.d.ts.map +1 -0
  21. package/dist/lib/array/index.js +3 -0
  22. package/dist/lib/array/index.mjs +1 -0
  23. package/dist/lib/array/utils.cjs +1 -0
  24. package/dist/lib/array/utils.d.ts +100 -0
  25. package/dist/lib/array/utils.d.ts.map +1 -0
  26. package/dist/lib/array/utils.js +165 -0
  27. package/dist/lib/array/utils.mjs +1 -0
  28. package/dist/lib/color/color.cjs +1 -0
  29. package/dist/lib/color/color.d.ts +366 -0
  30. package/dist/lib/color/color.d.ts.map +1 -0
  31. package/dist/lib/color/color.js +722 -0
  32. package/dist/lib/color/color.mjs +1 -0
  33. package/dist/lib/color/constants.cjs +1 -0
  34. package/dist/lib/color/constants.d.ts +361 -0
  35. package/dist/lib/color/constants.d.ts.map +1 -0
  36. package/dist/lib/color/constants.js +358 -0
  37. package/dist/lib/color/constants.mjs +1 -0
  38. package/dist/lib/color/conversions.cjs +1 -0
  39. package/dist/lib/color/conversions.d.ts +166 -0
  40. package/dist/lib/color/conversions.d.ts.map +1 -0
  41. package/dist/lib/color/conversions.js +766 -0
  42. package/dist/lib/color/conversions.mjs +1 -0
  43. package/dist/lib/color/helpers.cjs +1 -0
  44. package/dist/lib/color/helpers.d.ts +75 -0
  45. package/dist/lib/color/helpers.d.ts.map +1 -0
  46. package/dist/lib/color/helpers.js +419 -0
  47. package/dist/lib/color/helpers.mjs +1 -0
  48. package/dist/lib/color/index.cjs +1 -0
  49. package/dist/lib/color/index.d.ts +12 -0
  50. package/dist/lib/color/index.d.ts.map +1 -0
  51. package/dist/lib/color/index.js +15 -0
  52. package/dist/lib/color/index.mjs +1 -0
  53. package/dist/lib/color/types.cjs +1 -0
  54. package/dist/lib/color/types.d.ts +179 -0
  55. package/dist/lib/color/types.d.ts.map +1 -0
  56. package/dist/lib/color/types.js +1 -0
  57. package/dist/lib/color/types.mjs +0 -0
  58. package/dist/lib/color/utils.cjs +1 -0
  59. package/dist/lib/color/utils.d.ts +199 -0
  60. package/dist/lib/color/utils.d.ts.map +1 -0
  61. package/dist/lib/color/utils.js +858 -0
  62. package/dist/lib/color/utils.mjs +1 -0
  63. package/dist/lib/compare/comparators.cjs +1 -0
  64. package/dist/lib/compare/comparators.d.ts +65 -0
  65. package/dist/lib/compare/comparators.d.ts.map +1 -0
  66. package/dist/lib/compare/comparators.js +210 -0
  67. package/dist/lib/compare/comparators.mjs +1 -0
  68. package/dist/lib/compare/index.cjs +1 -0
  69. package/dist/lib/compare/index.d.ts +2 -0
  70. package/dist/lib/compare/index.d.ts.map +1 -0
  71. package/dist/lib/compare/index.js +1 -0
  72. package/dist/lib/compare/index.mjs +1 -0
  73. package/dist/lib/crypto/hash.cjs +1 -0
  74. package/dist/lib/crypto/hash.d.ts +6 -0
  75. package/dist/lib/crypto/hash.d.ts.map +1 -0
  76. package/dist/lib/crypto/hash.js +53 -0
  77. package/dist/lib/crypto/hash.mjs +1 -0
  78. package/dist/lib/crypto/index.cjs +1 -0
  79. package/dist/lib/crypto/index.d.ts +2 -0
  80. package/dist/lib/crypto/index.d.ts.map +1 -0
  81. package/dist/lib/crypto/index.js +1 -0
  82. package/dist/lib/crypto/index.mjs +1 -0
  83. package/dist/lib/dom/events.cjs +1 -0
  84. package/dist/lib/dom/events.d.ts +159 -0
  85. package/dist/lib/dom/events.d.ts.map +1 -0
  86. package/dist/lib/dom/events.js +50 -0
  87. package/dist/lib/dom/events.mjs +1 -0
  88. package/dist/lib/dom/index.cjs +1 -0
  89. package/dist/lib/dom/index.d.ts +3 -0
  90. package/dist/lib/dom/index.d.ts.map +1 -0
  91. package/dist/lib/dom/index.js +2 -0
  92. package/dist/lib/dom/index.mjs +1 -0
  93. package/dist/lib/dom/utils.cjs +1 -0
  94. package/dist/lib/dom/utils.d.ts +6 -0
  95. package/dist/lib/dom/utils.d.ts.map +1 -0
  96. package/dist/lib/dom/utils.js +37 -0
  97. package/dist/lib/dom/utils.mjs +1 -0
  98. package/dist/lib/functions/functions.cjs +1 -0
  99. package/dist/lib/functions/functions.d.ts +329 -0
  100. package/dist/lib/functions/functions.d.ts.map +1 -0
  101. package/dist/lib/functions/functions.js +585 -0
  102. package/dist/lib/functions/functions.mjs +1 -0
  103. package/dist/lib/functions/index.cjs +1 -0
  104. package/dist/lib/functions/index.d.ts +3 -0
  105. package/dist/lib/functions/index.d.ts.map +1 -0
  106. package/dist/lib/functions/index.js +1 -0
  107. package/dist/lib/functions/index.mjs +1 -0
  108. package/dist/lib/functions/types.cjs +1 -0
  109. package/dist/lib/functions/types.d.ts +2 -0
  110. package/dist/lib/functions/types.d.ts.map +1 -0
  111. package/dist/lib/functions/types.js +1 -0
  112. package/dist/lib/functions/types.mjs +0 -0
  113. package/dist/lib/helpers.cjs +1 -0
  114. package/dist/lib/helpers.d.ts +13 -0
  115. package/dist/lib/helpers.d.ts.map +1 -0
  116. package/dist/lib/helpers.js +66 -0
  117. package/dist/lib/helpers.mjs +1 -0
  118. package/dist/lib/index.cjs +1 -0
  119. package/dist/lib/index.d.ts +6 -0
  120. package/dist/lib/index.d.ts.map +1 -0
  121. package/dist/lib/index.js +8 -0
  122. package/dist/lib/index.mjs +1 -0
  123. package/dist/lib/maths/constants.cjs +1 -0
  124. package/dist/lib/maths/constants.d.ts +84 -0
  125. package/dist/lib/maths/constants.d.ts.map +1 -0
  126. package/dist/lib/maths/constants.js +79 -0
  127. package/dist/lib/maths/constants.mjs +1 -0
  128. package/dist/lib/maths/fn/advanced.cjs +1 -0
  129. package/dist/lib/maths/fn/advanced.d.ts +149 -0
  130. package/dist/lib/maths/fn/advanced.d.ts.map +1 -0
  131. package/dist/lib/maths/fn/advanced.js +264 -0
  132. package/dist/lib/maths/fn/advanced.mjs +1 -0
  133. package/dist/lib/maths/fn/basic.cjs +1 -0
  134. package/dist/lib/maths/fn/basic.d.ts +182 -0
  135. package/dist/lib/maths/fn/basic.d.ts.map +1 -0
  136. package/dist/lib/maths/fn/basic.js +343 -0
  137. package/dist/lib/maths/fn/basic.mjs +1 -0
  138. package/dist/lib/maths/fn/complex.cjs +1 -0
  139. package/dist/lib/maths/fn/complex.d.ts +153 -0
  140. package/dist/lib/maths/fn/complex.d.ts.map +1 -0
  141. package/dist/lib/maths/fn/complex.js +383 -0
  142. package/dist/lib/maths/fn/complex.mjs +1 -0
  143. package/dist/lib/maths/fn/index.cjs +1 -0
  144. package/dist/lib/maths/fn/index.d.ts +10 -0
  145. package/dist/lib/maths/fn/index.d.ts.map +1 -0
  146. package/dist/lib/maths/fn/index.js +9 -0
  147. package/dist/lib/maths/fn/index.mjs +1 -0
  148. package/dist/lib/maths/fn/trigo.cjs +1 -0
  149. package/dist/lib/maths/fn/trigo.d.ts +147 -0
  150. package/dist/lib/maths/fn/trigo.d.ts.map +1 -0
  151. package/dist/lib/maths/fn/trigo.js +227 -0
  152. package/dist/lib/maths/fn/trigo.mjs +1 -0
  153. package/dist/lib/maths/fn/vector.cjs +1 -0
  154. package/dist/lib/maths/fn/vector.d.ts +512 -0
  155. package/dist/lib/maths/fn/vector.d.ts.map +1 -0
  156. package/dist/lib/maths/fn/vector.js +1136 -0
  157. package/dist/lib/maths/fn/vector.mjs +1 -0
  158. package/dist/lib/maths/formatter.cjs +1 -0
  159. package/dist/lib/maths/formatter.d.ts +35 -0
  160. package/dist/lib/maths/formatter.d.ts.map +1 -0
  161. package/dist/lib/maths/formatter.js +56 -0
  162. package/dist/lib/maths/formatter.mjs +1 -0
  163. package/dist/lib/maths/guards.cjs +1 -0
  164. package/dist/lib/maths/guards.d.ts +166 -0
  165. package/dist/lib/maths/guards.d.ts.map +1 -0
  166. package/dist/lib/maths/guards.js +315 -0
  167. package/dist/lib/maths/guards.mjs +1 -0
  168. package/dist/lib/maths/index.cjs +1 -0
  169. package/dist/lib/maths/index.d.ts +24 -0
  170. package/dist/lib/maths/index.d.ts.map +1 -0
  171. package/dist/lib/maths/index.js +29 -0
  172. package/dist/lib/maths/index.mjs +1 -0
  173. package/dist/lib/maths/parser.cjs +1 -0
  174. package/dist/lib/maths/parser.d.ts +20 -0
  175. package/dist/lib/maths/parser.d.ts.map +1 -0
  176. package/dist/lib/maths/parser.js +78 -0
  177. package/dist/lib/maths/parser.mjs +1 -0
  178. package/dist/lib/maths/random.cjs +1 -0
  179. package/dist/lib/maths/random.d.ts +27 -0
  180. package/dist/lib/maths/random.d.ts.map +1 -0
  181. package/dist/lib/maths/random.js +49 -0
  182. package/dist/lib/maths/random.mjs +1 -0
  183. package/dist/lib/maths/types/advanced.cjs +1 -0
  184. package/dist/lib/maths/types/advanced.d.ts +357 -0
  185. package/dist/lib/maths/types/advanced.d.ts.map +1 -0
  186. package/dist/lib/maths/types/advanced.js +5 -0
  187. package/dist/lib/maths/types/advanced.mjs +0 -0
  188. package/dist/lib/maths/types/basic.cjs +1 -0
  189. package/dist/lib/maths/types/basic.d.ts +95 -0
  190. package/dist/lib/maths/types/basic.d.ts.map +1 -0
  191. package/dist/lib/maths/types/basic.js +5 -0
  192. package/dist/lib/maths/types/basic.mjs +0 -0
  193. package/dist/lib/maths/types/index.cjs +1 -0
  194. package/dist/lib/maths/types/index.d.ts +4 -0
  195. package/dist/lib/maths/types/index.d.ts.map +1 -0
  196. package/dist/lib/maths/types/index.js +3 -0
  197. package/dist/lib/maths/types/index.mjs +0 -0
  198. package/dist/lib/maths/types/negative.cjs +1 -0
  199. package/dist/lib/maths/types/negative.d.ts +51 -0
  200. package/dist/lib/maths/types/negative.d.ts.map +1 -0
  201. package/dist/lib/maths/types/negative.js +5 -0
  202. package/dist/lib/maths/types/negative.mjs +0 -0
  203. package/dist/lib/maths/types/operations.cjs +1 -0
  204. package/dist/lib/maths/types/operations.d.ts +188 -0
  205. package/dist/lib/maths/types/operations.d.ts.map +1 -0
  206. package/dist/lib/maths/types/operations.js +6 -0
  207. package/dist/lib/maths/types/operations.mjs +0 -0
  208. package/dist/lib/object/clone.cjs +1 -0
  209. package/dist/lib/object/clone.d.ts +46 -0
  210. package/dist/lib/object/clone.d.ts.map +1 -0
  211. package/dist/lib/object/clone.js +104 -0
  212. package/dist/lib/object/clone.mjs +1 -0
  213. package/dist/lib/object/diff.cjs +1 -0
  214. package/dist/lib/object/diff.d.ts +203 -0
  215. package/dist/lib/object/diff.d.ts.map +1 -0
  216. package/dist/lib/object/diff.js +805 -0
  217. package/dist/lib/object/diff.mjs +1 -0
  218. package/dist/lib/object/getter-setter.cjs +1 -0
  219. package/dist/lib/object/getter-setter.d.ts +361 -0
  220. package/dist/lib/object/getter-setter.d.ts.map +1 -0
  221. package/dist/lib/object/getter-setter.js +1771 -0
  222. package/dist/lib/object/getter-setter.mjs +1 -0
  223. package/dist/lib/object/index.cjs +6 -0
  224. package/dist/lib/object/index.d.ts +13 -0
  225. package/dist/lib/object/index.d.ts.map +1 -0
  226. package/dist/lib/object/index.js +12 -0
  227. package/dist/lib/object/index.mjs +6 -0
  228. package/dist/lib/object/merge.cjs +1 -0
  229. package/dist/lib/object/merge.d.ts +93 -0
  230. package/dist/lib/object/merge.d.ts.map +1 -0
  231. package/dist/lib/object/merge.js +474 -0
  232. package/dist/lib/object/merge.mjs +1 -0
  233. package/dist/lib/object/object.cjs +1 -0
  234. package/dist/lib/object/object.d.ts +128 -0
  235. package/dist/lib/object/object.d.ts.map +1 -0
  236. package/dist/lib/object/object.js +432 -0
  237. package/dist/lib/object/object.mjs +1 -0
  238. package/dist/lib/object/omit.cjs +1 -0
  239. package/dist/lib/object/omit.d.ts +351 -0
  240. package/dist/lib/object/omit.d.ts.map +1 -0
  241. package/dist/lib/object/omit.js +656 -0
  242. package/dist/lib/object/omit.mjs +1 -0
  243. package/dist/lib/object/reconcile.cjs +1 -0
  244. package/dist/lib/object/reconcile.d.ts +7 -0
  245. package/dist/lib/object/reconcile.d.ts.map +1 -0
  246. package/dist/lib/object/reconcile.js +122 -0
  247. package/dist/lib/object/reconcile.mjs +1 -0
  248. package/dist/lib/object/selector.cjs +1 -0
  249. package/dist/lib/object/selector.d.ts +50 -0
  250. package/dist/lib/object/selector.d.ts.map +1 -0
  251. package/dist/lib/object/selector.js +371 -0
  252. package/dist/lib/object/selector.mjs +1 -0
  253. package/dist/lib/object/sort.cjs +1 -0
  254. package/dist/lib/object/sort.d.ts +149 -0
  255. package/dist/lib/object/sort.d.ts.map +1 -0
  256. package/dist/lib/object/sort.js +298 -0
  257. package/dist/lib/object/sort.mjs +1 -0
  258. package/dist/lib/object/transform.cjs +1 -0
  259. package/dist/lib/object/transform.d.ts +620 -0
  260. package/dist/lib/object/transform.d.ts.map +1 -0
  261. package/dist/lib/object/transform.js +1058 -0
  262. package/dist/lib/object/transform.mjs +1 -0
  263. package/dist/lib/object/types.cjs +1 -0
  264. package/dist/lib/object/types.d.ts +250 -0
  265. package/dist/lib/object/types.d.ts.map +1 -0
  266. package/dist/lib/object/types.js +1 -0
  267. package/dist/lib/object/types.mjs +0 -0
  268. package/dist/lib/object/utils.cjs +6 -0
  269. package/dist/lib/object/utils.d.ts +165 -0
  270. package/dist/lib/object/utils.d.ts.map +1 -0
  271. package/dist/lib/object/utils.js +444 -0
  272. package/dist/lib/object/utils.mjs +6 -0
  273. package/dist/lib/primitive/boolean/boolean.cjs +1 -0
  274. package/dist/lib/primitive/boolean/boolean.d.ts +276 -0
  275. package/dist/lib/primitive/boolean/boolean.d.ts.map +1 -0
  276. package/dist/lib/primitive/boolean/boolean.js +615 -0
  277. package/dist/lib/primitive/boolean/boolean.mjs +1 -0
  278. package/dist/lib/primitive/boolean/index.cjs +1 -0
  279. package/dist/lib/primitive/boolean/index.d.ts +3 -0
  280. package/dist/lib/primitive/boolean/index.d.ts.map +1 -0
  281. package/dist/lib/primitive/boolean/index.js +2 -0
  282. package/dist/lib/primitive/boolean/index.mjs +1 -0
  283. package/dist/lib/primitive/boolean/types.cjs +1 -0
  284. package/dist/lib/primitive/boolean/types.d.ts +14 -0
  285. package/dist/lib/primitive/boolean/types.d.ts.map +1 -0
  286. package/dist/lib/primitive/boolean/types.js +1 -0
  287. package/dist/lib/primitive/boolean/types.mjs +0 -0
  288. package/dist/lib/primitive/date/date.cjs +1 -0
  289. package/dist/lib/primitive/date/date.d.ts +641 -0
  290. package/dist/lib/primitive/date/date.d.ts.map +1 -0
  291. package/dist/lib/primitive/date/date.js +1998 -0
  292. package/dist/lib/primitive/date/date.mjs +1 -0
  293. package/dist/lib/primitive/date/index.cjs +1 -0
  294. package/dist/lib/primitive/date/index.d.ts +3 -0
  295. package/dist/lib/primitive/date/index.d.ts.map +1 -0
  296. package/dist/lib/primitive/date/index.js +2 -0
  297. package/dist/lib/primitive/date/index.mjs +1 -0
  298. package/dist/lib/primitive/date/types.cjs +1 -0
  299. package/dist/lib/primitive/date/types.d.ts +205 -0
  300. package/dist/lib/primitive/date/types.d.ts.map +1 -0
  301. package/dist/lib/primitive/date/types.js +7 -0
  302. package/dist/lib/primitive/date/types.mjs +0 -0
  303. package/dist/lib/primitive/index.cjs +5 -0
  304. package/dist/lib/primitive/index.d.ts +5 -0
  305. package/dist/lib/primitive/index.d.ts.map +1 -0
  306. package/dist/lib/primitive/index.js +4 -0
  307. package/dist/lib/primitive/index.mjs +5 -0
  308. package/dist/lib/primitive/string/index.cjs +5 -0
  309. package/dist/lib/primitive/string/index.d.ts +3 -0
  310. package/dist/lib/primitive/string/index.d.ts.map +1 -0
  311. package/dist/lib/primitive/string/index.js +2 -0
  312. package/dist/lib/primitive/string/index.mjs +5 -0
  313. package/dist/lib/primitive/string/parser-2.cjs +8 -0
  314. package/dist/lib/primitive/string/parser-2.d.ts +17 -0
  315. package/dist/lib/primitive/string/parser-2.d.ts.map +1 -0
  316. package/dist/lib/primitive/string/parser-2.js +656 -0
  317. package/dist/lib/primitive/string/parser-2.mjs +8 -0
  318. package/dist/lib/primitive/string/parser.cjs +3 -0
  319. package/dist/lib/primitive/string/parser.d.ts +9 -0
  320. package/dist/lib/primitive/string/parser.d.ts.map +1 -0
  321. package/dist/lib/primitive/string/parser.js +775 -0
  322. package/dist/lib/primitive/string/parser.mjs +3 -0
  323. package/dist/lib/primitive/string/string.cjs +5 -0
  324. package/dist/lib/primitive/string/string.d.ts +535 -0
  325. package/dist/lib/primitive/string/string.d.ts.map +1 -0
  326. package/dist/lib/primitive/string/string.js +1301 -0
  327. package/dist/lib/primitive/string/string.mjs +5 -0
  328. package/dist/lib/primitive/string/types.cjs +1 -0
  329. package/dist/lib/primitive/string/types.d.ts +318 -0
  330. package/dist/lib/primitive/string/types.d.ts.map +1 -0
  331. package/dist/lib/primitive/string/types.js +5 -0
  332. package/dist/lib/primitive/string/types.mjs +0 -0
  333. package/dist/lib/primitive/types.cjs +1 -0
  334. package/dist/lib/primitive/types.d.ts +27 -0
  335. package/dist/lib/primitive/types.d.ts.map +1 -0
  336. package/dist/lib/primitive/types.js +1 -0
  337. package/dist/lib/primitive/types.mjs +0 -0
  338. package/dist/lib/url/index.cjs +1 -0
  339. package/dist/lib/url/index.d.ts +3 -0
  340. package/dist/lib/url/index.d.ts.map +1 -0
  341. package/dist/lib/url/index.js +2 -0
  342. package/dist/lib/url/index.mjs +1 -0
  343. package/dist/lib/url/parser.cjs +1 -0
  344. package/dist/lib/url/parser.d.ts +216 -0
  345. package/dist/lib/url/parser.d.ts.map +1 -0
  346. package/dist/lib/url/parser.js +488 -0
  347. package/dist/lib/url/parser.mjs +1 -0
  348. package/dist/lib/url/types.cjs +1 -0
  349. package/dist/lib/url/types.d.ts +18 -0
  350. package/dist/lib/url/types.d.ts.map +1 -0
  351. package/dist/lib/url/types.js +1 -0
  352. package/dist/lib/url/types.mjs +0 -0
  353. package/dist/tsconfig.lib.tsbuildinfo +1 -0
  354. package/package.json +150 -0
@@ -0,0 +1,276 @@
1
+ /**
2
+ * Boolean utilities collection for TypeScript
3
+ * Provides optimized methods for common boolean operations and conversions
4
+ */
5
+ import type { BooleanConvertible, ComparatorCondition, ComparatorOperator, StrictBoolean } from './types.js';
6
+ /**
7
+ * Checks if a value is a boolean (strict type guard)
8
+ * @param value - The value to check
9
+ * @returns True if value is exactly true or false
10
+ * @example
11
+ * isBoolean(true) // true
12
+ * isBoolean(false) // true
13
+ * isBoolean(1) // false
14
+ * isBoolean("true") // false
15
+ */
16
+ export declare const isBoolean: (value: unknown) => value is boolean;
17
+ /**
18
+ * Checks if a value is a boolean or boolean-like
19
+ * Accepts 0, 1, "true", "false", "0", "1" as boolean-like
20
+ * @param value - The value to check
21
+ * @returns True if value is boolean or boolean-like
22
+ * @example
23
+ * isBooleanLike(true) // true
24
+ * isBooleanLike(1) // true
25
+ * isBooleanLike("true") // true
26
+ * isBooleanLike("yes") // false
27
+ */
28
+ export declare const isBooleanLike: (value: BooleanConvertible) => value is StrictBoolean;
29
+ /**
30
+ * Converts any value to boolean with various strategies
31
+ * @param value - The value to convert
32
+ * @param strategy - Conversion strategy (default: 'strict')
33
+ * - 'strict': Only true/false, 1/0, "true"/"false", "1"/"0" are converted
34
+ * - 'truthy': JavaScript truthy values become true
35
+ * - 'falsy': JavaScript falsy values become false
36
+ * - 'string': Parse string representations strictly
37
+ * - 'number': Parse number representations strictly
38
+ * @returns Converted boolean
39
+ * @throws {Error} If value cannot be converted with strict strategy
40
+ * @example
41
+ * toBoolean("true") // true
42
+ * toBoolean(1) // true
43
+ * toBoolean("yes", "strict") // throws Error
44
+ * toBoolean("yes", "truthy") // true (non-empty string is truthy)
45
+ */
46
+ export declare const toBoolean: (value: unknown, strategy?: "strict" | "truthy" | "falsy" | "string" | "number", debug?: boolean) => boolean;
47
+ /**
48
+ * Safely converts any value to boolean with fallback
49
+ * @param value - The value to convert
50
+ * @param fallback - Fallback value if conversion fails (default: false)
51
+ * @returns Converted boolean or fallback
52
+ * @example
53
+ * safeToBoolean("true") // true
54
+ * safeToBoolean("invalid", true) // true (fallback)
55
+ * safeToBoolean(null, false) // false
56
+ */
57
+ export declare const safeToBoolean: <T = boolean>(value: unknown, fallback?: T) => boolean | T;
58
+ /**
59
+ * Checks if all values are truthy (logical AND)
60
+ * @param values - Array of values to check
61
+ * @returns True if all values are truthy
62
+ * @example
63
+ * all([true, 1, "hello"]) // true
64
+ * all([true, false]) // false
65
+ */
66
+ export declare const all: (values: unknown[]) => boolean;
67
+ /**
68
+ * Checks if any value is truthy (logical OR)
69
+ * @param values - Array of values to check
70
+ * @returns True if any value is truthy
71
+ * @example
72
+ * any([false, 0, "hello"]) // true
73
+ * any([false, 0, ""]) // false
74
+ */
75
+ export declare const any: (values: unknown[]) => boolean;
76
+ /**
77
+ * Checks if no values are truthy (logical NOR)
78
+ * @param values - Array of values to check
79
+ * @returns True if no values are truthy
80
+ * @example
81
+ * none([false, 0, ""]) // true
82
+ * none([false, true]) // false
83
+ */
84
+ export declare const none: (values: unknown[]) => boolean;
85
+ /**
86
+ * Logical NOT operation
87
+ * @param value - The value to negate
88
+ * @returns Negated boolean value
89
+ * @example
90
+ * not(true) // false
91
+ * not(false) // true
92
+ * not(1) // false (truthy becomes false)
93
+ */
94
+ export declare const not: (value: unknown) => boolean;
95
+ /**
96
+ * Logical XOR operation (exclusive OR)
97
+ * Returns true if exactly one of the values is truthy
98
+ * @param values - Array of values to check
99
+ * @returns True if exactly one value is truthy
100
+ * @example
101
+ * xor([true, false]) // true
102
+ * xor([true, true]) // false
103
+ * xor([false, false]) // false
104
+ */
105
+ export declare const xor: (values: unknown[]) => boolean;
106
+ /**
107
+ * Logical NAND operation (NOT AND)
108
+ * Returns true unless all values are truthy
109
+ * @param values - Array of values to check
110
+ * @returns True unless all values are truthy
111
+ * @example
112
+ * nand([true, true]) // false
113
+ * nand([true, false]) // true
114
+ */
115
+ export declare const nand: (values: unknown[]) => boolean;
116
+ /**
117
+ * Logical NOR operation (NOT OR)
118
+ * Returns true only if all values are falsy
119
+ * @param values - Array of values to check
120
+ * @returns True only if all values are falsy
121
+ * @example
122
+ * nor([false, false]) // true
123
+ * nor([false, true]) // false
124
+ */
125
+ export declare const nor: (values: unknown[]) => boolean;
126
+ /**
127
+ * Logical XNOR operation (equivalence)
128
+ * Returns true if all values are the same truthiness
129
+ * @param values - Array of values to check
130
+ * @returns True if all values have same truthiness
131
+ * @example
132
+ * xnor([true, true]) // true
133
+ * xnor([true, false]) // false
134
+ * xnor([false, false, false]) // true
135
+ */
136
+ export declare const xnor: (values: unknown[]) => boolean;
137
+ /**
138
+ * Counts truthy values in an array
139
+ * @param values - Array of values to count
140
+ * @returns Number of truthy values
141
+ * @example
142
+ * countTruthy([true, false, 1, 0, "hello"]) // 3
143
+ */
144
+ export declare const countTruthy: (values: unknown[]) => number;
145
+ /**
146
+ * Counts falsy values in an array
147
+ * @param values - Array of values to count
148
+ * @returns Number of falsy values
149
+ * @example
150
+ * countFalsy([true, false, 0, "", null]) // 3
151
+ */
152
+ export declare const countFalsy: (values: unknown[]) => number;
153
+ /**
154
+ * Creates a boolean toggle function
155
+ * @param initialState - Initial state (default: false)
156
+ * @returns Function that toggles and returns current state
157
+ * @example
158
+ * const toggle = createToggle();
159
+ * toggle() // true
160
+ * toggle() // false
161
+ * toggle() // true
162
+ */
163
+ export declare const createToggle: (initialState?: boolean) => (() => boolean);
164
+ /**
165
+ * Compares two values with various comparison operators
166
+ * @param a - First value
167
+ * @param b - Second value
168
+ * @param operator - Comparison operator
169
+ * @returns Result of comparison
170
+ * @example
171
+ * compare(5, 3, '>') // true
172
+ * compare(5, 5, '===') // false (different types)
173
+ * compare(5, '5', '==') // true
174
+ */
175
+ export declare const compare: (a: unknown, b: unknown, operator?: ComparatorOperator) => boolean;
176
+ /**
177
+ * Creates a boolean condition checker with multiple comparisons
178
+ * @param value - The value to check
179
+ * @param checks - Array of comparison checks
180
+ * @returns True if all checks pass
181
+ * @example
182
+ * checkConditions(5, [
183
+ * { operator: '>', value: 0 },
184
+ * { operator: '<', value: 10 }
185
+ * ]) // true
186
+ */
187
+ export declare const checkConditions: (value: unknown, checks: Array<ComparatorCondition>) => boolean;
188
+ /**
189
+ * Validates that a value is within a boolean constraint
190
+ * @param value - The value to validate
191
+ * @param constraint - Constraint type
192
+ * @returns True if value meets constraint
193
+ * @example
194
+ * validateBooleanConstraint(true, 'required') // true
195
+ * validateBooleanConstraint(false, 'required') // false
196
+ * validateBooleanConstraint(undefined, 'optional') // true
197
+ */
198
+ export declare const validateBooleanConstraint: (value: unknown, constraint: "required" | "optional" | "true" | "false" | "truthy" | "falsy") => boolean;
199
+ /**
200
+ * Generates random boolean value
201
+ * @param probability - Probability of returning true (0 to 1, default: 0.5)
202
+ * @returns Random boolean
203
+ * @example
204
+ * randomBoolean() // true or false with 50% probability
205
+ * randomBoolean(0.8) // true 80% of the time
206
+ */
207
+ export declare const randomBoolean: (probability?: number) => boolean;
208
+ /**
209
+ * Debounces a boolean function
210
+ * @param fn - Function that returns boolean
211
+ * @param delay - Debounce delay in ms
212
+ * @returns Debounced function
213
+ */
214
+ export declare const debounceBoolean: (fn: (...args: any[]) => boolean, delay: number) => ((...args: any[]) => boolean);
215
+ /**
216
+ * Memoizes a boolean function
217
+ * @param fn - Function that returns boolean
218
+ * @returns Memoized function
219
+ */
220
+ export declare const memoizeBoolean: <T extends (...args: any[]) => boolean>(fn: T) => T;
221
+ /**
222
+ * Creates a boolean pipeline (function composition)
223
+ * @param functions - Array of functions that return boolean
224
+ * @returns Function that applies all functions with AND logic
225
+ * @example
226
+ * const pipeline = createPipeline([
227
+ * (x) => x > 0,
228
+ * (x) => x < 10,
229
+ * (x) => x % 2 === 0
230
+ * ]);
231
+ * pipeline(4) // true
232
+ * pipeline(5) // false
233
+ */
234
+ export declare const createPipeline: (functions: Array<(value: any) => boolean>) => ((value: any) => boolean);
235
+ /**
236
+ * Type guard for boolean array
237
+ * @param value - Value to check
238
+ * @returns True if value is a boolean array
239
+ */
240
+ export declare const isBooleanArray: (value: unknown) => value is boolean[];
241
+ /**
242
+ * Type guard for boolean-like array
243
+ * @param value - Value to check
244
+ * @returns True if value is a boolean-like array
245
+ */
246
+ export declare const isBooleanLikeArray: (value: unknown) => value is StrictBoolean[];
247
+ type ValueType = string | boolean | undefined;
248
+ export declare const compareBoolean: <K extends ValueType>(value: K, newValue: K) => boolean;
249
+ declare const _default: {
250
+ isBoolean: (value: unknown) => value is boolean;
251
+ isBooleanLike: (value: BooleanConvertible) => value is StrictBoolean;
252
+ toBoolean: (value: unknown, strategy?: "strict" | "truthy" | "falsy" | "string" | "number", debug?: boolean) => boolean;
253
+ safeToBoolean: <T = boolean>(value: unknown, fallback?: T) => boolean | T;
254
+ all: (values: unknown[]) => boolean;
255
+ any: (values: unknown[]) => boolean;
256
+ none: (values: unknown[]) => boolean;
257
+ not: (value: unknown) => boolean;
258
+ xor: (values: unknown[]) => boolean;
259
+ nand: (values: unknown[]) => boolean;
260
+ nor: (values: unknown[]) => boolean;
261
+ xnor: (values: unknown[]) => boolean;
262
+ countTruthy: (values: unknown[]) => number;
263
+ countFalsy: (values: unknown[]) => number;
264
+ createToggle: (initialState?: boolean) => (() => boolean);
265
+ compare: (a: unknown, b: unknown, operator?: ComparatorOperator) => boolean;
266
+ checkConditions: (value: unknown, checks: Array<ComparatorCondition>) => boolean;
267
+ validateBooleanConstraint: (value: unknown, constraint: "required" | "optional" | "true" | "false" | "truthy" | "falsy") => boolean;
268
+ randomBoolean: (probability?: number) => boolean;
269
+ debounceBoolean: (fn: (...args: any[]) => boolean, delay: number) => ((...args: any[]) => boolean);
270
+ memoizeBoolean: <T extends (...args: any[]) => boolean>(fn: T) => T;
271
+ createPipeline: (functions: Array<(value: any) => boolean>) => ((value: any) => boolean);
272
+ isBooleanArray: (value: unknown) => value is boolean[];
273
+ isBooleanLikeArray: (value: unknown) => value is StrictBoolean[];
274
+ };
275
+ export default _default;
276
+ //# sourceMappingURL=boolean.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"boolean.d.ts","sourceRoot":"","sources":["../../../../src/lib/primitive/boolean/boolean.ts"],"names":[],"mappings":"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"}