@daiso-tech/core 0.5.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1357) hide show
  1. package/dist/cjs/_module.js +6 -5
  2. package/dist/cjs/_module.js.map +1 -1
  3. package/dist/cjs/collection/contracts/_module.js +20 -0
  4. package/dist/cjs/collection/contracts/_module.js.map +1 -0
  5. package/dist/cjs/collection/contracts/_shared.js.map +1 -0
  6. package/dist/cjs/collection/contracts/async-collection.contract.js.map +1 -0
  7. package/dist/cjs/collection/contracts/collection.contract.js.map +1 -0
  8. package/dist/cjs/collection/implementations/_module.js +21 -0
  9. package/dist/cjs/collection/implementations/_module.js.map +1 -0
  10. package/dist/cjs/collection/implementations/_shared.js.map +1 -0
  11. package/dist/cjs/collection/implementations/async-iterable-collection/_module.js +18 -0
  12. package/dist/cjs/collection/implementations/async-iterable-collection/_module.js.map +1 -0
  13. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/_module.js +50 -0
  14. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/_module.js.map +1 -0
  15. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-chunk-iterable.js.map +1 -0
  16. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-chunk-while-iterable.js.map +1 -0
  17. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-collapse-iterable.js +22 -0
  18. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-collapse-iterable.js.map +1 -0
  19. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-count-by-iterable.js.map +1 -0
  20. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-cross-join-iterable.js +35 -0
  21. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-cross-join-iterable.js.map +1 -0
  22. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-entries-iterable.js.map +1 -0
  23. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-error-handler-iterable.js.map +1 -0
  24. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-filter-iterable.js.map +1 -0
  25. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-flat-map-iterable.js.map +1 -0
  26. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-group-by-iterable.js.map +1 -0
  27. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-insert-after-iterable.js.map +1 -0
  28. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-insert-before-iterable.js.map +1 -0
  29. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-map-iterable.js.map +1 -0
  30. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-merge-iterable.js.map +1 -0
  31. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-pad-end-iterable.js.map +1 -0
  32. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-pad-start-iterable.js.map +1 -0
  33. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-partion-iterable.js.map +1 -0
  34. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-repeat-iterable.js.map +1 -0
  35. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-reverse-iterable.js.map +1 -0
  36. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-shuffle-iterable.js.map +1 -0
  37. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-skip-iterable.js.map +1 -0
  38. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-skip-until-iterable.js.map +1 -0
  39. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-slice-iterable.js.map +1 -0
  40. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-sliding-iterable.js.map +1 -0
  41. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-sort-iterable.js.map +1 -0
  42. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-split-iterable.js.map +1 -0
  43. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-take-iterable.js.map +1 -0
  44. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-take-until-iterable.js.map +1 -0
  45. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-tap-iterable.js.map +1 -0
  46. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-unique-iterable.js.map +1 -0
  47. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-update-iterable.js.map +1 -0
  48. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-when-iterable.js.map +1 -0
  49. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-zip-iterable.js +37 -0
  50. package/dist/cjs/collection/implementations/async-iterable-collection/_shared/async-zip-iterable.js.map +1 -0
  51. package/dist/cjs/collection/implementations/async-iterable-collection/async-iterable-collection.js +547 -0
  52. package/dist/cjs/collection/implementations/async-iterable-collection/async-iterable-collection.js.map +1 -0
  53. package/dist/cjs/collection/implementations/iterable-collection/_module.js +18 -0
  54. package/dist/cjs/collection/implementations/iterable-collection/_module.js.map +1 -0
  55. package/dist/cjs/collection/implementations/iterable-collection/_shared/_module.js +49 -0
  56. package/dist/cjs/collection/implementations/iterable-collection/_shared/_module.js.map +1 -0
  57. package/dist/cjs/collection/implementations/iterable-collection/_shared/chunk-iterable.js.map +1 -0
  58. package/dist/cjs/collection/implementations/iterable-collection/_shared/chunk-while-iterable.js.map +1 -0
  59. package/dist/cjs/collection/implementations/iterable-collection/_shared/collapse-iterable.js +22 -0
  60. package/dist/cjs/collection/implementations/iterable-collection/_shared/collapse-iterable.js.map +1 -0
  61. package/dist/cjs/collection/implementations/iterable-collection/_shared/count-by-iterable.js.map +1 -0
  62. package/dist/cjs/collection/implementations/iterable-collection/_shared/cross-join-iterable.js +37 -0
  63. package/dist/cjs/collection/implementations/iterable-collection/_shared/cross-join-iterable.js.map +1 -0
  64. package/dist/cjs/collection/implementations/iterable-collection/_shared/entries-iterable.js.map +1 -0
  65. package/dist/cjs/collection/implementations/iterable-collection/_shared/filter-iterable.js.map +1 -0
  66. package/dist/cjs/collection/implementations/iterable-collection/_shared/flat-map-iterable.js.map +1 -0
  67. package/dist/cjs/collection/implementations/iterable-collection/_shared/group-by-iterable.js.map +1 -0
  68. package/dist/cjs/collection/implementations/iterable-collection/_shared/insert-after-iterable.js.map +1 -0
  69. package/dist/cjs/collection/implementations/iterable-collection/_shared/insert-before-iterable.js.map +1 -0
  70. package/dist/cjs/collection/implementations/iterable-collection/_shared/map-iterable.js.map +1 -0
  71. package/dist/cjs/collection/implementations/iterable-collection/_shared/merge-iterable.js.map +1 -0
  72. package/dist/cjs/collection/implementations/iterable-collection/_shared/pad-end-iterable.js.map +1 -0
  73. package/dist/cjs/collection/implementations/iterable-collection/_shared/pad-start-iterable.js.map +1 -0
  74. package/dist/cjs/collection/implementations/iterable-collection/_shared/partion-iterable.js.map +1 -0
  75. package/dist/cjs/collection/implementations/iterable-collection/_shared/repeat-iterable.js.map +1 -0
  76. package/dist/cjs/collection/implementations/iterable-collection/_shared/reverse-iterable.js.map +1 -0
  77. package/dist/cjs/collection/implementations/iterable-collection/_shared/shuffle-iterable.js.map +1 -0
  78. package/dist/cjs/collection/implementations/iterable-collection/_shared/skip-iterable.js.map +1 -0
  79. package/dist/cjs/collection/implementations/iterable-collection/_shared/skip-until-iterable.js.map +1 -0
  80. package/dist/cjs/collection/implementations/iterable-collection/_shared/slice-iterable.js.map +1 -0
  81. package/dist/cjs/collection/implementations/iterable-collection/_shared/sliding-iterable.js.map +1 -0
  82. package/dist/cjs/collection/implementations/iterable-collection/_shared/sort-iterable.js.map +1 -0
  83. package/dist/cjs/collection/implementations/iterable-collection/_shared/split-iterable.js.map +1 -0
  84. package/dist/cjs/collection/implementations/iterable-collection/_shared/take-iterable.js.map +1 -0
  85. package/dist/cjs/collection/implementations/iterable-collection/_shared/take-until-iterable.js.map +1 -0
  86. package/dist/cjs/collection/implementations/iterable-collection/_shared/tap-iterable.js.map +1 -0
  87. package/dist/cjs/collection/implementations/iterable-collection/_shared/unique-iterable.js.map +1 -0
  88. package/dist/cjs/collection/implementations/iterable-collection/_shared/update-iterable.js.map +1 -0
  89. package/dist/cjs/collection/implementations/iterable-collection/_shared/when-iterable.js.map +1 -0
  90. package/dist/cjs/collection/implementations/iterable-collection/_shared/zip-iterable.js.map +1 -0
  91. package/dist/cjs/collection/implementations/iterable-collection/iterable-collection.js +493 -0
  92. package/dist/cjs/collection/implementations/iterable-collection/iterable-collection.js.map +1 -0
  93. package/dist/cjs/collection/implementations/list-collection/_module.js +18 -0
  94. package/dist/cjs/collection/implementations/list-collection/_module.js.map +1 -0
  95. package/dist/cjs/collection/implementations/list-collection/list-collection.js +627 -0
  96. package/dist/cjs/collection/implementations/list-collection/list-collection.js.map +1 -0
  97. package/dist/cjs/serializer/_module.js +5 -5
  98. package/dist/cjs/serializer/_module.js.map +1 -1
  99. package/dist/cjs/serializer/contracts/_module.js +18 -0
  100. package/dist/cjs/serializer/contracts/_module.js.map +1 -0
  101. package/dist/cjs/serializer/contracts/serializer.contract.js.map +1 -0
  102. package/dist/cjs/serializer/implementations/_module.js +22 -0
  103. package/dist/cjs/serializer/implementations/_module.js.map +1 -0
  104. package/dist/cjs/serializer/implementations/_shared/test-utilities/_module.js +18 -0
  105. package/dist/cjs/serializer/implementations/_shared/test-utilities/_module.js.map +1 -0
  106. package/dist/cjs/serializer/implementations/_shared/test-utilities/serializer.test-suite.js.map +1 -0
  107. package/dist/cjs/serializer/implementations/mongodb-serializer/_module.js +18 -0
  108. package/dist/cjs/serializer/implementations/mongodb-serializer/_module.js.map +1 -0
  109. package/dist/cjs/serializer/implementations/mongodb-serializer/mongodb-serializer.js +36 -0
  110. package/dist/cjs/serializer/implementations/mongodb-serializer/mongodb-serializer.js.map +1 -0
  111. package/dist/cjs/serializer/implementations/redis-serializer/_module.js +18 -0
  112. package/dist/cjs/serializer/implementations/redis-serializer/_module.js.map +1 -0
  113. package/dist/cjs/serializer/implementations/redis-serializer/redis-serializer.js +37 -0
  114. package/dist/cjs/serializer/implementations/redis-serializer/redis-serializer.js.map +1 -0
  115. package/dist/cjs/serializer/implementations/sql-serializer/_module.js +18 -0
  116. package/dist/cjs/serializer/implementations/sql-serializer/_module.js.map +1 -0
  117. package/dist/cjs/serializer/implementations/sql-serializer/sql-serializer.js +37 -0
  118. package/dist/cjs/serializer/implementations/sql-serializer/sql-serializer.js.map +1 -0
  119. package/dist/cjs/serializer/implementations/super-json-serializer/_module.js +18 -0
  120. package/dist/cjs/serializer/implementations/super-json-serializer/_module.js.map +1 -0
  121. package/dist/cjs/serializer/implementations/super-json-serializer/super-json-serializer.js +304 -0
  122. package/dist/cjs/serializer/implementations/super-json-serializer/super-json-serializer.js.map +1 -0
  123. package/dist/cjs/storage/contracts/_module.js +20 -0
  124. package/dist/cjs/storage/contracts/_module.js.map +1 -0
  125. package/dist/cjs/storage/contracts/_shared.js.map +1 -0
  126. package/dist/cjs/storage/contracts/storage-adapter.contract.js.map +1 -0
  127. package/dist/cjs/storage/contracts/storage.contract.js.map +1 -0
  128. package/dist/cjs/storage/implementations/_module.js +23 -0
  129. package/dist/cjs/storage/implementations/_module.js.map +1 -0
  130. package/dist/cjs/storage/implementations/_shared/test-utilities/_module.js +18 -0
  131. package/dist/cjs/storage/implementations/_shared/test-utilities/_module.js.map +1 -0
  132. package/dist/cjs/storage/implementations/_shared/test-utilities/storage-adapter-api.test-suite.js +300 -0
  133. package/dist/cjs/storage/implementations/_shared/test-utilities/storage-adapter-api.test-suite.js.map +1 -0
  134. package/dist/cjs/storage/implementations/_shared/test-utilities/storage-adapter-value.test-suite.js +1208 -0
  135. package/dist/cjs/storage/implementations/_shared/test-utilities/storage-adapter-value.test-suite.js.map +1 -0
  136. package/dist/cjs/storage/implementations/_shared/test-utilities/storage-adapter.test-suite.js +10 -0
  137. package/dist/cjs/storage/implementations/_shared/test-utilities/storage-adapter.test-suite.js.map +1 -0
  138. package/dist/cjs/storage/implementations/memory-storage-adapter/_module.js +18 -0
  139. package/dist/cjs/storage/implementations/memory-storage-adapter/_module.js.map +1 -0
  140. package/dist/cjs/storage/implementations/memory-storage-adapter/memory-storage-adapter.js +85 -0
  141. package/dist/cjs/storage/implementations/memory-storage-adapter/memory-storage-adapter.js.map +1 -0
  142. package/dist/cjs/storage/implementations/mongodb-storage-adapter/_module.js +6 -0
  143. package/dist/cjs/storage/implementations/mongodb-storage-adapter/_module.js.map +1 -0
  144. package/dist/cjs/storage/implementations/mongodb-storage-adapter/mongodb-storage-adapter.js +203 -0
  145. package/dist/cjs/storage/implementations/mongodb-storage-adapter/mongodb-storage-adapter.js.map +1 -0
  146. package/dist/cjs/storage/implementations/redis-storage-adapter/_module.js +18 -0
  147. package/dist/cjs/storage/implementations/redis-storage-adapter/_module.js.map +1 -0
  148. package/dist/cjs/storage/implementations/redis-storage-adapter/redis-storage-adapter.js +228 -0
  149. package/dist/cjs/storage/implementations/redis-storage-adapter/redis-storage-adapter.js.map +1 -0
  150. package/dist/cjs/storage/implementations/sqlite/_module.js +19 -0
  151. package/dist/cjs/storage/implementations/sqlite/_module.js.map +1 -0
  152. package/dist/cjs/storage/implementations/sqlite/_shared/_module.js +18 -0
  153. package/dist/cjs/storage/implementations/sqlite/_shared/_module.js.map +1 -0
  154. package/dist/cjs/storage/implementations/sqlite/_shared/base-sqlite-storage-adapter.js +190 -0
  155. package/dist/cjs/storage/implementations/sqlite/_shared/base-sqlite-storage-adapter.js.map +1 -0
  156. package/dist/cjs/storage/implementations/sqlite/libsql-storage-adapter/_module.js +18 -0
  157. package/dist/cjs/storage/implementations/sqlite/libsql-storage-adapter/_module.js.map +1 -0
  158. package/dist/cjs/storage/implementations/sqlite/libsql-storage-adapter/libsql-storage-adapter.js +53 -0
  159. package/dist/cjs/storage/implementations/sqlite/libsql-storage-adapter/libsql-storage-adapter.js.map +1 -0
  160. package/dist/cjs/storage/implementations/sqlite/sqlite-storage-adapter/_module.js +18 -0
  161. package/dist/cjs/storage/implementations/sqlite/sqlite-storage-adapter/_module.js.map +1 -0
  162. package/dist/cjs/storage/implementations/sqlite/sqlite-storage-adapter/sqlite-storage-adapter.js +52 -0
  163. package/dist/cjs/storage/implementations/sqlite/sqlite-storage-adapter/sqlite-storage-adapter.js.map +1 -0
  164. package/dist/cjs/storage/implementations/storage/_module.js +18 -0
  165. package/dist/cjs/storage/implementations/storage/_module.js.map +1 -0
  166. package/dist/cjs/storage/implementations/storage/storage.js +219 -0
  167. package/dist/cjs/storage/implementations/storage/storage.js.map +1 -0
  168. package/dist/cjs/storage/implementations/storage/with-namespace-storage-adapter.js +56 -0
  169. package/dist/cjs/storage/implementations/storage/with-namespace-storage-adapter.js.map +1 -0
  170. package/dist/cjs/storage/implementations/storage/with-validation-storage-adapter.js +48 -0
  171. package/dist/cjs/storage/implementations/storage/with-validation-storage-adapter.js.map +1 -0
  172. package/dist/cjs/utilities/_module.js +4 -0
  173. package/dist/cjs/utilities/_module.js.map +1 -1
  174. package/dist/cjs/utilities/async/_module.js +24 -0
  175. package/dist/cjs/utilities/async/_module.js.map +1 -0
  176. package/dist/cjs/utilities/async/_shared.js.map +1 -0
  177. package/dist/cjs/utilities/async/abortable/_module.js +18 -0
  178. package/dist/cjs/utilities/async/abortable/_module.js.map +1 -0
  179. package/dist/cjs/utilities/async/abortable/abortable.js +48 -0
  180. package/dist/cjs/utilities/async/abortable/abortable.js.map +1 -0
  181. package/dist/cjs/utilities/async/backof-policies/_module.js +21 -0
  182. package/dist/cjs/utilities/async/backof-policies/_module.js.map +1 -0
  183. package/dist/cjs/utilities/async/backof-policies/_shared.js.map +1 -0
  184. package/dist/cjs/utilities/async/backof-policies/constant-backoff-policy/_module.js +18 -0
  185. package/dist/cjs/utilities/async/backof-policies/constant-backoff-policy/_module.js.map +1 -0
  186. package/dist/cjs/utilities/async/backof-policies/constant-backoff-policy/constant-backoff-policy.js +19 -0
  187. package/dist/cjs/utilities/async/backof-policies/constant-backoff-policy/constant-backoff-policy.js.map +1 -0
  188. package/dist/cjs/utilities/async/backof-policies/exponential-backoff-policy/_module.js +18 -0
  189. package/dist/cjs/utilities/async/backof-policies/exponential-backoff-policy/_module.js.map +1 -0
  190. package/dist/cjs/utilities/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js +23 -0
  191. package/dist/cjs/utilities/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js.map +1 -0
  192. package/dist/cjs/utilities/async/backof-policies/linear-backoff-policy/_module.js +18 -0
  193. package/dist/cjs/utilities/async/backof-policies/linear-backoff-policy/_module.js.map +1 -0
  194. package/dist/cjs/utilities/async/backof-policies/linear-backoff-policy/linear-backoff-policy.js +23 -0
  195. package/dist/cjs/utilities/async/backof-policies/linear-backoff-policy/linear-backoff-policy.js.map +1 -0
  196. package/dist/cjs/utilities/async/backof-policies/polynomial-backoff-policy/_module.js +18 -0
  197. package/dist/cjs/utilities/async/backof-policies/polynomial-backoff-policy/_module.js.map +1 -0
  198. package/dist/cjs/utilities/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js +23 -0
  199. package/dist/cjs/utilities/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js.map +1 -0
  200. package/dist/cjs/utilities/async/delay/_module.js +18 -0
  201. package/dist/cjs/utilities/async/delay/_module.js.map +1 -0
  202. package/dist/cjs/utilities/async/delay/delay.js +24 -0
  203. package/dist/cjs/utilities/async/delay/delay.js.map +1 -0
  204. package/dist/cjs/utilities/async/lazy-promise/_module.js +18 -0
  205. package/dist/cjs/utilities/async/lazy-promise/_module.js.map +1 -0
  206. package/dist/cjs/utilities/async/lazy-promise/lazy-promise.js.map +1 -0
  207. package/dist/cjs/utilities/async/retry/_module.js +18 -0
  208. package/dist/cjs/utilities/async/retry/_module.js.map +1 -0
  209. package/dist/cjs/utilities/async/retry/retry.js +43 -0
  210. package/dist/cjs/utilities/async/retry/retry.js.map +1 -0
  211. package/dist/cjs/utilities/async/timeout/_module.js +18 -0
  212. package/dist/cjs/utilities/async/timeout/_module.js.map +1 -0
  213. package/dist/cjs/utilities/async/timeout/timeout.js +28 -0
  214. package/dist/cjs/utilities/async/timeout/timeout.js.map +1 -0
  215. package/dist/cjs/utilities/async-iterable/_module.js +23 -0
  216. package/dist/cjs/utilities/async-iterable/_module.js.map +1 -0
  217. package/dist/cjs/utilities/async-iterable/abortable-iterable/_module.js +18 -0
  218. package/dist/cjs/utilities/async-iterable/abortable-iterable/_module.js.map +1 -0
  219. package/dist/cjs/utilities/async-iterable/abortable-iterable/abortable-iterable.js +32 -0
  220. package/dist/cjs/utilities/async-iterable/abortable-iterable/abortable-iterable.js.map +1 -0
  221. package/dist/cjs/utilities/async-iterable/delay-iterable/_module.js +18 -0
  222. package/dist/cjs/utilities/async-iterable/delay-iterable/_module.js.map +1 -0
  223. package/dist/cjs/utilities/async-iterable/delay-iterable/delay-iterable.js +36 -0
  224. package/dist/cjs/utilities/async-iterable/delay-iterable/delay-iterable.js.map +1 -0
  225. package/dist/cjs/utilities/async-iterable/retry-iterable/_module.js +18 -0
  226. package/dist/cjs/utilities/async-iterable/retry-iterable/_module.js.map +1 -0
  227. package/dist/cjs/utilities/async-iterable/retry-iterable/retry-iterable.js +32 -0
  228. package/dist/cjs/utilities/async-iterable/retry-iterable/retry-iterable.js.map +1 -0
  229. package/dist/cjs/utilities/async-iterable/timeout-iterable/_module.js +18 -0
  230. package/dist/cjs/utilities/async-iterable/timeout-iterable/_module.js.map +1 -0
  231. package/dist/cjs/utilities/async-iterable/timeout-iterable/timeout-iterable.js +11 -0
  232. package/dist/cjs/utilities/async-iterable/timeout-iterable/timeout-iterable.js.map +1 -0
  233. package/dist/cjs/utilities/time-span/time-span.js +2 -2
  234. package/dist/cjs/utilities/time-span/time-span.js.map +1 -1
  235. package/dist/cjs/utilities/validation/_module.js +22 -0
  236. package/dist/cjs/utilities/validation/_module.js.map +1 -0
  237. package/dist/esm/_module.js +6 -5
  238. package/dist/esm/_module.js.map +1 -1
  239. package/dist/esm/collection/contracts/_module.js +4 -0
  240. package/dist/esm/collection/contracts/_module.js.map +1 -0
  241. package/dist/esm/collection/contracts/_shared.js.map +1 -0
  242. package/dist/esm/collection/contracts/async-collection.contract.js.map +1 -0
  243. package/dist/esm/collection/contracts/collection.contract.js.map +1 -0
  244. package/dist/esm/collection/implementations/_module.js +5 -0
  245. package/dist/esm/collection/implementations/_module.js.map +1 -0
  246. package/dist/esm/collection/implementations/_shared.js.map +1 -0
  247. package/dist/esm/collection/implementations/async-iterable-collection/_module.js +2 -0
  248. package/dist/esm/collection/implementations/async-iterable-collection/_module.js.map +1 -0
  249. package/dist/esm/collection/implementations/async-iterable-collection/_shared/_module.js +34 -0
  250. package/dist/esm/collection/implementations/async-iterable-collection/_shared/_module.js.map +1 -0
  251. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-chunk-iterable.js.map +1 -0
  252. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-chunk-while-iterable.js.map +1 -0
  253. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-collapse-iterable.js +18 -0
  254. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-collapse-iterable.js.map +1 -0
  255. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-count-by-iterable.js.map +1 -0
  256. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-cross-join-iterable.js +31 -0
  257. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-cross-join-iterable.js.map +1 -0
  258. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-entries-iterable.js.map +1 -0
  259. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-error-handler-iterable.js.map +1 -0
  260. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-filter-iterable.js.map +1 -0
  261. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-flat-map-iterable.js.map +1 -0
  262. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-group-by-iterable.js.map +1 -0
  263. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-insert-after-iterable.js.map +1 -0
  264. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-insert-before-iterable.js.map +1 -0
  265. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-map-iterable.js.map +1 -0
  266. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-merge-iterable.js.map +1 -0
  267. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-pad-end-iterable.js.map +1 -0
  268. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-pad-start-iterable.js.map +1 -0
  269. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-partion-iterable.js.map +1 -0
  270. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-repeat-iterable.js.map +1 -0
  271. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-reverse-iterable.js.map +1 -0
  272. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-shuffle-iterable.js.map +1 -0
  273. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-skip-iterable.js.map +1 -0
  274. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-skip-until-iterable.js.map +1 -0
  275. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-slice-iterable.js.map +1 -0
  276. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-sliding-iterable.js.map +1 -0
  277. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-sort-iterable.js.map +1 -0
  278. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-split-iterable.js.map +1 -0
  279. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-take-iterable.js.map +1 -0
  280. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-take-until-iterable.js.map +1 -0
  281. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-tap-iterable.js.map +1 -0
  282. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-unique-iterable.js.map +1 -0
  283. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-update-iterable.js.map +1 -0
  284. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-when-iterable.js.map +1 -0
  285. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-zip-iterable.js +33 -0
  286. package/dist/esm/collection/implementations/async-iterable-collection/_shared/async-zip-iterable.js.map +1 -0
  287. package/dist/esm/collection/implementations/async-iterable-collection/async-iterable-collection.js +543 -0
  288. package/dist/esm/collection/implementations/async-iterable-collection/async-iterable-collection.js.map +1 -0
  289. package/dist/esm/collection/implementations/iterable-collection/_module.js +2 -0
  290. package/dist/esm/collection/implementations/iterable-collection/_module.js.map +1 -0
  291. package/dist/esm/collection/implementations/iterable-collection/_shared/_module.js +33 -0
  292. package/dist/esm/collection/implementations/iterable-collection/_shared/_module.js.map +1 -0
  293. package/dist/esm/collection/implementations/iterable-collection/_shared/chunk-iterable.js.map +1 -0
  294. package/dist/esm/collection/implementations/iterable-collection/_shared/chunk-while-iterable.js.map +1 -0
  295. package/dist/esm/collection/implementations/iterable-collection/_shared/collapse-iterable.js +18 -0
  296. package/dist/esm/collection/implementations/iterable-collection/_shared/collapse-iterable.js.map +1 -0
  297. package/dist/esm/collection/implementations/iterable-collection/_shared/count-by-iterable.js.map +1 -0
  298. package/dist/esm/collection/implementations/iterable-collection/_shared/cross-join-iterable.js +33 -0
  299. package/dist/esm/collection/implementations/iterable-collection/_shared/cross-join-iterable.js.map +1 -0
  300. package/dist/esm/collection/implementations/iterable-collection/_shared/entries-iterable.js.map +1 -0
  301. package/dist/esm/collection/implementations/iterable-collection/_shared/filter-iterable.js.map +1 -0
  302. package/dist/esm/collection/implementations/iterable-collection/_shared/flat-map-iterable.js.map +1 -0
  303. package/dist/esm/collection/implementations/iterable-collection/_shared/group-by-iterable.js.map +1 -0
  304. package/dist/esm/collection/implementations/iterable-collection/_shared/insert-after-iterable.js.map +1 -0
  305. package/dist/esm/collection/implementations/iterable-collection/_shared/insert-before-iterable.js.map +1 -0
  306. package/dist/esm/collection/implementations/iterable-collection/_shared/map-iterable.js.map +1 -0
  307. package/dist/esm/collection/implementations/iterable-collection/_shared/merge-iterable.js.map +1 -0
  308. package/dist/esm/collection/implementations/iterable-collection/_shared/pad-end-iterable.js.map +1 -0
  309. package/dist/esm/collection/implementations/iterable-collection/_shared/pad-start-iterable.js.map +1 -0
  310. package/dist/esm/collection/implementations/iterable-collection/_shared/partion-iterable.js.map +1 -0
  311. package/dist/esm/collection/implementations/iterable-collection/_shared/repeat-iterable.js.map +1 -0
  312. package/dist/esm/collection/implementations/iterable-collection/_shared/reverse-iterable.js.map +1 -0
  313. package/dist/esm/collection/implementations/iterable-collection/_shared/shuffle-iterable.js.map +1 -0
  314. package/dist/esm/collection/implementations/iterable-collection/_shared/skip-iterable.js.map +1 -0
  315. package/dist/esm/collection/implementations/iterable-collection/_shared/skip-until-iterable.js.map +1 -0
  316. package/dist/esm/collection/implementations/iterable-collection/_shared/slice-iterable.js.map +1 -0
  317. package/dist/esm/collection/implementations/iterable-collection/_shared/sliding-iterable.js.map +1 -0
  318. package/dist/esm/collection/implementations/iterable-collection/_shared/sort-iterable.js.map +1 -0
  319. package/dist/esm/collection/implementations/iterable-collection/_shared/split-iterable.js.map +1 -0
  320. package/dist/esm/collection/implementations/iterable-collection/_shared/take-iterable.js.map +1 -0
  321. package/dist/esm/collection/implementations/iterable-collection/_shared/take-until-iterable.js.map +1 -0
  322. package/dist/esm/collection/implementations/iterable-collection/_shared/tap-iterable.js.map +1 -0
  323. package/dist/esm/collection/implementations/iterable-collection/_shared/unique-iterable.js.map +1 -0
  324. package/dist/esm/collection/implementations/iterable-collection/_shared/update-iterable.js.map +1 -0
  325. package/dist/esm/collection/implementations/iterable-collection/_shared/when-iterable.js.map +1 -0
  326. package/dist/esm/collection/implementations/iterable-collection/_shared/zip-iterable.js.map +1 -0
  327. package/dist/esm/collection/implementations/iterable-collection/iterable-collection.js +489 -0
  328. package/dist/esm/collection/implementations/iterable-collection/iterable-collection.js.map +1 -0
  329. package/dist/esm/collection/implementations/list-collection/_module.js +2 -0
  330. package/dist/esm/collection/implementations/list-collection/_module.js.map +1 -0
  331. package/dist/esm/collection/implementations/list-collection/list-collection.js +623 -0
  332. package/dist/esm/collection/implementations/list-collection/list-collection.js.map +1 -0
  333. package/dist/esm/serializer/_module.js +5 -5
  334. package/dist/esm/serializer/_module.js.map +1 -1
  335. package/dist/esm/serializer/contracts/_module.js +2 -0
  336. package/dist/esm/serializer/contracts/_module.js.map +1 -0
  337. package/dist/esm/serializer/contracts/serializer.contract.js.map +1 -0
  338. package/dist/esm/serializer/implementations/_module.js +6 -0
  339. package/dist/esm/serializer/implementations/_module.js.map +1 -0
  340. package/dist/esm/serializer/implementations/_shared/test-utilities/_module.js +2 -0
  341. package/dist/esm/serializer/implementations/_shared/test-utilities/_module.js.map +1 -0
  342. package/dist/esm/serializer/implementations/_shared/test-utilities/serializer.test-suite.js.map +1 -0
  343. package/dist/esm/serializer/implementations/mongodb-serializer/_module.js +2 -0
  344. package/dist/esm/serializer/implementations/mongodb-serializer/_module.js.map +1 -0
  345. package/dist/esm/serializer/implementations/mongodb-serializer/mongodb-serializer.js +32 -0
  346. package/dist/esm/serializer/implementations/mongodb-serializer/mongodb-serializer.js.map +1 -0
  347. package/dist/esm/serializer/implementations/redis-serializer/_module.js +2 -0
  348. package/dist/esm/serializer/implementations/redis-serializer/_module.js.map +1 -0
  349. package/dist/esm/serializer/implementations/redis-serializer/redis-serializer.js +33 -0
  350. package/dist/esm/serializer/implementations/redis-serializer/redis-serializer.js.map +1 -0
  351. package/dist/esm/serializer/implementations/sql-serializer/_module.js +2 -0
  352. package/dist/esm/serializer/implementations/sql-serializer/_module.js.map +1 -0
  353. package/dist/esm/serializer/implementations/sql-serializer/sql-serializer.js +33 -0
  354. package/dist/esm/serializer/implementations/sql-serializer/sql-serializer.js.map +1 -0
  355. package/dist/esm/serializer/implementations/super-json-serializer/_module.js +2 -0
  356. package/dist/esm/serializer/implementations/super-json-serializer/_module.js.map +1 -0
  357. package/dist/esm/serializer/implementations/super-json-serializer/super-json-serializer.js +277 -0
  358. package/dist/esm/serializer/implementations/super-json-serializer/super-json-serializer.js.map +1 -0
  359. package/dist/esm/storage/contracts/_module.js +4 -0
  360. package/dist/esm/storage/contracts/_module.js.map +1 -0
  361. package/dist/esm/storage/contracts/_shared.js.map +1 -0
  362. package/dist/esm/storage/contracts/storage-adapter.contract.js.map +1 -0
  363. package/dist/esm/storage/contracts/storage.contract.js.map +1 -0
  364. package/dist/esm/storage/implementations/_module.js +7 -0
  365. package/dist/esm/storage/implementations/_module.js.map +1 -0
  366. package/dist/esm/storage/implementations/_shared/test-utilities/_module.js +2 -0
  367. package/dist/esm/storage/implementations/_shared/test-utilities/_module.js.map +1 -0
  368. package/dist/esm/storage/implementations/_shared/test-utilities/storage-adapter-api.test-suite.js +297 -0
  369. package/dist/esm/storage/implementations/_shared/test-utilities/storage-adapter-api.test-suite.js.map +1 -0
  370. package/dist/esm/storage/implementations/_shared/test-utilities/storage-adapter-value.test-suite.js +1205 -0
  371. package/dist/esm/storage/implementations/_shared/test-utilities/storage-adapter-value.test-suite.js.map +1 -0
  372. package/dist/esm/storage/implementations/_shared/test-utilities/storage-adapter.test-suite.js +7 -0
  373. package/dist/esm/storage/implementations/_shared/test-utilities/storage-adapter.test-suite.js.map +1 -0
  374. package/dist/esm/storage/implementations/memory-storage-adapter/_module.js +2 -0
  375. package/dist/esm/storage/implementations/memory-storage-adapter/_module.js.map +1 -0
  376. package/dist/esm/storage/implementations/memory-storage-adapter/memory-storage-adapter.js +81 -0
  377. package/dist/esm/storage/implementations/memory-storage-adapter/memory-storage-adapter.js.map +1 -0
  378. package/dist/esm/storage/implementations/mongodb-storage-adapter/_module.js +2 -0
  379. package/dist/esm/storage/implementations/mongodb-storage-adapter/_module.js.map +1 -0
  380. package/dist/esm/storage/implementations/mongodb-storage-adapter/mongodb-storage-adapter.js +196 -0
  381. package/dist/esm/storage/implementations/mongodb-storage-adapter/mongodb-storage-adapter.js.map +1 -0
  382. package/dist/esm/storage/implementations/redis-storage-adapter/_module.js +2 -0
  383. package/dist/esm/storage/implementations/redis-storage-adapter/_module.js.map +1 -0
  384. package/dist/esm/storage/implementations/redis-storage-adapter/redis-storage-adapter.js +224 -0
  385. package/dist/esm/storage/implementations/redis-storage-adapter/redis-storage-adapter.js.map +1 -0
  386. package/dist/esm/storage/implementations/sqlite/_module.js +3 -0
  387. package/dist/esm/storage/implementations/sqlite/_module.js.map +1 -0
  388. package/dist/esm/storage/implementations/sqlite/_shared/_module.js +2 -0
  389. package/dist/esm/storage/implementations/sqlite/_shared/_module.js.map +1 -0
  390. package/dist/esm/storage/implementations/sqlite/_shared/base-sqlite-storage-adapter.js +186 -0
  391. package/dist/esm/storage/implementations/sqlite/_shared/base-sqlite-storage-adapter.js.map +1 -0
  392. package/dist/esm/storage/implementations/sqlite/libsql-storage-adapter/_module.js +2 -0
  393. package/dist/esm/storage/implementations/sqlite/libsql-storage-adapter/_module.js.map +1 -0
  394. package/dist/esm/storage/implementations/sqlite/libsql-storage-adapter/libsql-storage-adapter.js +49 -0
  395. package/dist/esm/storage/implementations/sqlite/libsql-storage-adapter/libsql-storage-adapter.js.map +1 -0
  396. package/dist/esm/storage/implementations/sqlite/sqlite-storage-adapter/_module.js +2 -0
  397. package/dist/esm/storage/implementations/sqlite/sqlite-storage-adapter/_module.js.map +1 -0
  398. package/dist/esm/storage/implementations/sqlite/sqlite-storage-adapter/sqlite-storage-adapter.js +48 -0
  399. package/dist/esm/storage/implementations/sqlite/sqlite-storage-adapter/sqlite-storage-adapter.js.map +1 -0
  400. package/dist/esm/storage/implementations/storage/_module.js +2 -0
  401. package/dist/esm/storage/implementations/storage/_module.js.map +1 -0
  402. package/dist/esm/storage/implementations/storage/storage.js +215 -0
  403. package/dist/esm/storage/implementations/storage/storage.js.map +1 -0
  404. package/dist/esm/storage/implementations/storage/with-namespace-storage-adapter.js +52 -0
  405. package/dist/esm/storage/implementations/storage/with-namespace-storage-adapter.js.map +1 -0
  406. package/dist/esm/storage/implementations/storage/with-validation-storage-adapter.js +44 -0
  407. package/dist/esm/storage/implementations/storage/with-validation-storage-adapter.js.map +1 -0
  408. package/dist/esm/utilities/_module.js +4 -0
  409. package/dist/esm/utilities/_module.js.map +1 -1
  410. package/dist/esm/utilities/async/_module.js +8 -0
  411. package/dist/esm/utilities/async/_module.js.map +1 -0
  412. package/dist/esm/utilities/async/_shared.js.map +1 -0
  413. package/dist/esm/utilities/async/abortable/_module.js +2 -0
  414. package/dist/esm/utilities/async/abortable/_module.js.map +1 -0
  415. package/dist/esm/utilities/async/abortable/abortable.js +45 -0
  416. package/dist/esm/utilities/async/abortable/abortable.js.map +1 -0
  417. package/dist/esm/utilities/async/backof-policies/_module.js +5 -0
  418. package/dist/esm/utilities/async/backof-policies/_module.js.map +1 -0
  419. package/dist/esm/utilities/async/backof-policies/_shared.js.map +1 -0
  420. package/dist/esm/utilities/async/backof-policies/constant-backoff-policy/_module.js +2 -0
  421. package/dist/esm/utilities/async/backof-policies/constant-backoff-policy/_module.js.map +1 -0
  422. package/dist/esm/utilities/async/backof-policies/constant-backoff-policy/constant-backoff-policy.js +16 -0
  423. package/dist/esm/utilities/async/backof-policies/constant-backoff-policy/constant-backoff-policy.js.map +1 -0
  424. package/dist/esm/utilities/async/backof-policies/exponential-backoff-policy/_module.js +2 -0
  425. package/dist/esm/utilities/async/backof-policies/exponential-backoff-policy/_module.js.map +1 -0
  426. package/dist/esm/utilities/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js +20 -0
  427. package/dist/esm/utilities/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js.map +1 -0
  428. package/dist/esm/utilities/async/backof-policies/linear-backoff-policy/_module.js +2 -0
  429. package/dist/esm/utilities/async/backof-policies/linear-backoff-policy/_module.js.map +1 -0
  430. package/dist/esm/utilities/async/backof-policies/linear-backoff-policy/linear-backoff-policy.js +20 -0
  431. package/dist/esm/utilities/async/backof-policies/linear-backoff-policy/linear-backoff-policy.js.map +1 -0
  432. package/dist/esm/utilities/async/backof-policies/polynomial-backoff-policy/_module.js +2 -0
  433. package/dist/esm/utilities/async/backof-policies/polynomial-backoff-policy/_module.js.map +1 -0
  434. package/dist/esm/utilities/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js +20 -0
  435. package/dist/esm/utilities/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js.map +1 -0
  436. package/dist/esm/utilities/async/delay/_module.js +2 -0
  437. package/dist/esm/utilities/async/delay/_module.js.map +1 -0
  438. package/dist/esm/utilities/async/delay/delay.js +21 -0
  439. package/dist/esm/utilities/async/delay/delay.js.map +1 -0
  440. package/dist/esm/utilities/async/lazy-promise/_module.js +2 -0
  441. package/dist/esm/utilities/async/lazy-promise/_module.js.map +1 -0
  442. package/dist/esm/utilities/async/lazy-promise/lazy-promise.js.map +1 -0
  443. package/dist/esm/utilities/async/retry/_module.js +2 -0
  444. package/dist/esm/utilities/async/retry/_module.js.map +1 -0
  445. package/dist/esm/utilities/async/retry/retry.js +40 -0
  446. package/dist/esm/utilities/async/retry/retry.js.map +1 -0
  447. package/dist/esm/utilities/async/timeout/_module.js +2 -0
  448. package/dist/esm/utilities/async/timeout/_module.js.map +1 -0
  449. package/dist/esm/utilities/async/timeout/timeout.js +25 -0
  450. package/dist/esm/utilities/async/timeout/timeout.js.map +1 -0
  451. package/dist/esm/utilities/async-iterable/_module.js +5 -0
  452. package/dist/esm/utilities/async-iterable/_module.js.map +1 -0
  453. package/dist/esm/utilities/async-iterable/abortable-iterable/_module.js +2 -0
  454. package/dist/esm/utilities/async-iterable/abortable-iterable/_module.js.map +1 -0
  455. package/dist/esm/utilities/async-iterable/abortable-iterable/abortable-iterable.js +29 -0
  456. package/dist/esm/utilities/async-iterable/abortable-iterable/abortable-iterable.js.map +1 -0
  457. package/dist/esm/utilities/async-iterable/delay-iterable/_module.js +2 -0
  458. package/dist/esm/utilities/async-iterable/delay-iterable/_module.js.map +1 -0
  459. package/dist/esm/utilities/async-iterable/delay-iterable/delay-iterable.js +33 -0
  460. package/dist/esm/utilities/async-iterable/delay-iterable/delay-iterable.js.map +1 -0
  461. package/dist/esm/utilities/async-iterable/retry-iterable/_module.js +2 -0
  462. package/dist/esm/utilities/async-iterable/retry-iterable/_module.js.map +1 -0
  463. package/dist/esm/utilities/async-iterable/retry-iterable/retry-iterable.js +29 -0
  464. package/dist/esm/utilities/async-iterable/retry-iterable/retry-iterable.js.map +1 -0
  465. package/dist/esm/utilities/async-iterable/timeout-iterable/_module.js +2 -0
  466. package/dist/esm/utilities/async-iterable/timeout-iterable/_module.js.map +1 -0
  467. package/dist/esm/utilities/async-iterable/timeout-iterable/timeout-iterable.js +8 -0
  468. package/dist/esm/utilities/async-iterable/timeout-iterable/timeout-iterable.js.map +1 -0
  469. package/dist/esm/utilities/time-span/time-span.js +2 -2
  470. package/dist/esm/utilities/time-span/time-span.js.map +1 -1
  471. package/dist/esm/utilities/validation/_module.js +17 -0
  472. package/dist/esm/utilities/validation/_module.js.map +1 -0
  473. package/dist/types/_module.d.ts +6 -5
  474. package/dist/types/_shared/types.d.ts +0 -4
  475. package/dist/types/collection/contracts/_module.d.ts +3 -0
  476. package/dist/types/collection/contracts/async-collection.contract.d.ts +1309 -0
  477. package/dist/types/collection/contracts/collection.contract.d.ts +1269 -0
  478. package/dist/types/collection/implementations/_module.d.ts +4 -0
  479. package/dist/types/collection/implementations/async-iterable-collection/_module.d.ts +1 -0
  480. package/dist/types/collection/implementations/async-iterable-collection/_shared/_module.d.ts +33 -0
  481. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-chunk-iterable.d.ts +12 -0
  482. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-chunk-while-iterable.d.ts +12 -0
  483. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-collapse-iterable.d.ts +9 -0
  484. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-count-by-iterable.d.ts +11 -0
  485. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-cross-join-iterable.d.ts +13 -0
  486. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-entries-iterable.d.ts +10 -0
  487. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-filter-iterable.d.ts +10 -0
  488. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-flat-map-iterable.d.ts +10 -0
  489. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-group-by-iterable.d.ts +12 -0
  490. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-insert-after-iterable.d.ts +12 -0
  491. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-insert-before-iterable.d.ts +12 -0
  492. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-map-iterable.d.ts +10 -0
  493. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-merge-iterable.d.ts +10 -0
  494. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-pad-end-iterable.d.ts +13 -0
  495. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-pad-start-iterable.d.ts +13 -0
  496. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-partion-iterable.d.ts +12 -0
  497. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-repeat-iterable.d.ts +12 -0
  498. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-reverse-iterable.d.ts +12 -0
  499. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-shuffle-iterable.d.ts +10 -0
  500. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-skip-iterable.d.ts +10 -0
  501. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-skip-until-iterable.d.ts +10 -0
  502. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-slice-iterable.d.ts +11 -0
  503. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-sliding-iterable.d.ts +11 -0
  504. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-sort-iterable.d.ts +10 -0
  505. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-split-iterable.d.ts +12 -0
  506. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-take-iterable.d.ts +10 -0
  507. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-take-until-iterable.d.ts +10 -0
  508. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-tap-iterable.d.ts +10 -0
  509. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-unique-iterable.d.ts +10 -0
  510. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-update-iterable.d.ts +11 -0
  511. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-when-iterable.d.ts +11 -0
  512. package/dist/types/collection/implementations/async-iterable-collection/_shared/async-zip-iterable.d.ts +11 -0
  513. package/dist/types/collection/implementations/async-iterable-collection/async-iterable-collection.d.ts +105 -0
  514. package/dist/types/collection/implementations/iterable-collection/_module.d.ts +1 -0
  515. package/dist/types/collection/implementations/iterable-collection/_shared/_module.d.ts +32 -0
  516. package/dist/types/collection/implementations/iterable-collection/_shared/chunk-iterable.d.ts +11 -0
  517. package/dist/types/collection/implementations/iterable-collection/_shared/chunk-while-iterable.d.ts +11 -0
  518. package/dist/types/collection/implementations/iterable-collection/_shared/collapse-iterable.d.ts +9 -0
  519. package/dist/types/collection/implementations/iterable-collection/_shared/count-by-iterable.d.ts +11 -0
  520. package/dist/types/collection/implementations/iterable-collection/_shared/cross-join-iterable.d.ts +8 -0
  521. package/dist/types/collection/implementations/iterable-collection/_shared/entries-iterable.d.ts +9 -0
  522. package/dist/types/collection/implementations/iterable-collection/_shared/filter-iterable.d.ts +10 -0
  523. package/dist/types/collection/implementations/iterable-collection/_shared/flat-map-iterable.d.ts +10 -0
  524. package/dist/types/collection/implementations/iterable-collection/_shared/group-by-iterable.d.ts +12 -0
  525. package/dist/types/collection/implementations/iterable-collection/_shared/insert-after-iterable.d.ts +11 -0
  526. package/dist/types/collection/implementations/iterable-collection/_shared/insert-before-iterable.d.ts +11 -0
  527. package/dist/types/collection/implementations/iterable-collection/_shared/map-iterable.d.ts +10 -0
  528. package/dist/types/collection/implementations/iterable-collection/_shared/pad-end-iterable.d.ts +12 -0
  529. package/dist/types/collection/implementations/iterable-collection/_shared/pad-start-iterable.d.ts +12 -0
  530. package/dist/types/collection/implementations/iterable-collection/_shared/partion-iterable.d.ts +11 -0
  531. package/dist/types/collection/implementations/iterable-collection/_shared/repeat-iterable.d.ts +11 -0
  532. package/dist/types/collection/implementations/iterable-collection/_shared/reverse-iterable.d.ts +11 -0
  533. package/dist/types/collection/implementations/iterable-collection/_shared/skip-iterable.d.ts +10 -0
  534. package/dist/types/collection/implementations/iterable-collection/_shared/skip-until-iterable.d.ts +10 -0
  535. package/dist/types/collection/implementations/iterable-collection/_shared/slice-iterable.d.ts +11 -0
  536. package/dist/types/collection/implementations/iterable-collection/_shared/sliding-iterable.d.ts +11 -0
  537. package/dist/types/collection/implementations/iterable-collection/_shared/sort-iterable.d.ts +10 -0
  538. package/dist/types/collection/implementations/iterable-collection/_shared/split-iterable.d.ts +11 -0
  539. package/dist/types/collection/implementations/iterable-collection/_shared/take-iterable.d.ts +10 -0
  540. package/dist/types/collection/implementations/iterable-collection/_shared/take-until-iterable.d.ts +10 -0
  541. package/dist/types/collection/implementations/iterable-collection/_shared/tap-iterable.d.ts +10 -0
  542. package/dist/types/collection/implementations/iterable-collection/_shared/unique-iterable.d.ts +10 -0
  543. package/dist/types/collection/implementations/iterable-collection/_shared/update-iterable.d.ts +11 -0
  544. package/dist/types/collection/implementations/iterable-collection/_shared/when-iterable.d.ts +11 -0
  545. package/dist/types/collection/implementations/iterable-collection/_shared/zip-iterable.d.ts +10 -0
  546. package/dist/types/collection/implementations/iterable-collection/iterable-collection.d.ts +100 -0
  547. package/dist/types/collection/implementations/list-collection/_module.d.ts +1 -0
  548. package/dist/types/collection/implementations/list-collection/list-collection.d.ts +97 -0
  549. package/dist/types/serializer/_module.d.ts +5 -5
  550. package/dist/types/serializer/contracts/_module.d.ts +1 -0
  551. package/dist/types/serializer/implementations/_module.d.ts +5 -0
  552. package/dist/types/serializer/implementations/_shared/test-utilities/_module.d.ts +1 -0
  553. package/dist/types/serializer/implementations/_shared/test-utilities/serializer.test-suite.d.ts +18 -0
  554. package/dist/types/serializer/implementations/mongodb-serializer/_module.d.ts +1 -0
  555. package/dist/types/serializer/implementations/mongodb-serializer/mongodb-serializer.d.ts +13 -0
  556. package/dist/types/serializer/implementations/redis-serializer/_module.d.ts +1 -0
  557. package/dist/types/serializer/implementations/redis-serializer/redis-serializer.d.ts +13 -0
  558. package/dist/types/serializer/implementations/sql-serializer/_module.d.ts +1 -0
  559. package/dist/types/serializer/implementations/sql-serializer/sql-serializer.d.ts +13 -0
  560. package/dist/types/serializer/implementations/super-json-serializer/_module.d.ts +1 -0
  561. package/dist/types/serializer/implementations/super-json-serializer/super-json-serializer.d.ts +37 -0
  562. package/dist/types/storage/contracts/_module.d.ts +3 -0
  563. package/dist/types/storage/contracts/storage-adapter.contract.d.ts +53 -0
  564. package/dist/types/storage/contracts/storage.contract.d.ts +151 -0
  565. package/dist/types/storage/implementations/_module.d.ts +6 -0
  566. package/dist/types/storage/implementations/_shared/test-utilities/_module.d.ts +1 -0
  567. package/dist/types/storage/implementations/_shared/test-utilities/storage-adapter-api.test-suite.d.ts +20 -0
  568. package/dist/types/storage/implementations/_shared/test-utilities/storage-adapter-value.test-suite.d.ts +20 -0
  569. package/dist/types/storage/implementations/_shared/test-utilities/storage-adapter.test-suite.d.ts +20 -0
  570. package/dist/types/storage/implementations/memory-storage-adapter/_module.d.ts +1 -0
  571. package/dist/types/storage/implementations/memory-storage-adapter/memory-storage-adapter.d.ts +18 -0
  572. package/dist/types/storage/implementations/mongodb-storage-adapter/_module.d.ts +1 -0
  573. package/dist/types/storage/implementations/mongodb-storage-adapter/mongodb-storage-adapter.d.ts +43 -0
  574. package/dist/types/storage/implementations/redis-storage-adapter/_module.d.ts +1 -0
  575. package/dist/types/storage/implementations/redis-storage-adapter/redis-storage-adapter.d.ts +38 -0
  576. package/dist/types/storage/implementations/sqlite/_module.d.ts +2 -0
  577. package/dist/types/storage/implementations/sqlite/_shared/_module.d.ts +1 -0
  578. package/dist/types/storage/implementations/sqlite/_shared/base-sqlite-storage-adapter.d.ts +39 -0
  579. package/dist/types/storage/implementations/sqlite/libsql-storage-adapter/_module.d.ts +1 -0
  580. package/dist/types/storage/implementations/sqlite/libsql-storage-adapter/libsql-storage-adapter.d.ts +30 -0
  581. package/dist/types/storage/implementations/sqlite/sqlite-storage-adapter/_module.d.ts +1 -0
  582. package/dist/types/storage/implementations/sqlite/sqlite-storage-adapter/sqlite-storage-adapter.d.ts +30 -0
  583. package/dist/types/storage/implementations/storage/_module.d.ts +1 -0
  584. package/dist/types/storage/implementations/storage/storage.d.ts +41 -0
  585. package/dist/types/storage/implementations/storage/with-namespace-storage-adapter.d.ts +25 -0
  586. package/dist/types/storage/implementations/storage/with-validation-storage-adapter.d.ts +19 -0
  587. package/dist/types/utilities/_module.d.ts +4 -0
  588. package/dist/types/utilities/async/_module.d.ts +7 -0
  589. package/dist/types/utilities/async/abortable/_module.d.ts +1 -0
  590. package/dist/types/utilities/async/abortable/abortable.d.ts +39 -0
  591. package/dist/types/utilities/async/backof-policies/_module.d.ts +5 -0
  592. package/dist/types/utilities/async/backof-policies/constant-backoff-policy/_module.d.ts +1 -0
  593. package/dist/types/utilities/async/backof-policies/constant-backoff-policy/constant-backoff-policy.d.ts +28 -0
  594. package/dist/types/utilities/async/backof-policies/exponential-backoff-policy/_module.d.ts +1 -0
  595. package/dist/types/utilities/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.d.ts +36 -0
  596. package/dist/types/utilities/async/backof-policies/linear-backoff-policy/_module.d.ts +1 -0
  597. package/dist/types/utilities/async/backof-policies/linear-backoff-policy/linear-backoff-policy.d.ts +32 -0
  598. package/dist/types/utilities/async/backof-policies/polynomial-backoff-policy/_module.d.ts +1 -0
  599. package/dist/types/utilities/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.d.ts +36 -0
  600. package/dist/types/utilities/async/delay/_module.d.ts +1 -0
  601. package/dist/types/utilities/async/delay/delay.d.ts +38 -0
  602. package/dist/types/utilities/async/lazy-promise/_module.d.ts +1 -0
  603. package/dist/types/utilities/async/retry/_module.d.ts +1 -0
  604. package/dist/types/utilities/async/retry/retry.d.ts +86 -0
  605. package/dist/types/utilities/async/timeout/_module.d.ts +1 -0
  606. package/dist/types/utilities/async/timeout/timeout.d.ts +40 -0
  607. package/dist/types/utilities/async-iterable/_module.d.ts +4 -0
  608. package/dist/types/utilities/async-iterable/abortable-iterable/_module.d.ts +1 -0
  609. package/dist/types/utilities/async-iterable/delay-iterable/_module.d.ts +1 -0
  610. package/dist/types/utilities/async-iterable/delay-iterable/delay-iterable.d.ts +57 -0
  611. package/dist/types/utilities/async-iterable/retry-iterable/_module.d.ts +1 -0
  612. package/dist/types/utilities/async-iterable/retry-iterable/retry-iterable.d.ts +86 -0
  613. package/dist/types/utilities/async-iterable/timeout-iterable/_module.d.ts +1 -0
  614. package/dist/types/utilities/async-iterable/timeout-iterable/timeout-iterable.d.ts +64 -0
  615. package/dist/types/utilities/time-span/time-span.d.ts +3 -3
  616. package/dist/types/utilities/validation/_module.d.ts +12 -0
  617. package/package.json +10 -6
  618. package/dist/cjs/async/_module.js +0 -30
  619. package/dist/cjs/async/_module.js.map +0 -1
  620. package/dist/cjs/async/_shared.js.map +0 -1
  621. package/dist/cjs/async/abortable/_module.js +0 -18
  622. package/dist/cjs/async/abortable/_module.js.map +0 -1
  623. package/dist/cjs/async/abortable/abortable.js +0 -48
  624. package/dist/cjs/async/abortable/abortable.js.map +0 -1
  625. package/dist/cjs/async/abortable-iterable/_module.js +0 -18
  626. package/dist/cjs/async/abortable-iterable/_module.js.map +0 -1
  627. package/dist/cjs/async/abortable-iterable/abortable-iterable.js +0 -32
  628. package/dist/cjs/async/abortable-iterable/abortable-iterable.js.map +0 -1
  629. package/dist/cjs/async/backof-policies/_module.js +0 -21
  630. package/dist/cjs/async/backof-policies/_module.js.map +0 -1
  631. package/dist/cjs/async/backof-policies/_shared.js.map +0 -1
  632. package/dist/cjs/async/backof-policies/constant-backoff-policy/_module.js +0 -18
  633. package/dist/cjs/async/backof-policies/constant-backoff-policy/_module.js.map +0 -1
  634. package/dist/cjs/async/backof-policies/constant-backoff-policy/constant-backoff-policy.js +0 -19
  635. package/dist/cjs/async/backof-policies/constant-backoff-policy/constant-backoff-policy.js.map +0 -1
  636. package/dist/cjs/async/backof-policies/exponential-backoff-policy/_module.js +0 -18
  637. package/dist/cjs/async/backof-policies/exponential-backoff-policy/_module.js.map +0 -1
  638. package/dist/cjs/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js +0 -23
  639. package/dist/cjs/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js.map +0 -1
  640. package/dist/cjs/async/backof-policies/linear-backoff-policy/_module.js +0 -18
  641. package/dist/cjs/async/backof-policies/linear-backoff-policy/_module.js.map +0 -1
  642. package/dist/cjs/async/backof-policies/linear-backoff-policy/linear-backoff-policy.js +0 -23
  643. package/dist/cjs/async/backof-policies/linear-backoff-policy/linear-backoff-policy.js.map +0 -1
  644. package/dist/cjs/async/backof-policies/polynomial-backoff-policy/_module.js +0 -18
  645. package/dist/cjs/async/backof-policies/polynomial-backoff-policy/_module.js.map +0 -1
  646. package/dist/cjs/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js +0 -23
  647. package/dist/cjs/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js.map +0 -1
  648. package/dist/cjs/async/delay/_module.js +0 -18
  649. package/dist/cjs/async/delay/_module.js.map +0 -1
  650. package/dist/cjs/async/delay/delay.js +0 -24
  651. package/dist/cjs/async/delay/delay.js.map +0 -1
  652. package/dist/cjs/async/delay-iterable/_module.js +0 -18
  653. package/dist/cjs/async/delay-iterable/_module.js.map +0 -1
  654. package/dist/cjs/async/delay-iterable/delay-iterable.js +0 -36
  655. package/dist/cjs/async/delay-iterable/delay-iterable.js.map +0 -1
  656. package/dist/cjs/async/lazy-promise/_module.js +0 -18
  657. package/dist/cjs/async/lazy-promise/_module.js.map +0 -1
  658. package/dist/cjs/async/lazy-promise/lazy-promise.js.map +0 -1
  659. package/dist/cjs/async/retry/_module.js +0 -18
  660. package/dist/cjs/async/retry/_module.js.map +0 -1
  661. package/dist/cjs/async/retry/retry.js +0 -43
  662. package/dist/cjs/async/retry/retry.js.map +0 -1
  663. package/dist/cjs/async/retry-iterable/_module.js +0 -18
  664. package/dist/cjs/async/retry-iterable/_module.js.map +0 -1
  665. package/dist/cjs/async/retry-iterable/retry-iterable.js +0 -32
  666. package/dist/cjs/async/retry-iterable/retry-iterable.js.map +0 -1
  667. package/dist/cjs/async/timeout/_module.js +0 -18
  668. package/dist/cjs/async/timeout/_module.js.map +0 -1
  669. package/dist/cjs/async/timeout/timeout.js +0 -28
  670. package/dist/cjs/async/timeout/timeout.js.map +0 -1
  671. package/dist/cjs/async/timeout-iterable/_module.js +0 -18
  672. package/dist/cjs/async/timeout-iterable/_module.js.map +0 -1
  673. package/dist/cjs/async/timeout-iterable/timeout-iterable.js +0 -11
  674. package/dist/cjs/async/timeout-iterable/timeout-iterable.js.map +0 -1
  675. package/dist/cjs/collection/_module.js +0 -21
  676. package/dist/cjs/collection/_module.js.map +0 -1
  677. package/dist/cjs/collection/_shared.js.map +0 -1
  678. package/dist/cjs/collection/async-iterable-collection/_module.js +0 -18
  679. package/dist/cjs/collection/async-iterable-collection/_module.js.map +0 -1
  680. package/dist/cjs/collection/async-iterable-collection/_shared/_module.js +0 -50
  681. package/dist/cjs/collection/async-iterable-collection/_shared/_module.js.map +0 -1
  682. package/dist/cjs/collection/async-iterable-collection/_shared/async-chunk-iterable.js.map +0 -1
  683. package/dist/cjs/collection/async-iterable-collection/_shared/async-chunk-while-iterable.js.map +0 -1
  684. package/dist/cjs/collection/async-iterable-collection/_shared/async-collapse-iterable.js +0 -22
  685. package/dist/cjs/collection/async-iterable-collection/_shared/async-collapse-iterable.js.map +0 -1
  686. package/dist/cjs/collection/async-iterable-collection/_shared/async-count-by-iterable.js.map +0 -1
  687. package/dist/cjs/collection/async-iterable-collection/_shared/async-cross-join-iterable.js +0 -35
  688. package/dist/cjs/collection/async-iterable-collection/_shared/async-cross-join-iterable.js.map +0 -1
  689. package/dist/cjs/collection/async-iterable-collection/_shared/async-entries-iterable.js.map +0 -1
  690. package/dist/cjs/collection/async-iterable-collection/_shared/async-error-handler-iterable.js.map +0 -1
  691. package/dist/cjs/collection/async-iterable-collection/_shared/async-filter-iterable.js.map +0 -1
  692. package/dist/cjs/collection/async-iterable-collection/_shared/async-flat-map-iterable.js.map +0 -1
  693. package/dist/cjs/collection/async-iterable-collection/_shared/async-group-by-iterable.js.map +0 -1
  694. package/dist/cjs/collection/async-iterable-collection/_shared/async-insert-after-iterable.js.map +0 -1
  695. package/dist/cjs/collection/async-iterable-collection/_shared/async-insert-before-iterable.js.map +0 -1
  696. package/dist/cjs/collection/async-iterable-collection/_shared/async-map-iterable.js.map +0 -1
  697. package/dist/cjs/collection/async-iterable-collection/_shared/async-merge-iterable.js.map +0 -1
  698. package/dist/cjs/collection/async-iterable-collection/_shared/async-pad-end-iterable.js.map +0 -1
  699. package/dist/cjs/collection/async-iterable-collection/_shared/async-pad-start-iterable.js.map +0 -1
  700. package/dist/cjs/collection/async-iterable-collection/_shared/async-partion-iterable.js.map +0 -1
  701. package/dist/cjs/collection/async-iterable-collection/_shared/async-repeat-iterable.js.map +0 -1
  702. package/dist/cjs/collection/async-iterable-collection/_shared/async-reverse-iterable.js.map +0 -1
  703. package/dist/cjs/collection/async-iterable-collection/_shared/async-shuffle-iterable.js.map +0 -1
  704. package/dist/cjs/collection/async-iterable-collection/_shared/async-skip-iterable.js.map +0 -1
  705. package/dist/cjs/collection/async-iterable-collection/_shared/async-skip-until-iterable.js.map +0 -1
  706. package/dist/cjs/collection/async-iterable-collection/_shared/async-slice-iterable.js.map +0 -1
  707. package/dist/cjs/collection/async-iterable-collection/_shared/async-sliding-iterable.js.map +0 -1
  708. package/dist/cjs/collection/async-iterable-collection/_shared/async-sort-iterable.js.map +0 -1
  709. package/dist/cjs/collection/async-iterable-collection/_shared/async-split-iterable.js.map +0 -1
  710. package/dist/cjs/collection/async-iterable-collection/_shared/async-take-iterable.js.map +0 -1
  711. package/dist/cjs/collection/async-iterable-collection/_shared/async-take-until-iterable.js.map +0 -1
  712. package/dist/cjs/collection/async-iterable-collection/_shared/async-tap-iterable.js.map +0 -1
  713. package/dist/cjs/collection/async-iterable-collection/_shared/async-unique-iterable.js.map +0 -1
  714. package/dist/cjs/collection/async-iterable-collection/_shared/async-update-iterable.js.map +0 -1
  715. package/dist/cjs/collection/async-iterable-collection/_shared/async-when-iterable.js.map +0 -1
  716. package/dist/cjs/collection/async-iterable-collection/_shared/async-zip-iterable.js +0 -37
  717. package/dist/cjs/collection/async-iterable-collection/_shared/async-zip-iterable.js.map +0 -1
  718. package/dist/cjs/collection/async-iterable-collection/async-iterable-collection.js +0 -547
  719. package/dist/cjs/collection/async-iterable-collection/async-iterable-collection.js.map +0 -1
  720. package/dist/cjs/collection/iterable-collection/_module.js +0 -18
  721. package/dist/cjs/collection/iterable-collection/_module.js.map +0 -1
  722. package/dist/cjs/collection/iterable-collection/_shared/_module.js +0 -49
  723. package/dist/cjs/collection/iterable-collection/_shared/_module.js.map +0 -1
  724. package/dist/cjs/collection/iterable-collection/_shared/chunk-iterable.js.map +0 -1
  725. package/dist/cjs/collection/iterable-collection/_shared/chunk-while-iterable.js.map +0 -1
  726. package/dist/cjs/collection/iterable-collection/_shared/collapse-iterable.js +0 -22
  727. package/dist/cjs/collection/iterable-collection/_shared/collapse-iterable.js.map +0 -1
  728. package/dist/cjs/collection/iterable-collection/_shared/count-by-iterable.js.map +0 -1
  729. package/dist/cjs/collection/iterable-collection/_shared/cross-join-iterable.js +0 -37
  730. package/dist/cjs/collection/iterable-collection/_shared/cross-join-iterable.js.map +0 -1
  731. package/dist/cjs/collection/iterable-collection/_shared/entries-iterable.js.map +0 -1
  732. package/dist/cjs/collection/iterable-collection/_shared/filter-iterable.js.map +0 -1
  733. package/dist/cjs/collection/iterable-collection/_shared/flat-map-iterable.js.map +0 -1
  734. package/dist/cjs/collection/iterable-collection/_shared/group-by-iterable.js.map +0 -1
  735. package/dist/cjs/collection/iterable-collection/_shared/insert-after-iterable.js.map +0 -1
  736. package/dist/cjs/collection/iterable-collection/_shared/insert-before-iterable.js.map +0 -1
  737. package/dist/cjs/collection/iterable-collection/_shared/map-iterable.js.map +0 -1
  738. package/dist/cjs/collection/iterable-collection/_shared/merge-iterable.js.map +0 -1
  739. package/dist/cjs/collection/iterable-collection/_shared/pad-end-iterable.js.map +0 -1
  740. package/dist/cjs/collection/iterable-collection/_shared/pad-start-iterable.js.map +0 -1
  741. package/dist/cjs/collection/iterable-collection/_shared/partion-iterable.js.map +0 -1
  742. package/dist/cjs/collection/iterable-collection/_shared/repeat-iterable.js.map +0 -1
  743. package/dist/cjs/collection/iterable-collection/_shared/reverse-iterable.js.map +0 -1
  744. package/dist/cjs/collection/iterable-collection/_shared/shuffle-iterable.js.map +0 -1
  745. package/dist/cjs/collection/iterable-collection/_shared/skip-iterable.js.map +0 -1
  746. package/dist/cjs/collection/iterable-collection/_shared/skip-until-iterable.js.map +0 -1
  747. package/dist/cjs/collection/iterable-collection/_shared/slice-iterable.js.map +0 -1
  748. package/dist/cjs/collection/iterable-collection/_shared/sliding-iterable.js.map +0 -1
  749. package/dist/cjs/collection/iterable-collection/_shared/sort-iterable.js.map +0 -1
  750. package/dist/cjs/collection/iterable-collection/_shared/split-iterable.js.map +0 -1
  751. package/dist/cjs/collection/iterable-collection/_shared/take-iterable.js.map +0 -1
  752. package/dist/cjs/collection/iterable-collection/_shared/take-until-iterable.js.map +0 -1
  753. package/dist/cjs/collection/iterable-collection/_shared/tap-iterable.js.map +0 -1
  754. package/dist/cjs/collection/iterable-collection/_shared/unique-iterable.js.map +0 -1
  755. package/dist/cjs/collection/iterable-collection/_shared/update-iterable.js.map +0 -1
  756. package/dist/cjs/collection/iterable-collection/_shared/when-iterable.js.map +0 -1
  757. package/dist/cjs/collection/iterable-collection/_shared/zip-iterable.js.map +0 -1
  758. package/dist/cjs/collection/iterable-collection/iterable-collection.js +0 -493
  759. package/dist/cjs/collection/iterable-collection/iterable-collection.js.map +0 -1
  760. package/dist/cjs/collection/list-collection/_module.js +0 -18
  761. package/dist/cjs/collection/list-collection/_module.js.map +0 -1
  762. package/dist/cjs/collection/list-collection/list-collection.js +0 -627
  763. package/dist/cjs/collection/list-collection/list-collection.js.map +0 -1
  764. package/dist/cjs/contracts/_module.js +0 -20
  765. package/dist/cjs/contracts/_module.js.map +0 -1
  766. package/dist/cjs/contracts/collection/_module.js +0 -20
  767. package/dist/cjs/contracts/collection/_module.js.map +0 -1
  768. package/dist/cjs/contracts/collection/_shared.js.map +0 -1
  769. package/dist/cjs/contracts/collection/async-collection.contract.js.map +0 -1
  770. package/dist/cjs/contracts/collection/collection.contract.js.map +0 -1
  771. package/dist/cjs/contracts/serializer/_module.js +0 -18
  772. package/dist/cjs/contracts/serializer/_module.js.map +0 -1
  773. package/dist/cjs/contracts/serializer/serializer.contract.js.map +0 -1
  774. package/dist/cjs/contracts/storage/_module.js +0 -20
  775. package/dist/cjs/contracts/storage/_module.js.map +0 -1
  776. package/dist/cjs/contracts/storage/_shared.js.map +0 -1
  777. package/dist/cjs/contracts/storage/storage-adapter.contract.js.map +0 -1
  778. package/dist/cjs/contracts/storage/storage.contract.js.map +0 -1
  779. package/dist/cjs/serializer/_shared/test-utilities/_module.js +0 -18
  780. package/dist/cjs/serializer/_shared/test-utilities/_module.js.map +0 -1
  781. package/dist/cjs/serializer/_shared/test-utilities/serializer.test-suite.js.map +0 -1
  782. package/dist/cjs/serializer/mongodb-serializer/_module.js +0 -18
  783. package/dist/cjs/serializer/mongodb-serializer/_module.js.map +0 -1
  784. package/dist/cjs/serializer/mongodb-serializer/mongodb-serializer.js +0 -36
  785. package/dist/cjs/serializer/mongodb-serializer/mongodb-serializer.js.map +0 -1
  786. package/dist/cjs/serializer/redis-serializer/_module.js +0 -18
  787. package/dist/cjs/serializer/redis-serializer/_module.js.map +0 -1
  788. package/dist/cjs/serializer/redis-serializer/redis-serializer.js +0 -37
  789. package/dist/cjs/serializer/redis-serializer/redis-serializer.js.map +0 -1
  790. package/dist/cjs/serializer/sql-serializer/_module.js +0 -18
  791. package/dist/cjs/serializer/sql-serializer/_module.js.map +0 -1
  792. package/dist/cjs/serializer/sql-serializer/sql-serializer.js +0 -37
  793. package/dist/cjs/serializer/sql-serializer/sql-serializer.js.map +0 -1
  794. package/dist/cjs/serializer/super-json-serializer/_module.js +0 -18
  795. package/dist/cjs/serializer/super-json-serializer/_module.js.map +0 -1
  796. package/dist/cjs/serializer/super-json-serializer/super-json-serializer.js +0 -304
  797. package/dist/cjs/serializer/super-json-serializer/super-json-serializer.js.map +0 -1
  798. package/dist/cjs/storage/_module.js +0 -23
  799. package/dist/cjs/storage/_module.js.map +0 -1
  800. package/dist/cjs/storage/_shared/test-utilities/_module.js +0 -18
  801. package/dist/cjs/storage/_shared/test-utilities/_module.js.map +0 -1
  802. package/dist/cjs/storage/_shared/test-utilities/storage-api.test-suite.js +0 -572
  803. package/dist/cjs/storage/_shared/test-utilities/storage-api.test-suite.js.map +0 -1
  804. package/dist/cjs/storage/_shared/test-utilities/storage-namespace.test-suite.js +0 -241
  805. package/dist/cjs/storage/_shared/test-utilities/storage-namespace.test-suite.js.map +0 -1
  806. package/dist/cjs/storage/_shared/test-utilities/storage-value.test-suite.js +0 -4172
  807. package/dist/cjs/storage/_shared/test-utilities/storage-value.test-suite.js.map +0 -1
  808. package/dist/cjs/storage/_shared/test-utilities/storage.test-suite.js +0 -12
  809. package/dist/cjs/storage/_shared/test-utilities/storage.test-suite.js.map +0 -1
  810. package/dist/cjs/storage/memory-storage-adapter/_module.js +0 -18
  811. package/dist/cjs/storage/memory-storage-adapter/_module.js.map +0 -1
  812. package/dist/cjs/storage/memory-storage-adapter/memory-storage-adapter.js +0 -62
  813. package/dist/cjs/storage/memory-storage-adapter/memory-storage-adapter.js.map +0 -1
  814. package/dist/cjs/storage/mongodb-storage-adapter/_module.js +0 -6
  815. package/dist/cjs/storage/mongodb-storage-adapter/_module.js.map +0 -1
  816. package/dist/cjs/storage/mongodb-storage-adapter/mongodb-storage-adapter.js +0 -273
  817. package/dist/cjs/storage/mongodb-storage-adapter/mongodb-storage-adapter.js.map +0 -1
  818. package/dist/cjs/storage/namespace-storage-adapter.js +0 -66
  819. package/dist/cjs/storage/namespace-storage-adapter.js.map +0 -1
  820. package/dist/cjs/storage/redis-storage-adapter/_module.js +0 -18
  821. package/dist/cjs/storage/redis-storage-adapter/_module.js.map +0 -1
  822. package/dist/cjs/storage/redis-storage-adapter/redis-storage-adapter.js +0 -248
  823. package/dist/cjs/storage/redis-storage-adapter/redis-storage-adapter.js.map +0 -1
  824. package/dist/cjs/storage/sqlite/_module.js +0 -19
  825. package/dist/cjs/storage/sqlite/_module.js.map +0 -1
  826. package/dist/cjs/storage/sqlite/_shared/_module.js +0 -18
  827. package/dist/cjs/storage/sqlite/_shared/_module.js.map +0 -1
  828. package/dist/cjs/storage/sqlite/_shared/base-sqlite-storage-adapter.js +0 -224
  829. package/dist/cjs/storage/sqlite/_shared/base-sqlite-storage-adapter.js.map +0 -1
  830. package/dist/cjs/storage/sqlite/libsql-storage-adapter/_module.js +0 -18
  831. package/dist/cjs/storage/sqlite/libsql-storage-adapter/_module.js.map +0 -1
  832. package/dist/cjs/storage/sqlite/libsql-storage-adapter/libsql-storage-adapter.js +0 -53
  833. package/dist/cjs/storage/sqlite/libsql-storage-adapter/libsql-storage-adapter.js.map +0 -1
  834. package/dist/cjs/storage/sqlite/sqlite-storage-adapter/_module.js +0 -18
  835. package/dist/cjs/storage/sqlite/sqlite-storage-adapter/_module.js.map +0 -1
  836. package/dist/cjs/storage/sqlite/sqlite-storage-adapter/sqlite-storage-adapter.js +0 -52
  837. package/dist/cjs/storage/sqlite/sqlite-storage-adapter/sqlite-storage-adapter.js.map +0 -1
  838. package/dist/cjs/storage/storage.js +0 -301
  839. package/dist/cjs/storage/storage.js.map +0 -1
  840. package/dist/cjs/storage/usable-storage-adapter.js +0 -102
  841. package/dist/cjs/storage/usable-storage-adapter.js.map +0 -1
  842. package/dist/esm/async/_module.js +0 -12
  843. package/dist/esm/async/_module.js.map +0 -1
  844. package/dist/esm/async/_shared.js.map +0 -1
  845. package/dist/esm/async/abortable/_module.js +0 -2
  846. package/dist/esm/async/abortable/_module.js.map +0 -1
  847. package/dist/esm/async/abortable/abortable.js +0 -45
  848. package/dist/esm/async/abortable/abortable.js.map +0 -1
  849. package/dist/esm/async/abortable-iterable/_module.js +0 -2
  850. package/dist/esm/async/abortable-iterable/_module.js.map +0 -1
  851. package/dist/esm/async/abortable-iterable/abortable-iterable.js +0 -29
  852. package/dist/esm/async/abortable-iterable/abortable-iterable.js.map +0 -1
  853. package/dist/esm/async/backof-policies/_module.js +0 -5
  854. package/dist/esm/async/backof-policies/_module.js.map +0 -1
  855. package/dist/esm/async/backof-policies/_shared.js.map +0 -1
  856. package/dist/esm/async/backof-policies/constant-backoff-policy/_module.js +0 -2
  857. package/dist/esm/async/backof-policies/constant-backoff-policy/_module.js.map +0 -1
  858. package/dist/esm/async/backof-policies/constant-backoff-policy/constant-backoff-policy.js +0 -16
  859. package/dist/esm/async/backof-policies/constant-backoff-policy/constant-backoff-policy.js.map +0 -1
  860. package/dist/esm/async/backof-policies/exponential-backoff-policy/_module.js +0 -2
  861. package/dist/esm/async/backof-policies/exponential-backoff-policy/_module.js.map +0 -1
  862. package/dist/esm/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js +0 -20
  863. package/dist/esm/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js.map +0 -1
  864. package/dist/esm/async/backof-policies/linear-backoff-policy/_module.js +0 -2
  865. package/dist/esm/async/backof-policies/linear-backoff-policy/_module.js.map +0 -1
  866. package/dist/esm/async/backof-policies/linear-backoff-policy/linear-backoff-policy.js +0 -20
  867. package/dist/esm/async/backof-policies/linear-backoff-policy/linear-backoff-policy.js.map +0 -1
  868. package/dist/esm/async/backof-policies/polynomial-backoff-policy/_module.js +0 -2
  869. package/dist/esm/async/backof-policies/polynomial-backoff-policy/_module.js.map +0 -1
  870. package/dist/esm/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js +0 -20
  871. package/dist/esm/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js.map +0 -1
  872. package/dist/esm/async/delay/_module.js +0 -2
  873. package/dist/esm/async/delay/_module.js.map +0 -1
  874. package/dist/esm/async/delay/delay.js +0 -21
  875. package/dist/esm/async/delay/delay.js.map +0 -1
  876. package/dist/esm/async/delay-iterable/_module.js +0 -2
  877. package/dist/esm/async/delay-iterable/_module.js.map +0 -1
  878. package/dist/esm/async/delay-iterable/delay-iterable.js +0 -33
  879. package/dist/esm/async/delay-iterable/delay-iterable.js.map +0 -1
  880. package/dist/esm/async/lazy-promise/_module.js +0 -2
  881. package/dist/esm/async/lazy-promise/_module.js.map +0 -1
  882. package/dist/esm/async/lazy-promise/lazy-promise.js.map +0 -1
  883. package/dist/esm/async/retry/_module.js +0 -2
  884. package/dist/esm/async/retry/_module.js.map +0 -1
  885. package/dist/esm/async/retry/retry.js +0 -40
  886. package/dist/esm/async/retry/retry.js.map +0 -1
  887. package/dist/esm/async/retry-iterable/_module.js +0 -2
  888. package/dist/esm/async/retry-iterable/_module.js.map +0 -1
  889. package/dist/esm/async/retry-iterable/retry-iterable.js +0 -29
  890. package/dist/esm/async/retry-iterable/retry-iterable.js.map +0 -1
  891. package/dist/esm/async/timeout/_module.js +0 -2
  892. package/dist/esm/async/timeout/_module.js.map +0 -1
  893. package/dist/esm/async/timeout/timeout.js +0 -25
  894. package/dist/esm/async/timeout/timeout.js.map +0 -1
  895. package/dist/esm/async/timeout-iterable/_module.js +0 -2
  896. package/dist/esm/async/timeout-iterable/_module.js.map +0 -1
  897. package/dist/esm/async/timeout-iterable/timeout-iterable.js +0 -8
  898. package/dist/esm/async/timeout-iterable/timeout-iterable.js.map +0 -1
  899. package/dist/esm/collection/_module.js +0 -5
  900. package/dist/esm/collection/_module.js.map +0 -1
  901. package/dist/esm/collection/_shared.js.map +0 -1
  902. package/dist/esm/collection/async-iterable-collection/_module.js +0 -2
  903. package/dist/esm/collection/async-iterable-collection/_module.js.map +0 -1
  904. package/dist/esm/collection/async-iterable-collection/_shared/_module.js +0 -34
  905. package/dist/esm/collection/async-iterable-collection/_shared/_module.js.map +0 -1
  906. package/dist/esm/collection/async-iterable-collection/_shared/async-chunk-iterable.js.map +0 -1
  907. package/dist/esm/collection/async-iterable-collection/_shared/async-chunk-while-iterable.js.map +0 -1
  908. package/dist/esm/collection/async-iterable-collection/_shared/async-collapse-iterable.js +0 -18
  909. package/dist/esm/collection/async-iterable-collection/_shared/async-collapse-iterable.js.map +0 -1
  910. package/dist/esm/collection/async-iterable-collection/_shared/async-count-by-iterable.js.map +0 -1
  911. package/dist/esm/collection/async-iterable-collection/_shared/async-cross-join-iterable.js +0 -31
  912. package/dist/esm/collection/async-iterable-collection/_shared/async-cross-join-iterable.js.map +0 -1
  913. package/dist/esm/collection/async-iterable-collection/_shared/async-entries-iterable.js.map +0 -1
  914. package/dist/esm/collection/async-iterable-collection/_shared/async-error-handler-iterable.js.map +0 -1
  915. package/dist/esm/collection/async-iterable-collection/_shared/async-filter-iterable.js.map +0 -1
  916. package/dist/esm/collection/async-iterable-collection/_shared/async-flat-map-iterable.js.map +0 -1
  917. package/dist/esm/collection/async-iterable-collection/_shared/async-group-by-iterable.js.map +0 -1
  918. package/dist/esm/collection/async-iterable-collection/_shared/async-insert-after-iterable.js.map +0 -1
  919. package/dist/esm/collection/async-iterable-collection/_shared/async-insert-before-iterable.js.map +0 -1
  920. package/dist/esm/collection/async-iterable-collection/_shared/async-map-iterable.js.map +0 -1
  921. package/dist/esm/collection/async-iterable-collection/_shared/async-merge-iterable.js.map +0 -1
  922. package/dist/esm/collection/async-iterable-collection/_shared/async-pad-end-iterable.js.map +0 -1
  923. package/dist/esm/collection/async-iterable-collection/_shared/async-pad-start-iterable.js.map +0 -1
  924. package/dist/esm/collection/async-iterable-collection/_shared/async-partion-iterable.js.map +0 -1
  925. package/dist/esm/collection/async-iterable-collection/_shared/async-repeat-iterable.js.map +0 -1
  926. package/dist/esm/collection/async-iterable-collection/_shared/async-reverse-iterable.js.map +0 -1
  927. package/dist/esm/collection/async-iterable-collection/_shared/async-shuffle-iterable.js.map +0 -1
  928. package/dist/esm/collection/async-iterable-collection/_shared/async-skip-iterable.js.map +0 -1
  929. package/dist/esm/collection/async-iterable-collection/_shared/async-skip-until-iterable.js.map +0 -1
  930. package/dist/esm/collection/async-iterable-collection/_shared/async-slice-iterable.js.map +0 -1
  931. package/dist/esm/collection/async-iterable-collection/_shared/async-sliding-iterable.js.map +0 -1
  932. package/dist/esm/collection/async-iterable-collection/_shared/async-sort-iterable.js.map +0 -1
  933. package/dist/esm/collection/async-iterable-collection/_shared/async-split-iterable.js.map +0 -1
  934. package/dist/esm/collection/async-iterable-collection/_shared/async-take-iterable.js.map +0 -1
  935. package/dist/esm/collection/async-iterable-collection/_shared/async-take-until-iterable.js.map +0 -1
  936. package/dist/esm/collection/async-iterable-collection/_shared/async-tap-iterable.js.map +0 -1
  937. package/dist/esm/collection/async-iterable-collection/_shared/async-unique-iterable.js.map +0 -1
  938. package/dist/esm/collection/async-iterable-collection/_shared/async-update-iterable.js.map +0 -1
  939. package/dist/esm/collection/async-iterable-collection/_shared/async-when-iterable.js.map +0 -1
  940. package/dist/esm/collection/async-iterable-collection/_shared/async-zip-iterable.js +0 -33
  941. package/dist/esm/collection/async-iterable-collection/_shared/async-zip-iterable.js.map +0 -1
  942. package/dist/esm/collection/async-iterable-collection/async-iterable-collection.js +0 -543
  943. package/dist/esm/collection/async-iterable-collection/async-iterable-collection.js.map +0 -1
  944. package/dist/esm/collection/iterable-collection/_module.js +0 -2
  945. package/dist/esm/collection/iterable-collection/_module.js.map +0 -1
  946. package/dist/esm/collection/iterable-collection/_shared/_module.js +0 -33
  947. package/dist/esm/collection/iterable-collection/_shared/_module.js.map +0 -1
  948. package/dist/esm/collection/iterable-collection/_shared/chunk-iterable.js.map +0 -1
  949. package/dist/esm/collection/iterable-collection/_shared/chunk-while-iterable.js.map +0 -1
  950. package/dist/esm/collection/iterable-collection/_shared/collapse-iterable.js +0 -18
  951. package/dist/esm/collection/iterable-collection/_shared/collapse-iterable.js.map +0 -1
  952. package/dist/esm/collection/iterable-collection/_shared/count-by-iterable.js.map +0 -1
  953. package/dist/esm/collection/iterable-collection/_shared/cross-join-iterable.js +0 -33
  954. package/dist/esm/collection/iterable-collection/_shared/cross-join-iterable.js.map +0 -1
  955. package/dist/esm/collection/iterable-collection/_shared/entries-iterable.js.map +0 -1
  956. package/dist/esm/collection/iterable-collection/_shared/filter-iterable.js.map +0 -1
  957. package/dist/esm/collection/iterable-collection/_shared/flat-map-iterable.js.map +0 -1
  958. package/dist/esm/collection/iterable-collection/_shared/group-by-iterable.js.map +0 -1
  959. package/dist/esm/collection/iterable-collection/_shared/insert-after-iterable.js.map +0 -1
  960. package/dist/esm/collection/iterable-collection/_shared/insert-before-iterable.js.map +0 -1
  961. package/dist/esm/collection/iterable-collection/_shared/map-iterable.js.map +0 -1
  962. package/dist/esm/collection/iterable-collection/_shared/merge-iterable.js.map +0 -1
  963. package/dist/esm/collection/iterable-collection/_shared/pad-end-iterable.js.map +0 -1
  964. package/dist/esm/collection/iterable-collection/_shared/pad-start-iterable.js.map +0 -1
  965. package/dist/esm/collection/iterable-collection/_shared/partion-iterable.js.map +0 -1
  966. package/dist/esm/collection/iterable-collection/_shared/repeat-iterable.js.map +0 -1
  967. package/dist/esm/collection/iterable-collection/_shared/reverse-iterable.js.map +0 -1
  968. package/dist/esm/collection/iterable-collection/_shared/shuffle-iterable.js.map +0 -1
  969. package/dist/esm/collection/iterable-collection/_shared/skip-iterable.js.map +0 -1
  970. package/dist/esm/collection/iterable-collection/_shared/skip-until-iterable.js.map +0 -1
  971. package/dist/esm/collection/iterable-collection/_shared/slice-iterable.js.map +0 -1
  972. package/dist/esm/collection/iterable-collection/_shared/sliding-iterable.js.map +0 -1
  973. package/dist/esm/collection/iterable-collection/_shared/sort-iterable.js.map +0 -1
  974. package/dist/esm/collection/iterable-collection/_shared/split-iterable.js.map +0 -1
  975. package/dist/esm/collection/iterable-collection/_shared/take-iterable.js.map +0 -1
  976. package/dist/esm/collection/iterable-collection/_shared/take-until-iterable.js.map +0 -1
  977. package/dist/esm/collection/iterable-collection/_shared/tap-iterable.js.map +0 -1
  978. package/dist/esm/collection/iterable-collection/_shared/unique-iterable.js.map +0 -1
  979. package/dist/esm/collection/iterable-collection/_shared/update-iterable.js.map +0 -1
  980. package/dist/esm/collection/iterable-collection/_shared/when-iterable.js.map +0 -1
  981. package/dist/esm/collection/iterable-collection/_shared/zip-iterable.js.map +0 -1
  982. package/dist/esm/collection/iterable-collection/iterable-collection.js +0 -489
  983. package/dist/esm/collection/iterable-collection/iterable-collection.js.map +0 -1
  984. package/dist/esm/collection/list-collection/_module.js +0 -2
  985. package/dist/esm/collection/list-collection/_module.js.map +0 -1
  986. package/dist/esm/collection/list-collection/list-collection.js +0 -623
  987. package/dist/esm/collection/list-collection/list-collection.js.map +0 -1
  988. package/dist/esm/contracts/_module.js +0 -4
  989. package/dist/esm/contracts/_module.js.map +0 -1
  990. package/dist/esm/contracts/collection/_module.js +0 -4
  991. package/dist/esm/contracts/collection/_module.js.map +0 -1
  992. package/dist/esm/contracts/collection/_shared.js.map +0 -1
  993. package/dist/esm/contracts/collection/async-collection.contract.js.map +0 -1
  994. package/dist/esm/contracts/collection/collection.contract.js.map +0 -1
  995. package/dist/esm/contracts/serializer/_module.js +0 -2
  996. package/dist/esm/contracts/serializer/_module.js.map +0 -1
  997. package/dist/esm/contracts/serializer/serializer.contract.js.map +0 -1
  998. package/dist/esm/contracts/storage/_module.js +0 -4
  999. package/dist/esm/contracts/storage/_module.js.map +0 -1
  1000. package/dist/esm/contracts/storage/_shared.js.map +0 -1
  1001. package/dist/esm/contracts/storage/storage-adapter.contract.js.map +0 -1
  1002. package/dist/esm/contracts/storage/storage.contract.js.map +0 -1
  1003. package/dist/esm/serializer/_shared/test-utilities/_module.js +0 -2
  1004. package/dist/esm/serializer/_shared/test-utilities/_module.js.map +0 -1
  1005. package/dist/esm/serializer/_shared/test-utilities/serializer.test-suite.js.map +0 -1
  1006. package/dist/esm/serializer/mongodb-serializer/_module.js +0 -2
  1007. package/dist/esm/serializer/mongodb-serializer/_module.js.map +0 -1
  1008. package/dist/esm/serializer/mongodb-serializer/mongodb-serializer.js +0 -32
  1009. package/dist/esm/serializer/mongodb-serializer/mongodb-serializer.js.map +0 -1
  1010. package/dist/esm/serializer/redis-serializer/_module.js +0 -2
  1011. package/dist/esm/serializer/redis-serializer/_module.js.map +0 -1
  1012. package/dist/esm/serializer/redis-serializer/redis-serializer.js +0 -33
  1013. package/dist/esm/serializer/redis-serializer/redis-serializer.js.map +0 -1
  1014. package/dist/esm/serializer/sql-serializer/_module.js +0 -2
  1015. package/dist/esm/serializer/sql-serializer/_module.js.map +0 -1
  1016. package/dist/esm/serializer/sql-serializer/sql-serializer.js +0 -33
  1017. package/dist/esm/serializer/sql-serializer/sql-serializer.js.map +0 -1
  1018. package/dist/esm/serializer/super-json-serializer/_module.js +0 -2
  1019. package/dist/esm/serializer/super-json-serializer/_module.js.map +0 -1
  1020. package/dist/esm/serializer/super-json-serializer/super-json-serializer.js +0 -277
  1021. package/dist/esm/serializer/super-json-serializer/super-json-serializer.js.map +0 -1
  1022. package/dist/esm/storage/_module.js +0 -7
  1023. package/dist/esm/storage/_module.js.map +0 -1
  1024. package/dist/esm/storage/_shared/test-utilities/_module.js +0 -2
  1025. package/dist/esm/storage/_shared/test-utilities/_module.js.map +0 -1
  1026. package/dist/esm/storage/_shared/test-utilities/storage-api.test-suite.js +0 -569
  1027. package/dist/esm/storage/_shared/test-utilities/storage-api.test-suite.js.map +0 -1
  1028. package/dist/esm/storage/_shared/test-utilities/storage-namespace.test-suite.js +0 -238
  1029. package/dist/esm/storage/_shared/test-utilities/storage-namespace.test-suite.js.map +0 -1
  1030. package/dist/esm/storage/_shared/test-utilities/storage-value.test-suite.js +0 -4169
  1031. package/dist/esm/storage/_shared/test-utilities/storage-value.test-suite.js.map +0 -1
  1032. package/dist/esm/storage/_shared/test-utilities/storage.test-suite.js +0 -9
  1033. package/dist/esm/storage/_shared/test-utilities/storage.test-suite.js.map +0 -1
  1034. package/dist/esm/storage/memory-storage-adapter/_module.js +0 -2
  1035. package/dist/esm/storage/memory-storage-adapter/_module.js.map +0 -1
  1036. package/dist/esm/storage/memory-storage-adapter/memory-storage-adapter.js +0 -58
  1037. package/dist/esm/storage/memory-storage-adapter/memory-storage-adapter.js.map +0 -1
  1038. package/dist/esm/storage/mongodb-storage-adapter/_module.js +0 -2
  1039. package/dist/esm/storage/mongodb-storage-adapter/_module.js.map +0 -1
  1040. package/dist/esm/storage/mongodb-storage-adapter/mongodb-storage-adapter.js +0 -266
  1041. package/dist/esm/storage/mongodb-storage-adapter/mongodb-storage-adapter.js.map +0 -1
  1042. package/dist/esm/storage/namespace-storage-adapter.js +0 -62
  1043. package/dist/esm/storage/namespace-storage-adapter.js.map +0 -1
  1044. package/dist/esm/storage/redis-storage-adapter/_module.js +0 -2
  1045. package/dist/esm/storage/redis-storage-adapter/_module.js.map +0 -1
  1046. package/dist/esm/storage/redis-storage-adapter/redis-storage-adapter.js +0 -244
  1047. package/dist/esm/storage/redis-storage-adapter/redis-storage-adapter.js.map +0 -1
  1048. package/dist/esm/storage/sqlite/_module.js +0 -3
  1049. package/dist/esm/storage/sqlite/_module.js.map +0 -1
  1050. package/dist/esm/storage/sqlite/_shared/_module.js +0 -2
  1051. package/dist/esm/storage/sqlite/_shared/_module.js.map +0 -1
  1052. package/dist/esm/storage/sqlite/_shared/base-sqlite-storage-adapter.js +0 -220
  1053. package/dist/esm/storage/sqlite/_shared/base-sqlite-storage-adapter.js.map +0 -1
  1054. package/dist/esm/storage/sqlite/libsql-storage-adapter/_module.js +0 -2
  1055. package/dist/esm/storage/sqlite/libsql-storage-adapter/_module.js.map +0 -1
  1056. package/dist/esm/storage/sqlite/libsql-storage-adapter/libsql-storage-adapter.js +0 -49
  1057. package/dist/esm/storage/sqlite/libsql-storage-adapter/libsql-storage-adapter.js.map +0 -1
  1058. package/dist/esm/storage/sqlite/sqlite-storage-adapter/_module.js +0 -2
  1059. package/dist/esm/storage/sqlite/sqlite-storage-adapter/_module.js.map +0 -1
  1060. package/dist/esm/storage/sqlite/sqlite-storage-adapter/sqlite-storage-adapter.js +0 -48
  1061. package/dist/esm/storage/sqlite/sqlite-storage-adapter/sqlite-storage-adapter.js.map +0 -1
  1062. package/dist/esm/storage/storage.js +0 -297
  1063. package/dist/esm/storage/storage.js.map +0 -1
  1064. package/dist/esm/storage/usable-storage-adapter.js +0 -98
  1065. package/dist/esm/storage/usable-storage-adapter.js.map +0 -1
  1066. package/dist/types/async/_module.d.ts +0 -11
  1067. package/dist/types/async/abortable/_module.d.ts +0 -1
  1068. package/dist/types/async/abortable/abortable.d.ts +0 -39
  1069. package/dist/types/async/abortable-iterable/_module.d.ts +0 -1
  1070. package/dist/types/async/backof-policies/_module.d.ts +0 -5
  1071. package/dist/types/async/backof-policies/constant-backoff-policy/_module.d.ts +0 -1
  1072. package/dist/types/async/backof-policies/constant-backoff-policy/constant-backoff-policy.d.ts +0 -28
  1073. package/dist/types/async/backof-policies/exponential-backoff-policy/_module.d.ts +0 -1
  1074. package/dist/types/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.d.ts +0 -36
  1075. package/dist/types/async/backof-policies/linear-backoff-policy/_module.d.ts +0 -1
  1076. package/dist/types/async/backof-policies/linear-backoff-policy/linear-backoff-policy.d.ts +0 -32
  1077. package/dist/types/async/backof-policies/polynomial-backoff-policy/_module.d.ts +0 -1
  1078. package/dist/types/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.d.ts +0 -36
  1079. package/dist/types/async/delay/_module.d.ts +0 -1
  1080. package/dist/types/async/delay/delay.d.ts +0 -38
  1081. package/dist/types/async/delay-iterable/_module.d.ts +0 -1
  1082. package/dist/types/async/delay-iterable/delay-iterable.d.ts +0 -57
  1083. package/dist/types/async/lazy-promise/_module.d.ts +0 -1
  1084. package/dist/types/async/retry/_module.d.ts +0 -1
  1085. package/dist/types/async/retry/retry.d.ts +0 -86
  1086. package/dist/types/async/retry-iterable/_module.d.ts +0 -1
  1087. package/dist/types/async/retry-iterable/retry-iterable.d.ts +0 -86
  1088. package/dist/types/async/timeout/_module.d.ts +0 -1
  1089. package/dist/types/async/timeout/timeout.d.ts +0 -40
  1090. package/dist/types/async/timeout-iterable/_module.d.ts +0 -1
  1091. package/dist/types/async/timeout-iterable/timeout-iterable.d.ts +0 -64
  1092. package/dist/types/collection/_module.d.ts +0 -4
  1093. package/dist/types/collection/async-iterable-collection/_module.d.ts +0 -1
  1094. package/dist/types/collection/async-iterable-collection/_shared/_module.d.ts +0 -33
  1095. package/dist/types/collection/async-iterable-collection/_shared/async-chunk-iterable.d.ts +0 -12
  1096. package/dist/types/collection/async-iterable-collection/_shared/async-chunk-while-iterable.d.ts +0 -12
  1097. package/dist/types/collection/async-iterable-collection/_shared/async-collapse-iterable.d.ts +0 -9
  1098. package/dist/types/collection/async-iterable-collection/_shared/async-count-by-iterable.d.ts +0 -11
  1099. package/dist/types/collection/async-iterable-collection/_shared/async-cross-join-iterable.d.ts +0 -13
  1100. package/dist/types/collection/async-iterable-collection/_shared/async-entries-iterable.d.ts +0 -10
  1101. package/dist/types/collection/async-iterable-collection/_shared/async-filter-iterable.d.ts +0 -10
  1102. package/dist/types/collection/async-iterable-collection/_shared/async-flat-map-iterable.d.ts +0 -10
  1103. package/dist/types/collection/async-iterable-collection/_shared/async-group-by-iterable.d.ts +0 -12
  1104. package/dist/types/collection/async-iterable-collection/_shared/async-insert-after-iterable.d.ts +0 -12
  1105. package/dist/types/collection/async-iterable-collection/_shared/async-insert-before-iterable.d.ts +0 -12
  1106. package/dist/types/collection/async-iterable-collection/_shared/async-map-iterable.d.ts +0 -10
  1107. package/dist/types/collection/async-iterable-collection/_shared/async-merge-iterable.d.ts +0 -10
  1108. package/dist/types/collection/async-iterable-collection/_shared/async-pad-end-iterable.d.ts +0 -13
  1109. package/dist/types/collection/async-iterable-collection/_shared/async-pad-start-iterable.d.ts +0 -13
  1110. package/dist/types/collection/async-iterable-collection/_shared/async-partion-iterable.d.ts +0 -12
  1111. package/dist/types/collection/async-iterable-collection/_shared/async-repeat-iterable.d.ts +0 -12
  1112. package/dist/types/collection/async-iterable-collection/_shared/async-reverse-iterable.d.ts +0 -12
  1113. package/dist/types/collection/async-iterable-collection/_shared/async-shuffle-iterable.d.ts +0 -10
  1114. package/dist/types/collection/async-iterable-collection/_shared/async-skip-iterable.d.ts +0 -10
  1115. package/dist/types/collection/async-iterable-collection/_shared/async-skip-until-iterable.d.ts +0 -10
  1116. package/dist/types/collection/async-iterable-collection/_shared/async-slice-iterable.d.ts +0 -11
  1117. package/dist/types/collection/async-iterable-collection/_shared/async-sliding-iterable.d.ts +0 -11
  1118. package/dist/types/collection/async-iterable-collection/_shared/async-sort-iterable.d.ts +0 -10
  1119. package/dist/types/collection/async-iterable-collection/_shared/async-split-iterable.d.ts +0 -12
  1120. package/dist/types/collection/async-iterable-collection/_shared/async-take-iterable.d.ts +0 -10
  1121. package/dist/types/collection/async-iterable-collection/_shared/async-take-until-iterable.d.ts +0 -10
  1122. package/dist/types/collection/async-iterable-collection/_shared/async-tap-iterable.d.ts +0 -10
  1123. package/dist/types/collection/async-iterable-collection/_shared/async-unique-iterable.d.ts +0 -10
  1124. package/dist/types/collection/async-iterable-collection/_shared/async-update-iterable.d.ts +0 -11
  1125. package/dist/types/collection/async-iterable-collection/_shared/async-when-iterable.d.ts +0 -11
  1126. package/dist/types/collection/async-iterable-collection/_shared/async-zip-iterable.d.ts +0 -11
  1127. package/dist/types/collection/async-iterable-collection/async-iterable-collection.d.ts +0 -105
  1128. package/dist/types/collection/iterable-collection/_module.d.ts +0 -1
  1129. package/dist/types/collection/iterable-collection/_shared/_module.d.ts +0 -32
  1130. package/dist/types/collection/iterable-collection/_shared/chunk-iterable.d.ts +0 -11
  1131. package/dist/types/collection/iterable-collection/_shared/chunk-while-iterable.d.ts +0 -11
  1132. package/dist/types/collection/iterable-collection/_shared/collapse-iterable.d.ts +0 -9
  1133. package/dist/types/collection/iterable-collection/_shared/count-by-iterable.d.ts +0 -11
  1134. package/dist/types/collection/iterable-collection/_shared/cross-join-iterable.d.ts +0 -8
  1135. package/dist/types/collection/iterable-collection/_shared/entries-iterable.d.ts +0 -9
  1136. package/dist/types/collection/iterable-collection/_shared/filter-iterable.d.ts +0 -10
  1137. package/dist/types/collection/iterable-collection/_shared/flat-map-iterable.d.ts +0 -10
  1138. package/dist/types/collection/iterable-collection/_shared/group-by-iterable.d.ts +0 -12
  1139. package/dist/types/collection/iterable-collection/_shared/insert-after-iterable.d.ts +0 -11
  1140. package/dist/types/collection/iterable-collection/_shared/insert-before-iterable.d.ts +0 -11
  1141. package/dist/types/collection/iterable-collection/_shared/map-iterable.d.ts +0 -10
  1142. package/dist/types/collection/iterable-collection/_shared/pad-end-iterable.d.ts +0 -12
  1143. package/dist/types/collection/iterable-collection/_shared/pad-start-iterable.d.ts +0 -12
  1144. package/dist/types/collection/iterable-collection/_shared/partion-iterable.d.ts +0 -11
  1145. package/dist/types/collection/iterable-collection/_shared/repeat-iterable.d.ts +0 -11
  1146. package/dist/types/collection/iterable-collection/_shared/reverse-iterable.d.ts +0 -11
  1147. package/dist/types/collection/iterable-collection/_shared/skip-iterable.d.ts +0 -10
  1148. package/dist/types/collection/iterable-collection/_shared/skip-until-iterable.d.ts +0 -10
  1149. package/dist/types/collection/iterable-collection/_shared/slice-iterable.d.ts +0 -11
  1150. package/dist/types/collection/iterable-collection/_shared/sliding-iterable.d.ts +0 -11
  1151. package/dist/types/collection/iterable-collection/_shared/sort-iterable.d.ts +0 -10
  1152. package/dist/types/collection/iterable-collection/_shared/split-iterable.d.ts +0 -11
  1153. package/dist/types/collection/iterable-collection/_shared/take-iterable.d.ts +0 -10
  1154. package/dist/types/collection/iterable-collection/_shared/take-until-iterable.d.ts +0 -10
  1155. package/dist/types/collection/iterable-collection/_shared/tap-iterable.d.ts +0 -10
  1156. package/dist/types/collection/iterable-collection/_shared/unique-iterable.d.ts +0 -10
  1157. package/dist/types/collection/iterable-collection/_shared/update-iterable.d.ts +0 -11
  1158. package/dist/types/collection/iterable-collection/_shared/when-iterable.d.ts +0 -11
  1159. package/dist/types/collection/iterable-collection/_shared/zip-iterable.d.ts +0 -10
  1160. package/dist/types/collection/iterable-collection/iterable-collection.d.ts +0 -100
  1161. package/dist/types/collection/list-collection/_module.d.ts +0 -1
  1162. package/dist/types/collection/list-collection/list-collection.d.ts +0 -97
  1163. package/dist/types/contracts/_module.d.ts +0 -3
  1164. package/dist/types/contracts/collection/_module.d.ts +0 -3
  1165. package/dist/types/contracts/collection/async-collection.contract.d.ts +0 -1309
  1166. package/dist/types/contracts/collection/collection.contract.d.ts +0 -1269
  1167. package/dist/types/contracts/serializer/_module.d.ts +0 -1
  1168. package/dist/types/contracts/storage/_module.d.ts +0 -3
  1169. package/dist/types/contracts/storage/storage-adapter.contract.d.ts +0 -72
  1170. package/dist/types/contracts/storage/storage.contract.d.ts +0 -148
  1171. package/dist/types/serializer/_shared/test-utilities/_module.d.ts +0 -1
  1172. package/dist/types/serializer/_shared/test-utilities/serializer.test-suite.d.ts +0 -18
  1173. package/dist/types/serializer/mongodb-serializer/_module.d.ts +0 -1
  1174. package/dist/types/serializer/mongodb-serializer/mongodb-serializer.d.ts +0 -13
  1175. package/dist/types/serializer/redis-serializer/_module.d.ts +0 -1
  1176. package/dist/types/serializer/redis-serializer/redis-serializer.d.ts +0 -13
  1177. package/dist/types/serializer/sql-serializer/_module.d.ts +0 -1
  1178. package/dist/types/serializer/sql-serializer/sql-serializer.d.ts +0 -13
  1179. package/dist/types/serializer/super-json-serializer/_module.d.ts +0 -1
  1180. package/dist/types/serializer/super-json-serializer/super-json-serializer.d.ts +0 -37
  1181. package/dist/types/storage/_module.d.ts +0 -6
  1182. package/dist/types/storage/_shared/test-utilities/_module.d.ts +0 -1
  1183. package/dist/types/storage/_shared/test-utilities/storage-api.test-suite.d.ts +0 -20
  1184. package/dist/types/storage/_shared/test-utilities/storage-namespace.test-suite.d.ts +0 -20
  1185. package/dist/types/storage/_shared/test-utilities/storage-value.test-suite.d.ts +0 -20
  1186. package/dist/types/storage/_shared/test-utilities/storage.test-suite.d.ts +0 -20
  1187. package/dist/types/storage/memory-storage-adapter/_module.d.ts +0 -1
  1188. package/dist/types/storage/memory-storage-adapter/memory-storage-adapter.d.ts +0 -16
  1189. package/dist/types/storage/mongodb-storage-adapter/_module.d.ts +0 -1
  1190. package/dist/types/storage/mongodb-storage-adapter/mongodb-storage-adapter.d.ts +0 -46
  1191. package/dist/types/storage/namespace-storage-adapter.d.ts +0 -30
  1192. package/dist/types/storage/redis-storage-adapter/_module.d.ts +0 -1
  1193. package/dist/types/storage/redis-storage-adapter/redis-storage-adapter.d.ts +0 -41
  1194. package/dist/types/storage/sqlite/_module.d.ts +0 -2
  1195. package/dist/types/storage/sqlite/_shared/_module.d.ts +0 -1
  1196. package/dist/types/storage/sqlite/_shared/base-sqlite-storage-adapter.d.ts +0 -42
  1197. package/dist/types/storage/sqlite/libsql-storage-adapter/_module.d.ts +0 -1
  1198. package/dist/types/storage/sqlite/libsql-storage-adapter/libsql-storage-adapter.d.ts +0 -30
  1199. package/dist/types/storage/sqlite/sqlite-storage-adapter/_module.d.ts +0 -1
  1200. package/dist/types/storage/sqlite/sqlite-storage-adapter/sqlite-storage-adapter.d.ts +0 -30
  1201. package/dist/types/storage/storage.d.ts +0 -38
  1202. package/dist/types/storage/usable-storage-adapter.d.ts +0 -22
  1203. /package/dist/cjs/{contracts/collection → collection/contracts}/_shared.js +0 -0
  1204. /package/dist/cjs/{contracts/collection → collection/contracts}/async-collection.contract.js +0 -0
  1205. /package/dist/cjs/{contracts/collection → collection/contracts}/collection.contract.js +0 -0
  1206. /package/dist/cjs/collection/{_shared.js → implementations/_shared.js} +0 -0
  1207. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-chunk-iterable.js +0 -0
  1208. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-chunk-while-iterable.js +0 -0
  1209. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-count-by-iterable.js +0 -0
  1210. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-entries-iterable.js +0 -0
  1211. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-error-handler-iterable.js +0 -0
  1212. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-filter-iterable.js +0 -0
  1213. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-flat-map-iterable.js +0 -0
  1214. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-group-by-iterable.js +0 -0
  1215. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-insert-after-iterable.js +0 -0
  1216. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-insert-before-iterable.js +0 -0
  1217. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-map-iterable.js +0 -0
  1218. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-merge-iterable.js +0 -0
  1219. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-pad-end-iterable.js +0 -0
  1220. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-pad-start-iterable.js +0 -0
  1221. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-partion-iterable.js +0 -0
  1222. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-repeat-iterable.js +0 -0
  1223. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-reverse-iterable.js +0 -0
  1224. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-shuffle-iterable.js +0 -0
  1225. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-skip-iterable.js +0 -0
  1226. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-skip-until-iterable.js +0 -0
  1227. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-slice-iterable.js +0 -0
  1228. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-sliding-iterable.js +0 -0
  1229. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-sort-iterable.js +0 -0
  1230. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-split-iterable.js +0 -0
  1231. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-take-iterable.js +0 -0
  1232. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-take-until-iterable.js +0 -0
  1233. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-tap-iterable.js +0 -0
  1234. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-unique-iterable.js +0 -0
  1235. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-update-iterable.js +0 -0
  1236. /package/dist/cjs/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-when-iterable.js +0 -0
  1237. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/chunk-iterable.js +0 -0
  1238. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/chunk-while-iterable.js +0 -0
  1239. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/count-by-iterable.js +0 -0
  1240. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/entries-iterable.js +0 -0
  1241. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/filter-iterable.js +0 -0
  1242. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/flat-map-iterable.js +0 -0
  1243. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/group-by-iterable.js +0 -0
  1244. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/insert-after-iterable.js +0 -0
  1245. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/insert-before-iterable.js +0 -0
  1246. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/map-iterable.js +0 -0
  1247. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/merge-iterable.js +0 -0
  1248. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/pad-end-iterable.js +0 -0
  1249. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/pad-start-iterable.js +0 -0
  1250. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/partion-iterable.js +0 -0
  1251. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/repeat-iterable.js +0 -0
  1252. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/reverse-iterable.js +0 -0
  1253. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/shuffle-iterable.js +0 -0
  1254. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/skip-iterable.js +0 -0
  1255. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/skip-until-iterable.js +0 -0
  1256. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/slice-iterable.js +0 -0
  1257. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/sliding-iterable.js +0 -0
  1258. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/sort-iterable.js +0 -0
  1259. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/split-iterable.js +0 -0
  1260. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/take-iterable.js +0 -0
  1261. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/take-until-iterable.js +0 -0
  1262. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/tap-iterable.js +0 -0
  1263. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/unique-iterable.js +0 -0
  1264. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/update-iterable.js +0 -0
  1265. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/when-iterable.js +0 -0
  1266. /package/dist/cjs/collection/{iterable-collection → implementations/iterable-collection}/_shared/zip-iterable.js +0 -0
  1267. /package/dist/cjs/{contracts/serializer → serializer/contracts}/serializer.contract.js +0 -0
  1268. /package/dist/cjs/serializer/{_shared → implementations/_shared}/test-utilities/serializer.test-suite.js +0 -0
  1269. /package/dist/cjs/{contracts/storage → storage/contracts}/_shared.js +0 -0
  1270. /package/dist/cjs/{contracts/storage → storage/contracts}/storage-adapter.contract.js +0 -0
  1271. /package/dist/cjs/{contracts/storage → storage/contracts}/storage.contract.js +0 -0
  1272. /package/dist/cjs/{async → utilities/async}/_shared.js +0 -0
  1273. /package/dist/cjs/{async → utilities/async}/backof-policies/_shared.js +0 -0
  1274. /package/dist/cjs/{async → utilities/async}/lazy-promise/lazy-promise.js +0 -0
  1275. /package/dist/esm/{contracts/collection → collection/contracts}/_shared.js +0 -0
  1276. /package/dist/esm/{contracts/collection → collection/contracts}/async-collection.contract.js +0 -0
  1277. /package/dist/esm/{contracts/collection → collection/contracts}/collection.contract.js +0 -0
  1278. /package/dist/esm/collection/{_shared.js → implementations/_shared.js} +0 -0
  1279. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-chunk-iterable.js +0 -0
  1280. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-chunk-while-iterable.js +0 -0
  1281. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-count-by-iterable.js +0 -0
  1282. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-entries-iterable.js +0 -0
  1283. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-error-handler-iterable.js +0 -0
  1284. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-filter-iterable.js +0 -0
  1285. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-flat-map-iterable.js +0 -0
  1286. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-group-by-iterable.js +0 -0
  1287. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-insert-after-iterable.js +0 -0
  1288. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-insert-before-iterable.js +0 -0
  1289. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-map-iterable.js +0 -0
  1290. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-merge-iterable.js +0 -0
  1291. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-pad-end-iterable.js +0 -0
  1292. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-pad-start-iterable.js +0 -0
  1293. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-partion-iterable.js +0 -0
  1294. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-repeat-iterable.js +0 -0
  1295. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-reverse-iterable.js +0 -0
  1296. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-shuffle-iterable.js +0 -0
  1297. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-skip-iterable.js +0 -0
  1298. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-skip-until-iterable.js +0 -0
  1299. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-slice-iterable.js +0 -0
  1300. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-sliding-iterable.js +0 -0
  1301. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-sort-iterable.js +0 -0
  1302. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-split-iterable.js +0 -0
  1303. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-take-iterable.js +0 -0
  1304. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-take-until-iterable.js +0 -0
  1305. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-tap-iterable.js +0 -0
  1306. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-unique-iterable.js +0 -0
  1307. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-update-iterable.js +0 -0
  1308. /package/dist/esm/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-when-iterable.js +0 -0
  1309. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/chunk-iterable.js +0 -0
  1310. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/chunk-while-iterable.js +0 -0
  1311. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/count-by-iterable.js +0 -0
  1312. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/entries-iterable.js +0 -0
  1313. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/filter-iterable.js +0 -0
  1314. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/flat-map-iterable.js +0 -0
  1315. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/group-by-iterable.js +0 -0
  1316. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/insert-after-iterable.js +0 -0
  1317. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/insert-before-iterable.js +0 -0
  1318. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/map-iterable.js +0 -0
  1319. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/merge-iterable.js +0 -0
  1320. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/pad-end-iterable.js +0 -0
  1321. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/pad-start-iterable.js +0 -0
  1322. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/partion-iterable.js +0 -0
  1323. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/repeat-iterable.js +0 -0
  1324. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/reverse-iterable.js +0 -0
  1325. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/shuffle-iterable.js +0 -0
  1326. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/skip-iterable.js +0 -0
  1327. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/skip-until-iterable.js +0 -0
  1328. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/slice-iterable.js +0 -0
  1329. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/sliding-iterable.js +0 -0
  1330. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/sort-iterable.js +0 -0
  1331. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/split-iterable.js +0 -0
  1332. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/take-iterable.js +0 -0
  1333. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/take-until-iterable.js +0 -0
  1334. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/tap-iterable.js +0 -0
  1335. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/unique-iterable.js +0 -0
  1336. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/update-iterable.js +0 -0
  1337. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/when-iterable.js +0 -0
  1338. /package/dist/esm/collection/{iterable-collection → implementations/iterable-collection}/_shared/zip-iterable.js +0 -0
  1339. /package/dist/esm/{contracts/serializer → serializer/contracts}/serializer.contract.js +0 -0
  1340. /package/dist/esm/serializer/{_shared → implementations/_shared}/test-utilities/serializer.test-suite.js +0 -0
  1341. /package/dist/esm/{contracts/storage → storage/contracts}/_shared.js +0 -0
  1342. /package/dist/esm/{contracts/storage → storage/contracts}/storage-adapter.contract.js +0 -0
  1343. /package/dist/esm/{contracts/storage → storage/contracts}/storage.contract.js +0 -0
  1344. /package/dist/esm/{async → utilities/async}/_shared.js +0 -0
  1345. /package/dist/esm/{async → utilities/async}/backof-policies/_shared.js +0 -0
  1346. /package/dist/esm/{async → utilities/async}/lazy-promise/lazy-promise.js +0 -0
  1347. /package/dist/types/{contracts/collection → collection/contracts}/_shared.d.ts +0 -0
  1348. /package/dist/types/collection/{_shared.d.ts → implementations/_shared.d.ts} +0 -0
  1349. /package/dist/types/collection/{async-iterable-collection → implementations/async-iterable-collection}/_shared/async-error-handler-iterable.d.ts +0 -0
  1350. /package/dist/types/collection/{iterable-collection → implementations/iterable-collection}/_shared/merge-iterable.d.ts +0 -0
  1351. /package/dist/types/collection/{iterable-collection → implementations/iterable-collection}/_shared/shuffle-iterable.d.ts +0 -0
  1352. /package/dist/types/{contracts/serializer → serializer/contracts}/serializer.contract.d.ts +0 -0
  1353. /package/dist/types/{contracts/storage → storage/contracts}/_shared.d.ts +0 -0
  1354. /package/dist/types/{async → utilities/async}/_shared.d.ts +0 -0
  1355. /package/dist/types/{async → utilities/async}/backof-policies/_shared.d.ts +0 -0
  1356. /package/dist/types/{async → utilities/async}/lazy-promise/lazy-promise.d.ts +0 -0
  1357. /package/dist/types/{async → utilities/async-iterable}/abortable-iterable/abortable-iterable.d.ts +0 -0
@@ -0,0 +1,1269 @@
1
+ /**
2
+ * @module Collection
3
+ */
4
+ import type { Comparator, Predicate, ForEach, Map, Modifier, Tap, Transform, ChangendItem, Reduce, CrossJoinResult } from "../../collection/contracts/_shared";
5
+ import type { Lazyable, RecordItem, EnsureType } from "../../_shared/types";
6
+ export type Collapse<TValue> = TValue extends Array<infer TItem> | Iterable<infer TItem> | ICollection<infer TItem> ? TItem : TValue;
7
+ /**
8
+ * <i>ICollection</i> is immutable.
9
+ * @throws {CollectionError}
10
+ * @throws {UnexpectedCollectionError}
11
+ * @throws {ItemNotFoundCollectionError}
12
+ * @throws {MultipleItemsFoundCollectionError}
13
+ * @throws {TypeCollectionError}
14
+ * @throws {EmptyCollectionError}
15
+ * @group Contracts
16
+ */
17
+ export type ICollection<TInput> = Iterable<TInput> & {
18
+ /**
19
+ * The <i>toIterator</i> method converts the collection to a new iterator.
20
+ */
21
+ toIterator(): Iterator<TInput, void>;
22
+ /**
23
+ * The <i>entries</i> returns an ICollection of key, value pairs for every entry in the collection.
24
+ */
25
+ entries(): ICollection<RecordItem<number, TInput>>;
26
+ /**
27
+ * The <i>keys</i> method returns an ICollection of keys in the collection.
28
+ */
29
+ keys(): ICollection<number>;
30
+ /**
31
+ * The <i>values</i> method returns a copy of the collection.
32
+ */
33
+ values(): ICollection<TInput>;
34
+ /**
35
+ * The <i>filter</i> method filters the collection using <i>predicateFn</i>, keeping only those items that pass <i>predicateFn</i>.
36
+ * @example
37
+ * import { ListCollection } from "@daiso-tech/core";;
38
+ *
39
+ * const collection = new ListCollection([1, 2, 3, 4, 5, 6]);
40
+ * const filtered = collection.filter(item => 2 < item && item < 5);
41
+ * filtered.toArray();
42
+ * // [3, 4]
43
+ */
44
+ filter<TOutput extends TInput>(predicateFn: Predicate<TInput, ICollection<TInput>, TOutput>): ICollection<TOutput>;
45
+ /**
46
+ * The <i>reject</i> method filters the collection using <i>predicateFn</i>, keeping only those items that not pass <i>predicateFn</i>.
47
+ * @example
48
+ * import { ListCollection } from "@daiso-tech/core";;
49
+ *
50
+ * const collection = new ListCollection([1, 2, 3, 4, 5, 6]);
51
+ * const filtered = collection.reject(item => 2 < item && item < 5);
52
+ * filtered.toArray();
53
+ * // [1, 2, 5, 6]
54
+ */
55
+ reject<TOutput extends TInput>(predicateFn: Predicate<TInput, ICollection<TInput>, TOutput>): ICollection<Exclude<TInput, TOutput>>;
56
+ /**
57
+ * The <i>map</i> method iterates through the collection and passes each item to <i>mapFn</i>.
58
+ * The <i>mapFn</i> is free to modify the item and return it, thus forming a new collection of modified items.
59
+ * @example
60
+ * import { ListCollection } from "@daiso-tech/core";;
61
+ *
62
+ * const collection = new ListCollection([1, 2, 3, 4, 5]);
63
+ * const mapped = collection.map(item => item * 2);
64
+ * mapped.toArray();
65
+ * // [2, 4, 6, 8, 10]
66
+ */
67
+ map<TOutput>(mapFn: Map<TInput, ICollection<TInput>, TOutput>): ICollection<TOutput>;
68
+ /**
69
+ * The <i>reduce</i> method executes <i> reduceFn </i> function on each item of the array, passing in the return value from the calculation on the preceding item.
70
+ * The final result of running the reducer across all items of the array is a single value.
71
+ * @example
72
+ * import { ListCollection } from "@daiso-tech/core";;
73
+ *
74
+ * const collection = new ListCollection([1, 2, 3]);
75
+ * collection.reduce((sum, item) => sum + item);
76
+ * // 6
77
+ * @example
78
+ * import { ListCollection } from "@daiso-tech/core";;
79
+ *
80
+ * const collection = new ListCollection(["a", "b", "c"]);
81
+ * collection.entries().reduce(
82
+ * (record, [key, value]) => ({
83
+ * ...record,
84
+ * [key]: value
85
+ * }),
86
+ * {} as Record<number, string>
87
+ * );
88
+ * // { 0: "a", 1: "b", 2: "c" }
89
+ */
90
+ reduce(reduceFn: Reduce<TInput, ICollection<TInput>, TInput>): TInput;
91
+ reduce(reduceFn: Reduce<TInput, ICollection<TInput>, TInput>, initialValue: TInput): TInput;
92
+ reduce<TOutput>(reduceFn: Reduce<TInput, ICollection<TInput>, TOutput>, initialValue: TOutput): TOutput;
93
+ /**
94
+ * The <i>join</i> method joins the collection's items with <i> separator </i>. An error will be thrown when if a none string item is encounterd.
95
+ * @throws {TypeCollectionError}
96
+ * @example
97
+ * import { ListCollection } from "@daiso-tech/core";;
98
+ *
99
+ * const collection = new ListCollection([1, 2, 3, 4]);
100
+ * collection.map(item => item.toString()).join();
101
+ * // "1,2,3,4"
102
+ * @example
103
+ * import { ListCollection } from "@daiso-tech/core";;
104
+ *
105
+ * const collection = new ListCollection([1, 2, 3, 4]);
106
+ * collection.map(item => item.toString()).join("_");
107
+ * // "1_2_3_4"
108
+ */
109
+ join(separator?: string): EnsureType<TInput, string>;
110
+ /**
111
+ * The <i>collapse</i> method collapses a collection of iterables into a single, flat collection.
112
+ * @example
113
+ * import { ListCollection } from "@daiso-tech/core";;
114
+ *
115
+ * const collection = new ListCollection([[1, 2], [3, 4]]);
116
+ * const collapsed = collection.collapse();
117
+ * collapsed.toArray();
118
+ * // [1, 2, 3, 4]
119
+ */
120
+ collapse(): ICollection<Collapse<TInput>>;
121
+ /**
122
+ * The <i>flatMap</i> method returns a new array formed by applying <i>mapFn</i> to each item of the array, and then collapses the result by one level.
123
+ * It is identical to a <i>map</i> method followed by a <i>collapse</i> method.
124
+ * @example
125
+ * import { ListCollection } from "@daiso-tech/core";;
126
+ *
127
+ * const collection = new ListCollection([["a", "b"], ["c", "d"]]).flatMap(item => [item.length, ...item]);
128
+ * collection.toArray();
129
+ * // [2, "a", "b", 2, "c", "d"]
130
+ */
131
+ flatMap<TOutput>(mapFn: Map<TInput, ICollection<TInput>, Iterable<TOutput>>): ICollection<TOutput>;
132
+ /**
133
+ * The <i>change</i> method changes only the items that passes <i>predicateFn</i> using <i>mapFn</i>.
134
+ * @example
135
+ * import { ListCollection } from "@daiso-tech/core";;
136
+ *
137
+ * const collection = new ListCollection([1, 2, 3, 4, 5]);
138
+ * const newCollection = collection.change(item => item % 2 === 0, item => item * 2);
139
+ * newCollection.toArray();
140
+ * // [1, 4, 3, 8, 5]
141
+ */
142
+ change<TFilterOutput extends TInput, TMapOutput>(predicateFn: Predicate<TInput, ICollection<TInput>, TFilterOutput>, mapFn: Map<TFilterOutput, ICollection<TInput>, TMapOutput>): ICollection<ChangendItem<TInput, TFilterOutput, TMapOutput>>;
143
+ /**
144
+ * The <i>page</i> method returns a new collection containing the items that would be present on <i> page </i> with custom <i> pageSize </i>.
145
+ * @example
146
+ * import { ListCollection } from "@daiso-tech/core";;
147
+ *
148
+ * const collection = new ListCollection([1, 2, 3, 4, 5, 6, 7, 8, 9]);
149
+ * const page = collection.page(2, 3);
150
+ * page.toArray();
151
+ * // [4, 5, 6]
152
+ */
153
+ page(page: number, pageSize: number): ICollection<TInput>;
154
+ /**
155
+ * The <i>sum</i> method returns the sum of all items in the collection. If the collection includes other than number items an error will be thrown.
156
+ * If the collection is empty an error will also be thrown.
157
+ * @example
158
+ * import { ListCollection } from "@daiso-tech/core";;
159
+ *
160
+ * const collection = new ListCollection([1, 2, 3]);
161
+ * collection.sum();
162
+ * // 6
163
+ * @throws {CollectionError} {@link CollectionError}
164
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
165
+ * @throws {TypeCollectionError} {@link TypeCollectionError}
166
+ * @throws {EmptyCollectionError} {@link EmptyCollectionError}
167
+ */
168
+ sum(): EnsureType<TInput, number>;
169
+ /**
170
+ * The <i>average</i> method returns the average of all items in the collection. If the collection includes other than number items an error will be thrown.
171
+ * If the collection is empty an error will also be thrown.
172
+ * @example
173
+ * import { ListCollection } from "@daiso-tech/core";;
174
+ *
175
+ * const collection = new ListCollection([1, 2, 3]);
176
+ * collection.average();
177
+ * // 2
178
+ * @throws {CollectionError} {@link CollectionError}
179
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
180
+ * @throws {TypeCollectionError} {@link TypeCollectionError}
181
+ * @throws {EmptyCollectionError} {@link EmptyCollectionError}
182
+ */
183
+ average(): EnsureType<TInput, number>;
184
+ /**
185
+ * The <i>median</i> method returns the median of all items in the collection. If the collection includes other than number items an error will be thrown.
186
+ * If the collection is empty an error will also be thrown.
187
+ * @example
188
+ * import { ListCollection } from "@daiso-tech/core";;
189
+ *
190
+ * const collection = new ListCollection([1, 2, 3]);
191
+ * collection.median();
192
+ * // 2
193
+ * @throws {CollectionError} {@link CollectionError}
194
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
195
+ * @throws {TypeCollectionError} {@link TypeCollectionError}
196
+ * @throws {EmptyCollectionError} {@link EmptyCollectionError}
197
+ */
198
+ median(): EnsureType<TInput, number>;
199
+ /**
200
+ * The <i>min</i> method returns the min of all items in the collection. If the collection includes other than number items an error will be thrown.
201
+ * If the collection is empty an error will also be thrown.
202
+ * @example
203
+ * import { ListCollection } from "@daiso-tech/core";;
204
+ *
205
+ * const collection = new ListCollection([1, 2, 3]);
206
+ * collection.min();
207
+ * // 1
208
+ * @throws {CollectionError} {@link CollectionError}
209
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
210
+ * @throws {TypeCollectionError} {@link TypeCollectionError}
211
+ * @throws {EmptyCollectionError} {@link EmptyCollectionError}
212
+ */
213
+ min(): EnsureType<TInput, number>;
214
+ /**
215
+ * The <i>max</i> method returns the max of all items in the collection. If the collection includes other than number items an error will be thrown.
216
+ * If the collection is empty an error will also be thrown.
217
+ * @example
218
+ * import { ListCollection } from "@daiso-tech/core";;
219
+ *
220
+ * const collection = new ListCollection([1, 2, 3]);
221
+ * collection.max();
222
+ * // 3
223
+ * @throws {CollectionError} {@link CollectionError}
224
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
225
+ * @throws {TypeCollectionError} {@link TypeCollectionError}
226
+ * @throws {EmptyCollectionError} {@link EmptyCollectionError}
227
+ */
228
+ max(): EnsureType<TInput, number>;
229
+ /**
230
+ * The <i>percentage</i> method may be used to quickly determine the percentage of items in the collection that pass <i>predicateFn</i>.
231
+ * If the collection is empty an error will also be thrown.
232
+ * @example
233
+ * import { ListCollection } from "@daiso-tech/core";;
234
+ *
235
+ * const collection = new ListCollection([1, 1, 2, 2, 2, 3]);
236
+ * collection.percentage(value => value === 1);
237
+ * // 33.333
238
+ * @throws {CollectionError} {@link CollectionError}
239
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
240
+ * @throws {EmptyCollectionError} {@link EmptyCollectionError}
241
+ */
242
+ percentage(predicateFn: Predicate<TInput, ICollection<TInput>>): number;
243
+ /**
244
+ * The <i>some</i> method determines whether at least one item in the collection matches <i>predicateFn</i>.
245
+ * @example
246
+ * import { ListCollection } from "@daiso-tech/core";;
247
+ *
248
+ * const collection = new ListCollection([0, 1, 2, 3, 4, 5]);
249
+ * collection.some(item => item === 1);
250
+ * // true
251
+ * @throws {CollectionError} {@link CollectionError}
252
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
253
+ */
254
+ some<TOutput extends TInput>(predicateFn: Predicate<TInput, ICollection<TInput>, TOutput>): boolean;
255
+ /**
256
+ * The <i>every</i> method determines whether all items in the collection matches <i>predicateFn</i>.
257
+ * @example
258
+ * import { ListCollection } from "@daiso-tech/core";;
259
+ *
260
+ * const collection = new ListCollection([0, 1, 2, 3, 4, 5]);
261
+ * collection.every(item => item < 6);
262
+ * // true
263
+ * @throws {CollectionError} {@link CollectionError}
264
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
265
+ */
266
+ every<TOutput extends TInput>(predicateFn: Predicate<TInput, ICollection<TInput>, TOutput>): boolean;
267
+ /**
268
+ * The <i>take</i> method takes the first <i>limit</i> items.
269
+ * @example
270
+ * import { ListCollection } from "@daiso-tech/core";;
271
+ *
272
+ * const collection = new ListCollection([0, 1, 2, 3, 4, 5]);
273
+ * const chunk = collection.take(3);
274
+ * chunk.toArray();
275
+ * // [0, 1, 2]
276
+ * @example
277
+ * import { ListCollection } from "@daiso-tech/core";;
278
+ *
279
+ * const collection = new ListCollection([0, 1, 2, 3, 4, 5]);
280
+ * const chunk = collection.take(-2);
281
+ * chunk.toArray();
282
+ * // [0, 1, 2, 3]
283
+ */
284
+ take(limit: number): ICollection<TInput>;
285
+ /**
286
+ * The <i>takeUntil</i> method takes items until <i>predicateFn</i> returns true.
287
+ * @example
288
+ * import { ListCollection } from "@daiso-tech/core";;
289
+ *
290
+ * const collection = new ListCollection([1, 2, 3, 4]);
291
+ * const chunk = collection.takeUntil(item => item >= 3);
292
+ * chunk.toArray();
293
+ * // [1, 2]
294
+ */
295
+ takeUntil(predicateFn: Predicate<TInput, ICollection<TInput>>): ICollection<TInput>;
296
+ /**
297
+ * The <i>takeWhile</i> method takes items until <i>predicateFn</i> returns false.
298
+ * @example
299
+ * import { ListCollection } from "@daiso-tech/core";;
300
+ *
301
+ * const collection = new ListCollection([1, 2, 3, 4]);
302
+ * const chunk = collection.takeWhile(item => item < 4);
303
+ * chunk.toArray();
304
+ * // [1, 2, 3]
305
+ */
306
+ takeWhile(predicateFn: Predicate<TInput, ICollection<TInput>>): ICollection<TInput>;
307
+ /**
308
+ * The <i>skip</i> method skips the first <i>offset</i> items.
309
+ * @example
310
+ * import { ListCollection } from "@daiso-tech/core";;
311
+ *
312
+ * const collection = new ListCollection([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]).skip(4);
313
+ * collection.toArray();
314
+ * // [5, 6, 7, 8, 9, 10]
315
+ */
316
+ skip(offset: number): ICollection<TInput>;
317
+ /**
318
+ * The <i>skipUntil</i> method skips items until <i>predicateFn</i> returns true.
319
+ * @example
320
+ * import { ListCollection } from "@daiso-tech/core";;
321
+ *
322
+ * const collection = new ListCollection([1, 2, 3, 4]).skipUntil(item => item >= 3);
323
+ * collection.toArray();
324
+ * // [3, 4]
325
+ */
326
+ skipUntil(predicateFn: Predicate<TInput, ICollection<TInput>>): ICollection<TInput>;
327
+ /**
328
+ * The <i>skipWhile</i> method skips items until <i>predicateFn</i> returns false.
329
+ * @example
330
+ * import { ListCollection } from "@daiso-tech/core";;
331
+ *
332
+ * const collection = new ListCollection([1, 2, 3, 4]).skipWhile(item => item <= 3);
333
+ * collection.toArray();
334
+ * // [4]
335
+ */
336
+ skipWhile(predicateFn: Predicate<TInput, ICollection<TInput>>): ICollection<TInput>;
337
+ /**
338
+ * The <i>when</i> method will execute <i>callback</i> when <i>condition</i> evaluates to true.
339
+ * @example
340
+ * import { ListCollection } from "@daiso-tech/core";;
341
+ *
342
+ * const collection = new ListCollection([1, 2, 3, 4])
343
+ * .when(true, collection => collection.append([-3]))
344
+ * .when(false, collection => collection.append([20]));
345
+ * collection.toArray();
346
+ * // [1, 2, 3, 4, -3]
347
+ */
348
+ when<TExtended = TInput>(condition: boolean, callback: Modifier<ICollection<TInput>, ICollection<TExtended>>): ICollection<TInput | TExtended>;
349
+ /**
350
+ * The <i>whenEmpty</i> method will execute <i>callback</i> when the collection is empty.
351
+ * @example
352
+ * import { ListCollection } from "@daiso-tech/core";;
353
+ *
354
+ * const collection = new ListCollection([])
355
+ * .whenEmpty(collection => collection.append([-3]))
356
+ * collection.toArray();
357
+ * // [-3]
358
+ * @example
359
+ * import { ListCollection } from "@daiso-tech/core";;
360
+ *
361
+ * const collection = new ListCollection([1])
362
+ * .whenEmpty(collection => collection.append([-3]))
363
+ * collection.toArray();
364
+ * // [1]
365
+ */
366
+ whenEmpty<TExtended = TInput>(callback: Modifier<ICollection<TInput>, ICollection<TExtended>>): ICollection<TInput | TExtended>;
367
+ /**
368
+ * The <i>whenNot</i> method will execute <i>callback</i> when <i>condition</i> evaluates to false.
369
+ * @example
370
+ * import { ListCollection } from "@daiso-tech/core";;
371
+ *
372
+ * const collection = new ListCollection([1, 2, 3, 4])
373
+ * .whenNot(true, collection => collection.append([-3]))
374
+ * .whenNot(false, collection => collection.append([20]));
375
+ * collection.toArray();
376
+ * // [1, 2, 3, 4, 20]
377
+ */
378
+ whenNot<TExtended = TInput>(condition: boolean, callback: Modifier<ICollection<TInput>, ICollection<TExtended>>): ICollection<TInput | TExtended>;
379
+ /**
380
+ * The <i>whenNotEmpty</i> method will execute <i>callback</i> when the collection is not empty.
381
+ * @example
382
+ * import { ListCollection } from "@daiso-tech/core";;
383
+ *
384
+ * const collection = new ListCollection([])
385
+ * .whenNotEmpty(collection => collection.append([-3]))
386
+ * collection.toArray();
387
+ * // []
388
+ * @example
389
+ * import { ListCollection } from "@daiso-tech/core";;
390
+ *
391
+ * const collection = new ListCollection([1])
392
+ * .whenNotEmpty(collection => collection.append([-3]))
393
+ * collection.toArray();
394
+ * // [1, -3]
395
+ */
396
+ whenNotEmpty<TExtended = TInput>(callback: Modifier<ICollection<TInput>, ICollection<TExtended>>): ICollection<TInput | TExtended>;
397
+ /**
398
+ * The <i>pipe</i> method passes the orignal collection to <i>callback</i> and returns the result from <i>callback</i>.
399
+ * This method is useful when you want compose multiple smaller functions.
400
+ * @example
401
+ * import { ListCollection } from "@daiso-tech/core";;
402
+ *
403
+ * const collection = new ListCollection([1, "2", "a", 1, 3, {}]);
404
+ * function toNbrs<TInput>(
405
+ * collection: ICollection<TInput>,
406
+ * ): ICollection<number> {
407
+ * return collection
408
+ * .map((item) => Number(item))
409
+ * .reject((nbr) => Number.isNaN(nbr));
410
+ * }
411
+ * function nbrToStr(collection: ICollection<number>): number[] {
412
+ * return collection.repeat(2).toArray();
413
+ * }
414
+ * const piped = collection.pipe(toNbrs).pipe(nbrToStr);
415
+ * console.log(piped);
416
+ * // [ 1, 2, 1, 3 ]
417
+ */
418
+ pipe<TOutput = TInput>(callback: Transform<ICollection<TInput>, TOutput>): TOutput;
419
+ /**
420
+ * The <i>tap</i> method passes a copy of the original collection to <i>callback</i>, allowing you to do something with the items while not affecting the original collection.
421
+ * @example
422
+ * import { ListCollection } from "@daiso-tech/core";;
423
+ *
424
+ * const collection = new ListCollection([1, 2, 3, 4, 5, 6])
425
+ * .tap(collection => {
426
+ * collection
427
+ * .filter(value => value % 2 === 0)
428
+ * .forEach(value => console.log(value))
429
+ * })
430
+ * .toArray();
431
+ * // [1, 2, 3, 4, 5, 6]
432
+ */
433
+ tap(callback: Tap<ICollection<TInput>>): ICollection<TInput>;
434
+ /**
435
+ * The <i>chunk</i> method breaks the collection into multiple, smaller collections of size <i>chunkSize</i>.
436
+ * If <i>chunkSize</i> is not divisible with total number of items then the last chunk will contain the remaining items.
437
+ * @example
438
+ * import { ListCollection } from "@daiso-tech/core";;
439
+ *
440
+ * const collection = new ListCollection([1, 2, 3, 4, 5, 6, 7]);
441
+ * const chunks = collection.chunk(4);
442
+ * chunks.map(chunk => chunk.toArray()).toArray();
443
+ * // [[1, 2, 3, 4], [5, 6, 7]]
444
+ */
445
+ chunk(chunkSize: number): ICollection<ICollection<TInput>>;
446
+ /**
447
+ * The <i>chunkWhile</i> method breaks the collection into multiple, smaller collections based on the evaluation of <i>predicateFn</i>.
448
+ * The chunk variable passed to the <i>predicateFn</i> may be used to inspect the previous item.
449
+ * @example
450
+ * import { ListCollection } from "@daiso-tech/core";;
451
+ *
452
+ * const collection = new ListCollection("AABBCCCD");
453
+ * const chunks = collection.chunkWhile((value, index, chunk) => {
454
+ * return value === chunk.last();
455
+ * });
456
+ * chunks.map(chunk => chunk.toArray()).toArray();
457
+ * // [["A", "A"], ["B", "B"], ["C", "C", "C"], ["D"]]
458
+ */
459
+ chunkWhile(predicateFn: Predicate<TInput, ICollection<TInput>>): ICollection<ICollection<TInput>>;
460
+ /**
461
+ * The <i>split</i> method breaks a collection evenly into <i>chunkAmount</i> of chunks.
462
+ * @example
463
+ * import { ListCollection } from "@daiso-tech/core";;
464
+ *
465
+ * const collection = new ListCollection([1, 2, 3, 4, 5]);
466
+ * const chunks = collection.split(3);
467
+ * chunks.map(chunk => chunk.toArray()).toArray();
468
+ * // [[1, 2], [3, 4], [5]]
469
+ * @example
470
+ * import { ListCollection } from "@daiso-tech/core";;
471
+ *
472
+ * const collection = new ListCollection([1, 2, 3, 4, 5, 6]);
473
+ * const chunks = collection.split(3);
474
+ * chunks.map(chunk => chunk.toArray()).toArray();
475
+ * // [[1, 2], [3, 4], [5, 6]]
476
+ * @example
477
+ * import { ListCollection } from "@daiso-tech/core";;
478
+ *
479
+ * const collection = new ListCollection([1, 2, 3, 4, 5, 6, 7]);
480
+ * const chunks = collection.split(3);
481
+ * chunks.map(chunk => chunk.toArray()).toArray();
482
+ * // [[1, 2, 7], [3, 4], [5, 6]]
483
+ */
484
+ split(chunkAmount: number): ICollection<ICollection<TInput>>;
485
+ /**
486
+ * The <i>partition</i> method is used to separate items that pass <i>predicateFn</i> from those that do not.
487
+ * @example
488
+ * import { ListCollection } from "@daiso-tech/core";;
489
+ *
490
+ * const collection = new ListCollection([1, 2, 3, 4, 5, 6]);
491
+ * const chunks = collection.partition(item => item < 3);
492
+ * chunks.map(chunk => chunk.toArray()).toArray();
493
+ * // [[1, 2], [3, 4, 5, 6]]
494
+ */
495
+ partition(predicateFn: Predicate<TInput, ICollection<TInput>>): ICollection<ICollection<TInput>>;
496
+ /**
497
+ * The <i>sliding</i> method returns a new collection of chunks representing a "sliding window" view of the items in the collection.
498
+ * @example
499
+ * import { ListCollection } from "@daiso-tech/core";;
500
+ *
501
+ * const collection = new ListCollection([1, 2, 3, 4, 5])
502
+ * const chunks = collection.sliding(2);
503
+ * chunks.map(chunk => chunk.toArray()).toArray();
504
+ * // [[1, 2], [2, 3], [3, 4], [4, 5]]
505
+ */
506
+ sliding(chunkSize: number, step?: number): ICollection<ICollection<TInput>>;
507
+ /**
508
+ * The <i>groupBy</i> method groups the collection's items by <i> selectFn </i>.
509
+ * By default the equality check occurs on the item.
510
+ * @example
511
+ * import { ListCollection } from "@daiso-tech/core";;
512
+ *
513
+ * const collection = new ListCollection(["a", "a", "a", "b", "b", "c"]);
514
+ * const group = collection
515
+ * .groupBy()
516
+ * .map(([key, collection]) => [key, collection.toArray()])
517
+ * .toArray();
518
+ * // [
519
+ * // [
520
+ * // "a",
521
+ * // ["a", "a", "a"]
522
+ * // ],
523
+ * // [
524
+ * // "b",
525
+ * // ["b", "b"]
526
+ * // ],
527
+ * // [
528
+ * // "c",
529
+ * // ["c"]
530
+ * // ]
531
+ * // ]
532
+ * @example
533
+ * import { ListCollection } from "@daiso-tech/core";;
534
+ *
535
+ * const collection = new ListCollection(["alice@gmail.com", "bob@yahoo.com", "carlos@gmail.com"]);
536
+ * const group = collection
537
+ * .groupBy(item => item.split("@")[1])
538
+ * .map(([key, collection]) => [key, collection.toArray()])
539
+ * .toArray();
540
+ * // [
541
+ * // [
542
+ * // "gmail.com",
543
+ * // ["alice@gmail.com", "carlos@gmail.com"]
544
+ * // ],
545
+ * // [
546
+ * // "yahoo.com",
547
+ * // ["bob@yahoo.com"]
548
+ * // ]
549
+ * // ]
550
+ */
551
+ groupBy<TOutput = TInput>(selectFn?: Map<TInput, ICollection<TInput>, TOutput>): ICollection<RecordItem<TOutput, ICollection<TInput>>>;
552
+ /**
553
+ * The <i>countBy</i> method counts the occurrences of values in the collection by <i> selectFn </i>.
554
+ * By default the equality check occurs on the item.
555
+ * @example
556
+ * import { ListCollection } from "@daiso-tech/core";;
557
+ *
558
+ * const collection = new ListCollection(["a", "a", "a", "b", "b", "c"]);
559
+ * const count = collection
560
+ * .countBy()
561
+ * .map(([key, collection]) => [key, collection.toArray()])
562
+ * .toArray();
563
+ * // [
564
+ * // ["a", 3],
565
+ * // ["b", 2],
566
+ * // ["c", 1]
567
+ * // ]
568
+ * @example
569
+ * import { ListCollection } from "@daiso-tech/core";;
570
+ *
571
+ * const collection = new ListCollection(["alice@gmail.com", "bob@yahoo.com", "carlos@gmail.com"]);
572
+ * const count = collection
573
+ * .countBy(item => item.split("@")[1])
574
+ * .toArray();
575
+ * // [
576
+ * // ["gmail.com", 2],
577
+ * // ["yahoo.com", 1]
578
+ * // ]
579
+ */
580
+ countBy<TOutput = TInput>(selectFn?: Map<TInput, ICollection<TInput>, TOutput>): ICollection<RecordItem<TOutput, number>>;
581
+ /**
582
+ * The <i>unique</i> method removes all duplicate values from the collection by <i> selectFn </i>.
583
+ * By default the equality check occurs on the item.
584
+ * @example
585
+ * import { ListCollection } from "@daiso-tech/core";;
586
+ *
587
+ * const collection = new ListCollection([1, 1, 2, 2, 3, 4, 2]);
588
+ * collection.unique().toArray();
589
+ * // [1, 2, 3, 4]
590
+ * @example
591
+ * import { ListCollection } from "@daiso-tech/core";;
592
+ *
593
+ * const collection = new ListCollection([
594
+ * { name: "iPhone 6", brand: "Apple", type: "phone" },
595
+ * { name: "iPhone 5", brand: "Apple", type: "phone" },
596
+ * { name: "Apple Watch", brand: "Apple", type: "watch" },
597
+ * { name: "Galaxy S6", brand: "Samsung", type: "phone" },
598
+ * { name: "Galaxy Gear", brand: "Samsung", type: "watch" },
599
+ * ]);
600
+ * const unique = collection.unique({
601
+ * selectFn: item => item.brand
602
+ * }).toArray();
603
+ * // [
604
+ * // { name: "iPhone 6", brand: "Apple", type: "phone" },
605
+ * // { name: "Galaxy S6", brand: "Samsung", type: "phone" },
606
+ * // ]
607
+ */
608
+ unique<TOutput = TInput>(selectFn?: Map<TInput, ICollection<TInput>, TOutput>): ICollection<TInput>;
609
+ /**
610
+ * The <i>difference</i> method will return the values in the original collection that are not present in <i>iterable</i>.
611
+ * By default the equality check occurs on the item.
612
+ * @example
613
+ * import { ListCollection } from "@daiso-tech/core";;
614
+ *
615
+ * const collection = new ListCollection([1, 2, 2, 3, 4, 5]);
616
+ * const difference = collection.difference([2, 4, 6, 8]);
617
+ * difference.toArray();
618
+ * // [1, 3, 5]
619
+ * @example
620
+ * import { ListCollection } from "@daiso-tech/core";;
621
+ *
622
+ * const collection = new ListCollection([
623
+ * { name: "iPhone 6", brand: "Apple", type: "phone" },
624
+ * { name: "iPhone 5", brand: "Apple", type: "phone" },
625
+ * { name: "Apple Watch", brand: "Apple", type: "watch" },
626
+ * { name: "Galaxy S6", brand: "Samsung", type: "phone" },
627
+ * { name: "Galaxy Gear", brand: "Samsung", type: "watch" },
628
+ * ]);
629
+ * const difference = collection.difference(
630
+ * [
631
+ * { name: "Apple Watch", brand: "Apple", type: "watch" },
632
+ * ],
633
+ * (product) => product.type
634
+ * );
635
+ * difference.toArray();
636
+ * // [
637
+ * // { name: "iPhone 6", brand: "Apple", type: "phone" },
638
+ * // { name: "iPhone 5", brand: "Apple", type: "phone" },
639
+ * // { name: "Galaxy S6", brand: "Samsung", type: "phone" },
640
+ * // ]
641
+ */
642
+ difference<TOutput = TInput>(iterable: Iterable<TInput>, selectFn?: Map<TInput, ICollection<TInput>, TOutput>): ICollection<TInput>;
643
+ /**
644
+ * The <i>repeat</i> method will repeat the original collection <i>amount</i> times.
645
+ * @example
646
+ * import { ListCollection } from "@daiso-tech/core";;
647
+ *
648
+ * const collection = new ListCollection([1, 2, 3]);
649
+ * const newCollection = collection.repeat(3);
650
+ * newCollection.toArray();
651
+ * // [1, 2, 3, 1, 2, 3, 1, 2, 3]
652
+ */
653
+ repeat(amount: number): ICollection<TInput>;
654
+ /**
655
+ * The <i>padStart</i> method pads this collection with <i>fillItems</i> until the resulting collection size reaches <i>maxLength</i>.
656
+ * The padding is applied from the start of this collection.
657
+ * @example
658
+ * import { ListCollection } from "@daiso-tech/core";;
659
+ *
660
+ * new ListCollection("abc").padStart(10, "foo").join("");
661
+ * // "foofoofabc"
662
+ *
663
+ * new ListCollection("abc").padStart(6, "123465").join("");
664
+ * // "123abc"
665
+ *
666
+ * new ListCollection("abc").padStart(8, "0").join("");
667
+ * // "00000abc"
668
+ *
669
+ * new ListCollection("abc").padStart(1, "_").join("");
670
+ * // "abc"
671
+ */
672
+ padStart<TExtended = TInput>(maxLength: number, fillItems: Iterable<TExtended>): ICollection<TInput | TExtended>;
673
+ /**
674
+ * The <i>padEnd</i> method pads this collection with <i>fillItems</i> until the resulting collection size reaches <i>maxLength</i>.
675
+ * The padding is applied from the end of this collection.
676
+ * @example
677
+ * import { ListCollection } from "@daiso-tech/core";;
678
+ *
679
+ * new ListCollection("abc").padEnd(10, "foo").join("");
680
+ * // "abcfoofoof"
681
+ *
682
+ * new ListCollection("abc").padEnd(6, "123465").join("");
683
+ * // "abc123"
684
+ *
685
+ * new ListCollection("abc").padEnd(8, "0").join("");
686
+ * // "abc00000"
687
+ *
688
+ * new ListCollection("abc").padEnd(1, "_").join("");
689
+ * // "abc"
690
+ */
691
+ padEnd<TExtended = TInput>(maxLength: number, fillItems: Iterable<TExtended>): ICollection<TInput | TExtended>;
692
+ /**
693
+ * The <i>slice</i> method creates porition of the original collection selected from <i>start</i> and <i>end</i>
694
+ * where <i>start</i> and <i>end</i> (end not included) represent the index of items in the collection.
695
+ * @example
696
+ * import { ListCollection } from "@daiso-tech/core";;
697
+ *
698
+ * const collection = new ListCollection(["a", "b", "c", "d", "e", "f"]);
699
+ * collection.slice(3).toArray();
700
+ * // ["d", "e", "f"]
701
+ * @example
702
+ * import { ListCollection } from "@daiso-tech/core";;
703
+ *
704
+ * const collection = new ListCollection(["a", "b", "c", "d", "e", "f"]);
705
+ * collection.slice(undefined, 2).toArray();
706
+ * // ["a", "b"]
707
+ * @example
708
+ * import { ListCollection } from "@daiso-tech/core";;
709
+ *
710
+ * const collection = new ListCollection(["a", "b", "c", "d", "e", "f"]);
711
+ * collection.slice(2, 5).toArray();
712
+ * // ["c", "d", "e"]
713
+ * @example
714
+ * import { ListCollection } from "@daiso-tech/core";;
715
+ *
716
+ * const collection = new ListCollection(["a", "b", "c", "d", "e", "f"]);
717
+ * collection.slice(-2).toArray();
718
+ * // ["e", "f"]
719
+ * @example
720
+ * import { ListCollection } from "@daiso-tech/core";;
721
+ *
722
+ * const collection = new ListCollection(["a", "b", "c", "d", "e", "f"]);
723
+ * collection.slice(undefined, -2).toArray();
724
+ * // ["a", "b", "c", "d"]
725
+ * @example
726
+ * import { ListCollection } from "@daiso-tech/core";;
727
+ *
728
+ * const collection = new ListCollection(["a", "b", "c", "d", "e", "f"]);
729
+ * collection.slice(-4, -2).toArray();
730
+ * // ["c", "d"]
731
+ */
732
+ slice(start?: number, end?: number): ICollection<TInput>;
733
+ /**
734
+ * The <i>prepend</i> method adds <i>iterable</i> to the beginning of the collection.
735
+ * @example
736
+ * import { ListCollection } from "@daiso-tech/core";;
737
+ *
738
+ * const collection = new ListCollection([1, 2, 3, 4, 5]).prepend([-1, 20]);
739
+ * collection.toArray();
740
+ * // [-1, 20, 1, 2, 3, 4, 5]
741
+ */
742
+ prepend<TExtended = TInput>(iterable: Iterable<TInput | TExtended>): ICollection<TInput | TExtended>;
743
+ /**
744
+ * The <i>append</i> method adds <i>iterable</i> to the end of the collection.
745
+ * @example
746
+ * import { ListCollection } from "@daiso-tech/core";;
747
+ *
748
+ * const collection = new ListCollection([1, 2, 3, 4, 5]).append([-1, -2]);
749
+ * collection.toArray();
750
+ * // [1, 2, 3, 4, 5, -1, -2,]
751
+ */
752
+ append<TExtended = TInput>(iterable: Iterable<TInput | TExtended>): ICollection<TInput | TExtended>;
753
+ /**
754
+ * The <i>insertBefore</i> method adds <i>iterable</i> before the first item that matches <i>predicateFn</i>.
755
+ * @example
756
+ * import { ListCollection } from "@daiso-tech/core";;
757
+ *
758
+ * const collection = new ListCollection([1, 2, 2, 3, 4, 5]).insertBefore(item => item === 2, [-1, 20]);
759
+ * collection.toArray();
760
+ * // [1, -1, 20, 2, 2, 3, 4, 5]
761
+ */
762
+ insertBefore<TExtended = TInput>(predicateFn: Predicate<TInput, ICollection<TInput>>, iterable: Iterable<TInput | TExtended>): ICollection<TInput | TExtended>;
763
+ /**
764
+ * The <i>insertAfter</i> method adds <i>iterable</i> after the first item that matches <i>predicateFn</i>.
765
+ * @example
766
+ * import { ListCollection } from "@daiso-tech/core";;
767
+ *
768
+ * const collection = new ListCollection([1, 2, 2, 3, 4, 5]).insertAfter(item => item === 2, [-1, 20]);
769
+ * collection.toArray();
770
+ * // [1, 2, -1, 20, 2, 3, 4, 5]
771
+ */
772
+ insertAfter<TExtended = TInput>(predicateFn: Predicate<TInput, ICollection<TInput>>, iterable: Iterable<TInput | TExtended>): ICollection<TInput | TExtended>;
773
+ /**
774
+ * The <i>crossJoin</i> method cross joins the collection's values among <i>iterables</i>, returning a Cartesian product with all possible permutations.
775
+ * @example
776
+ * import { ListCollection } from "@daiso-tech/core";;
777
+ *
778
+ * const collection = new ListCollection([1, 2]);
779
+ * const matrix = collection.cross(["a", "b"]);
780
+ * matrix.toArray();
781
+ * // [
782
+ * // [1, "a"],
783
+ * // [1, "b"],
784
+ * // [2, "a"],
785
+ * // [2, "b"],
786
+ * // ]
787
+ * @example
788
+ * import { ListCollection } from "@daiso-tech/core";;
789
+ *
790
+ * const collection = new ListCollection([1, 2]);
791
+ * const matrix = collection.cross(["a", "b"]).cross(["I", "II"]);
792
+ * matrix.toArray();
793
+ * // [
794
+ * // [1, "a", "I"],
795
+ * // [1, "a", "II"],
796
+ * // [1, "b", "I"],
797
+ * // [1, "b", "II"],
798
+ * // [2, "a", "I"],
799
+ * // [2, "a", "II"],
800
+ * // [2, "b", "I"],
801
+ * // [2, "b", "II"],
802
+ * // ]
803
+ */
804
+ crossJoin<TExtended>(iterable: Iterable<TExtended>): ICollection<CrossJoinResult<TInput, TExtended>>;
805
+ /**
806
+ * The <i>zip</i> method merges together the values of <i>iterable</i> with the values of the collection at their corresponding index.
807
+ * The returned collection has size of the shortest collection.
808
+ * @example
809
+ * import { ListCollection } from "@daiso-tech/core";;
810
+ *
811
+ * const collection = new ListCollection(["Chair", "Desk"]);
812
+ * const zipped = collection.zip([100, 200]);
813
+ * zipped.toArray();
814
+ * // [["Chair", 100], ["Desk", 200]]
815
+ * @example
816
+ * import { ListCollection } from "@daiso-tech/core";;
817
+ *
818
+ * const collection = new ListCollection(["Chair", "Desk", "Couch"]);
819
+ * const zipped = collection.zip([100, 200]);
820
+ * zipped.toArray();
821
+ * // [["Chair", 100], ["Desk", 200]]
822
+ * @example
823
+ * import { ListCollection } from "@daiso-tech/core";;
824
+ *
825
+ * const collection = new ListCollection(["Chair", "Desk"]);
826
+ * const zipped = collection.zip([100, 200, 300]);
827
+ * zipped.toArray();
828
+ * // [["Chair", 100], ["Desk", 200]]
829
+ */
830
+ zip<TExtended>(iterable: Iterable<TExtended>): ICollection<RecordItem<TInput, TExtended>>;
831
+ /**
832
+ * The <i>sort</i> method sorts the collection. You can provide a <i>comparator</i> function.
833
+ * @example
834
+ * import { ListCollection } from "@daiso-tech/core";;
835
+ *
836
+ * const collection = new ListCollection([-1, 2, 4, 3]);
837
+ * collection.sort().toArray();
838
+ * // [-1, 2, 3, 4]
839
+ * @example
840
+ * import { ListCollection } from "@daiso-tech/core";;
841
+ *
842
+ * const collection = new ListCollection([
843
+ * { name: "Anders", age: 30 },
844
+ * { name: "Joe", age: 20 },
845
+ * { name: "Hasan", age: 25 },
846
+ * { name: "Linda", age: 19 }
847
+ * ]);
848
+ * collection.sort(({ age: ageA }, { age: ageB }) => ageA - ageB).toArray();
849
+ * // [
850
+ * // { name: "Linda", age: 19 }
851
+ * // { name: "Joe", age: 20 },
852
+ * // { name: "Hasan", age: 25 },
853
+ * // { name: "Anders", age: 30 },
854
+ * // ]
855
+ */
856
+ sort(comparator?: Comparator<TInput>): ICollection<TInput>;
857
+ /**
858
+ * The <i>reverse</i> method will reverse the order of the collection.
859
+ * The reversing of the collection will be applied in chunks that are the size of <i> chunkSize </i>.
860
+ * @example
861
+ * import { ListCollection } from "@daiso-tech/core";;
862
+ *
863
+ * const collection = new ListCollection([-1, 2, 4, 3]);
864
+ * collection.reverse().toArray();
865
+ * // [3, 4, 2, -1]
866
+ */
867
+ reverse(chunkSize?: number): ICollection<TInput>;
868
+ /**
869
+ * The <i>shuffle</i> method randomly shuffles the items in the collection. You can provide a custom Math.random function by passing in <i>mathRandom</i>.
870
+ */
871
+ shuffle(mathRandom?: () => number): ICollection<TInput>;
872
+ /**
873
+ * The <i>first</i> method returns the first item in the collection that passes <i> predicateFn </i>.
874
+ * By default it will get the first item. If the collection is empty or no items passes <i> predicateFn </i> than null i returned.
875
+ * @example
876
+ * import { ListCollection } from "@daiso-tech/core";;
877
+ *
878
+ * const collection = new ListCollection([1, 2, 3, 4]);
879
+ * collection.first();
880
+ * // 1
881
+ * @example
882
+ * import { ListCollection } from "@daiso-tech/core";;
883
+ *
884
+ * const collection = new ListCollection([1, 2, 3, 4]);
885
+ * collection.first(item => item > 2);
886
+ * // 3
887
+ * @example
888
+ * import { ListCollection } from "@daiso-tech/core";;
889
+ *
890
+ * const collection = new ListCollection([1, 2, 3, 4]);
891
+ * collection.first(item => item > 10);
892
+ * // null
893
+ * @throws {CollectionError} {@link CollectionError}
894
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
895
+ * // 3
896
+ */
897
+ first<TOutput extends TInput>(predicateFn?: Predicate<TInput, ICollection<TInput>, TOutput>): TOutput | null;
898
+ /**
899
+ * The <i>firstOr</i> method returns the first item in the collection that passes <i> predicateFn </i>
900
+ * By default it will get the first item. If the collection is empty or no items passes <i> predicateFn </i> than <i> defaultValue </i>.
901
+ * @example
902
+ * import { ListCollection } from "@daiso-tech/core";;
903
+ *
904
+ * const collection = new ListCollection([1, 2, 3, 4]);
905
+ * collection.firstOr(-1);
906
+ * // 1
907
+ * @example
908
+ * import { ListCollection } from "@daiso-tech/core";;
909
+ *
910
+ * const collection = new ListCollection([1, 2, 3, 4]);
911
+ * collection.firstOr(-1, item => item > 2);
912
+ * // 3
913
+ * @example
914
+ * import { ListCollection } from "@daiso-tech/core";;
915
+ *
916
+ * const collection = new ListCollection([1, 2, 3, 4]);
917
+ * collection.firstOr(-1, item => item > 10);
918
+ * // -1
919
+ * @example
920
+ * import { ListCollection } from "@daiso-tech/core";;
921
+ *
922
+ * const collection = new ListCollection([1, 2, 3, 4]);
923
+ * collection.firstOr(() => -1, item => item > 10);
924
+ * // -1
925
+ * @throws {CollectionError} {@link CollectionError}
926
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
927
+ */
928
+ firstOr<TOutput extends TInput, TExtended = TInput>(defaultValue: Lazyable<TExtended>, predicateFn?: Predicate<TInput, ICollection<TInput>, TOutput>): TOutput | TExtended;
929
+ /**
930
+ * The <i>firstOrFail</i> method returns the first item in the collection that passes <i> predicateFn </i>.
931
+ * By default it will get the first item. If the collection is empty or no items passes <i> predicateFn </i> than error is thrown.
932
+ * @example
933
+ * import { ListCollection } from "@daiso-tech/core";;
934
+ *
935
+ * const collection = new ListCollection([1, 2, 3, 4]);
936
+ * collection.firstOrFail();
937
+ * // 1
938
+ * @example
939
+ * import { ListCollection } from "@daiso-tech/core";;
940
+ *
941
+ * const collection = new ListCollection([1, 2, 3, 4]);
942
+ * collection.firstOrFail(item => item > 2);
943
+ * // 3
944
+ * @example
945
+ * import { ListCollection } from "@daiso-tech/core";;
946
+ *
947
+ * const collection = new ListCollection([1, 2, 3, 4]);
948
+ * collection.firstOrFail(item => item > 10);
949
+ * // throws an error
950
+ * @throws {CollectionError} {@link CollectionError}
951
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
952
+ * @throws {ItemNotFoundCollectionError} {@link ItemNotFoundCollectionError}
953
+ */
954
+ firstOrFail<TOutput extends TInput>(predicateFn?: Predicate<TInput, ICollection<TInput>, TOutput>): TOutput;
955
+ /**
956
+ * The <i>last</i> method returns the last item in the collection that passes <i> predicateFn </i>.
957
+ * By default it will get the last item. If the collection is empty or no items passes <i> predicateFn </i> than null i returned.
958
+ * @example
959
+ * import { ListCollection } from "@daiso-tech/core";;
960
+ *
961
+ * const collection = new ListCollection([1, 2, 3, 4]);
962
+ * collection.last();
963
+ * // 4
964
+ * @example
965
+ * import { ListCollection } from "@daiso-tech/core";;
966
+ *
967
+ * const collection = new ListCollection([1, 2, 3, 4]);
968
+ * collection.last(item => item < 4);
969
+ * // 3
970
+ * @example
971
+ * import { ListCollection } from "@daiso-tech/core";;
972
+ *
973
+ * const collection = new ListCollection([1, 2, 3, 4]);
974
+ * collection.last(item => item > 10);
975
+ * // null
976
+ * @throws {CollectionError} {@link CollectionError}
977
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
978
+ * // 3
979
+ */
980
+ last<TOutput extends TInput>(predicateFn?: Predicate<TInput, ICollection<TInput>, TOutput>): TOutput | null;
981
+ /**
982
+ * The <i>lastOr</i> method returns the last item in the collection that passes <i> predicateFn </i>.
983
+ * By default it will get the last item. If the collection is empty or no items passes <i> predicateFn </i> than <i> defaultValue </i>.
984
+ * @example
985
+ * import { ListCollection } from "@daiso-tech/core";;
986
+ *
987
+ * const collection = new ListCollection([1, 2, 3, 4]);
988
+ * collection.lastOr(-1);
989
+ * // 4
990
+ * @example
991
+ * import { ListCollection } from "@daiso-tech/core";;
992
+ *
993
+ * const collection = new ListCollection([1, 2, 3, 4]);
994
+ * collection.lastOr(-1, item => item < 4);
995
+ * // 3
996
+ * @example
997
+ * import { ListCollection } from "@daiso-tech/core";;
998
+ *
999
+ * const collection = new ListCollection([1, 2, 3, 4]);
1000
+ * collection.lastOr(-1, item => item > 10);
1001
+ * // -1
1002
+ * @example
1003
+ * import { ListCollection } from "@daiso-tech/core";;
1004
+ *
1005
+ * const collection = new ListCollection([1, 2, 3, 4]);
1006
+ * collection.lastOr(() => -1, item => item > 10);
1007
+ * // -1
1008
+ * @throws {CollectionError} {@link CollectionError}
1009
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
1010
+ */
1011
+ lastOr<TOutput extends TInput, TExtended = TInput>(defaultValue: Lazyable<TExtended>, predicateFn?: Predicate<TInput, ICollection<TInput>, TOutput>): TOutput | TExtended;
1012
+ /**
1013
+ * The <i>lastOrFail</i> method returns the last item in the collection that passes <i> predicateFn </i>.
1014
+ * By default it will get the last item. If the collection is empty or no items passes <i> predicateFn </i> than error is thrown.
1015
+ * @example
1016
+ * import { ListCollection } from "@daiso-tech/core";;
1017
+ *
1018
+ * const collection = new ListCollection([1, 2, 3, 4]);
1019
+ * collection.lastOrFail();
1020
+ * // 4
1021
+ * @example
1022
+ * import { ListCollection } from "@daiso-tech/core";;
1023
+ *
1024
+ * const collection = new ListCollection([1, 2, 3, 4]);
1025
+ * collection.lastOrFail(item => item < 4);
1026
+ * // 3
1027
+ * @example
1028
+ * import { ListCollection } from "@daiso-tech/core";;
1029
+ *
1030
+ * const collection = new ListCollection([1, 2, 3, 4]);
1031
+ * collection.lastOrFail(item => item > 10);
1032
+ * // throws an error
1033
+ * @throws {CollectionError} {@link CollectionError}
1034
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
1035
+ * @throws {ItemNotFoundCollectionError} {@link ItemNotFoundCollectionError}
1036
+ */
1037
+ lastOrFail<TOutput extends TInput>(predicateFn?: Predicate<TInput, ICollection<TInput>, TOutput>): TOutput;
1038
+ /**
1039
+ * The <i>before</i> method returns the item that comes before the first item that matches <i>predicateFn</i>.
1040
+ * If the <i>predicateFn</i> does not match or matches the first item then null is returned.
1041
+ * @example
1042
+ * import { ListCollection } from "@daiso-tech/core";;
1043
+ *
1044
+ * const collection = new ListCollection([1, 2, 3, 4]);
1045
+ * collection.before(item => item === 2);
1046
+ * // 1
1047
+ * @example
1048
+ * import { ListCollection } from "@daiso-tech/core";;
1049
+ *
1050
+ * const collection = new ListCollection([1, 2, 3, 4]);
1051
+ * collection.before(item => item === 1);
1052
+ * // null
1053
+ * @throws {CollectionError} {@link CollectionError}
1054
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
1055
+ */
1056
+ before(predicateFn: Predicate<TInput, ICollection<TInput>>): TInput | null;
1057
+ /**
1058
+ * The <i>beforeOr</i> method returns the item that comes before the first item that matches <i>predicateFn</i>.
1059
+ * If the collection is empty or the <i>predicateFn</i> does not match or matches the first item then <i>defaultValue</i> is returned.
1060
+ * @example
1061
+ * import { ListCollection } from "@daiso-tech/core";;
1062
+ *
1063
+ * const collection = new ListCollection([1, 2, 3, 4]);
1064
+ * collection.beforeOr(-1, item => item === 2);
1065
+ * // 1
1066
+ * @example
1067
+ * import { ListCollection } from "@daiso-tech/core";;
1068
+ *
1069
+ * const collection = new ListCollection([1, 2, 3, 4]);
1070
+ * collection.beforeOr(-1, item => item === 1);
1071
+ * // -1
1072
+ * @example
1073
+ * import { ListCollection } from "@daiso-tech/core";;
1074
+ *
1075
+ * const collection = new ListCollection([1, 2, 3, 4]);
1076
+ * collection.beforeOr(() => -1, item => item === 1);
1077
+ * // -1
1078
+ * @throws {CollectionError} {@link CollectionError}
1079
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
1080
+ */
1081
+ beforeOr<TExtended = TInput>(defaultValue: Lazyable<TExtended>, predicateFn: Predicate<TInput, ICollection<TInput>>): TInput | TExtended;
1082
+ /**
1083
+ * The <i>beforeOrFail</i> method returns the item that comes before the first item that matches <i>predicateFn</i>.
1084
+ * If the collection is empty or the <i>predicateFn</i> does not match or matches the first item then an error is thrown.
1085
+ * @example
1086
+ * import { ListCollection } from "@daiso-tech/core";;
1087
+ *
1088
+ * const collection = new ListCollection([1, 2, 3, 4]);
1089
+ * collection.beforeOrFail(item => item === 2);
1090
+ * // 1
1091
+ * @example
1092
+ * import { ListCollection } from "@daiso-tech/core";;
1093
+ *
1094
+ * const collection = new ListCollection([1, 2, 3, 4]);
1095
+ * collection.beforeOrFail(item => item === 1);
1096
+ * // error is thrown
1097
+ * @throws {CollectionError} {@link CollectionError}
1098
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
1099
+ * @throws {ItemNotFoundCollectionError} {@link ItemNotFoundCollectionError}
1100
+ */
1101
+ beforeOrFail(predicateFn: Predicate<TInput, ICollection<TInput>>): TInput;
1102
+ /**
1103
+ * The <i>after</i> method returns the item that comes after the first item that matches <i>predicateFn</i>.
1104
+ * If the collection is empty or the <i>predicateFn</i> does not match or matches the last item then null is returned.
1105
+ * @example
1106
+ * import { ListCollection } from "@daiso-tech/core";;
1107
+ *
1108
+ * const collection = new ListCollection([1, 2, 3, 4]);
1109
+ * collection.after(item => item === 2);
1110
+ * // 3
1111
+ * @example
1112
+ * import { ListCollection } from "@daiso-tech/core";;
1113
+ *
1114
+ * const collection = new ListCollection([1, 2, 3, 4]);
1115
+ * collection.after(item => item === 4);
1116
+ * // null
1117
+ * @throws {CollectionError} {@link CollectionError}
1118
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
1119
+ */
1120
+ after(predicateFn: Predicate<TInput, ICollection<TInput>>): TInput | null;
1121
+ /**
1122
+ * The <i>afterOr</i> method returns the item that comes after the first item that matches <i>predicateFn</i>.
1123
+ * If the collection is empty or the <i>predicateFn</i> does not match or matches the last item then <i>defaultValue</i> is returned.
1124
+ * @example
1125
+ * import { ListCollection } from "@daiso-tech/core";;
1126
+ *
1127
+ * const collection = new ListCollection([1, 2, 3, 4]);
1128
+ * collection.afterOr(-1, item => item === 2);
1129
+ * // 3
1130
+ * @example
1131
+ * import { ListCollection } from "@daiso-tech/core";;
1132
+ *
1133
+ * const collection = new ListCollection([1, 2, 3, 4]);
1134
+ * collection.afterOr(-1, item => item === 4);
1135
+ * // -1
1136
+ * @example
1137
+ * import { ListCollection } from "@daiso-tech/core";;
1138
+ *
1139
+ * const collection = new ListCollection([1, 2, 3, 4]);
1140
+ * collection.afterOr(() => -1, item => item === 4);
1141
+ * // -1
1142
+ * @throws {CollectionError} {@link CollectionError}
1143
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
1144
+ */
1145
+ afterOr<TExtended = TInput>(defaultValue: Lazyable<TExtended>, predicateFn: Predicate<TInput, ICollection<TInput>>): TInput | TExtended;
1146
+ /**
1147
+ * The <i>afterOrFail</i> method returns the item that comes after the first item that matches <i>predicateFn</i>.
1148
+ * If the collection is empty or the <i>predicateFn</i> does not match or matches the last item then an error is thrown.
1149
+ * @example
1150
+ * import { ListCollection } from "@daiso-tech/core";;
1151
+ *
1152
+ * const collection = new ListCollection([1, 2, 3, 4]);
1153
+ * collection.afterOrFail(item => item === 2);
1154
+ * // 3
1155
+ * @example
1156
+ * import { ListCollection } from "@daiso-tech/core";;
1157
+ *
1158
+ * const collection = new ListCollection([1, 2, 3, 4]);
1159
+ * collection.afterOrFail(item => item === 4);
1160
+ * // error is thrown
1161
+ * @throws {CollectionError} {@link CollectionError}
1162
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
1163
+ * @throws {ItemNotFoundCollectionError} {@link ItemNotFoundCollectionError}
1164
+ */
1165
+ afterOrFail(predicateFn: Predicate<TInput, ICollection<TInput>>): TInput;
1166
+ /**
1167
+ * The <i>sole</i> method returns the first item in the collection that passes <i>predicateFn</i>, but only if <i>predicateFn</i> matches exactly one item.
1168
+ * If no items matches or multiple items are found an error will be thrown.
1169
+ * @example
1170
+ * import { ListCollection } from "@daiso-tech/core";;
1171
+ *
1172
+ * const collection = new ListCollection([1, 2, 3, 4, 5]);
1173
+ * collection.sole(item => item === 4);
1174
+ * // 4
1175
+ * @example
1176
+ * import { ListCollection } from "@daiso-tech/core";;
1177
+ *
1178
+ * const collection = new ListCollection([1, 2, 3, 4, 4, 5]);
1179
+ * collection.sole(item => item === 4);
1180
+ * // error is thrown
1181
+ * @example
1182
+ * import { ListCollection } from "@daiso-tech/core";;
1183
+ *
1184
+ * const collection = new ListCollection([1, 2, 3, 5]);
1185
+ * collection.sole(item => item === 4);
1186
+ * // error is thrown
1187
+ * @throws {CollectionError} {@link CollectionError}
1188
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
1189
+ * @throws {ItemNotFoundCollectionError} {@link ItemNotFoundCollectionError}
1190
+ * @throws {MultipleItemsFoundCollectionError} {@link MultipleItemsFoundCollectionError}
1191
+ */
1192
+ sole<TOutput extends TInput>(predicateFn: Predicate<TInput, ICollection<TInput>, TOutput>): TOutput;
1193
+ /**
1194
+ * The <i>nth</i> method creates a new collection consisting of every n-th item.
1195
+ * @example
1196
+ * import { ListCollection } from "@daiso-tech/core";;
1197
+ *
1198
+ * const collection = new ListCollection(["a", "b", "c", "d", "e", "f"]).nth(4);
1199
+ * collection.toArray();
1200
+ * // ["a", "e"]
1201
+ */
1202
+ nth(step: number): ICollection<TInput>;
1203
+ /**
1204
+ * The <i>count</i> method returns the total number of items in the collection that passes <i>predicateFn</i>.
1205
+ * @example
1206
+ * import { ListCollection } from "@daiso-tech/core";;
1207
+ *
1208
+ * const collection = new ListCollection([1, 2, 3, 4, 5, 6]);
1209
+ * collection.count(value => value % 2 === 0);
1210
+ * // 3
1211
+ * @throws {CollectionError} {@link CollectionError}
1212
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
1213
+ */
1214
+ count(predicateFn: Predicate<TInput, ICollection<TInput>>): number;
1215
+ /**
1216
+ * The <i>size</i> returns the size of the collection.
1217
+ * @throws {CollectionError} {@link CollectionError}
1218
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
1219
+ */
1220
+ size(): number;
1221
+ /**
1222
+ * The <i>isEmpty</i> returns true if the collection is empty.
1223
+ * @throws {CollectionError} {@link CollectionError}
1224
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
1225
+ */
1226
+ isEmpty(): boolean;
1227
+ /**
1228
+ * The <i>isNotEmpty</i> returns true if the collection is not empty.
1229
+ * @throws {CollectionError} {@link CollectionError}
1230
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
1231
+ */
1232
+ isNotEmpty(): boolean;
1233
+ /**
1234
+ * The <i>searchFirst</i> return the index of the first item that matches <i>predicateFn</i>.
1235
+ * @example
1236
+ * import { ListCollection } from "@daiso-tech/core";;
1237
+ *
1238
+ * const collection = new ListCollection(["a", "b", "b", "c"]);
1239
+ * collection.searchFirst(item => item === "b");
1240
+ * // 1
1241
+ * @throws {CollectionError} {@link CollectionError}
1242
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
1243
+ */
1244
+ searchFirst(predicateFn: Predicate<TInput, ICollection<TInput>>): number;
1245
+ /**
1246
+ * The <i>searchLast</i> return the index of the last item that matches <i>predicateFn</i>.
1247
+ * @example
1248
+ * import { ListCollection } from "@daiso-tech/core";;
1249
+ *
1250
+ * const collection = new ListCollection(["a", "b", "b", "c"]);
1251
+ * collection.searchLast(item => item === "b");
1252
+ * // 2
1253
+ * @throws {CollectionError} {@link CollectionError}
1254
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
1255
+ */
1256
+ searchLast(predicateFn: Predicate<TInput, ICollection<TInput>>): number;
1257
+ /**
1258
+ * The <i>forEach</i> method iterates through all items in the collection.
1259
+ * @throws {CollectionError} {@link CollectionError}
1260
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
1261
+ */
1262
+ forEach(callback: ForEach<TInput, ICollection<TInput>>): void;
1263
+ /**
1264
+ * The <i>toArray</i> method converts the collection to a new array.
1265
+ * @throws {CollectionError} {@link CollectionError}
1266
+ * @throws {UnexpectedCollectionError} {@link UnexpectedCollectionError}
1267
+ */
1268
+ toArray(): TInput[];
1269
+ };