@daiso-tech/core 0.33.0 → 0.35.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 (365) hide show
  1. package/README.md +66 -45
  2. package/dist/async/_module-exports.d.ts +1 -1
  3. package/dist/async/_module-exports.js +1 -1
  4. package/dist/async/_module-exports.js.map +1 -1
  5. package/dist/async/async.errors.d.ts +27 -19
  6. package/dist/async/async.errors.js +33 -20
  7. package/dist/async/async.errors.js.map +1 -1
  8. package/dist/async/backof-policies/_shared.d.ts +6 -2
  9. package/dist/async/backof-policies/_shared.js +1 -0
  10. package/dist/async/backof-policies/_shared.js.map +1 -1
  11. package/dist/async/backof-policies/constant-backoff-policy/constant-backoff-policy.d.ts +2 -2
  12. package/dist/async/backof-policies/constant-backoff-policy/constant-backoff-policy.js +1 -1
  13. package/dist/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.d.ts +2 -2
  14. package/dist/async/backof-policies/exponential-backoff-policy/exponential-backoff-policy.js +1 -1
  15. package/dist/async/backof-policies/linear-backoff-policy/linear-backoff-policy.d.ts +2 -2
  16. package/dist/async/backof-policies/linear-backoff-policy/linear-backoff-policy.js +1 -1
  17. package/dist/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.d.ts +2 -2
  18. package/dist/async/backof-policies/polynomial-backoff-policy/polynomial-backoff-policy.js +1 -1
  19. package/dist/async/middlewares/_module.d.ts +8 -0
  20. package/dist/async/middlewares/_module.js +9 -0
  21. package/dist/async/middlewares/_module.js.map +1 -0
  22. package/dist/async/middlewares/_shared.d.ts +10 -0
  23. package/dist/async/middlewares/_shared.js +5 -0
  24. package/dist/async/middlewares/_shared.js.map +1 -0
  25. package/dist/async/middlewares/bulkhead/_module.d.ts +1 -0
  26. package/dist/async/middlewares/bulkhead/_module.js +2 -0
  27. package/dist/async/middlewares/bulkhead/_module.js.map +1 -0
  28. package/dist/async/middlewares/bulkhead/bulkhead.middleware.d.ts +80 -0
  29. package/dist/async/middlewares/bulkhead/bulkhead.middleware.js +46 -0
  30. package/dist/async/middlewares/bulkhead/bulkhead.middleware.js.map +1 -0
  31. package/dist/async/middlewares/dynamic/_module.d.ts +1 -0
  32. package/dist/async/middlewares/dynamic/_module.js +2 -0
  33. package/dist/async/middlewares/dynamic/_module.js.map +1 -0
  34. package/dist/async/middlewares/dynamic/dynamic.middleware.d.ts +34 -0
  35. package/dist/async/middlewares/dynamic/dynamic.middleware.js +36 -0
  36. package/dist/async/middlewares/dynamic/dynamic.middleware.js.map +1 -0
  37. package/dist/async/middlewares/fallback/_module.d.ts +1 -0
  38. package/dist/async/middlewares/fallback/_module.js +2 -0
  39. package/dist/async/middlewares/fallback/_module.js.map +1 -0
  40. package/dist/async/middlewares/fallback/fallback.middleware.d.ts +78 -0
  41. package/dist/async/middlewares/fallback/fallback.middleware.js +52 -0
  42. package/dist/async/middlewares/fallback/fallback.middleware.js.map +1 -0
  43. package/dist/async/middlewares/hedging/_module.d.ts +2 -0
  44. package/dist/async/middlewares/hedging/_module.js +3 -0
  45. package/dist/async/middlewares/hedging/_module.js.map +1 -0
  46. package/dist/async/middlewares/hedging/_shared.d.ts +93 -0
  47. package/dist/async/middlewares/hedging/_shared.js +5 -0
  48. package/dist/async/middlewares/hedging/_shared.js.map +1 -0
  49. package/dist/async/middlewares/hedging/concurrent-hedging/_module.d.ts +1 -0
  50. package/dist/async/middlewares/hedging/concurrent-hedging/_module.js +2 -0
  51. package/dist/async/middlewares/hedging/concurrent-hedging/_module.js.map +1 -0
  52. package/dist/async/middlewares/hedging/concurrent-hedging/concurrent-hedging.middleware.d.ts +51 -0
  53. package/dist/async/middlewares/hedging/concurrent-hedging/concurrent-hedging.middleware.js +138 -0
  54. package/dist/async/middlewares/hedging/concurrent-hedging/concurrent-hedging.middleware.js.map +1 -0
  55. package/dist/async/middlewares/hedging/sequential-hedging/_module.d.ts +1 -0
  56. package/dist/async/middlewares/hedging/sequential-hedging/_module.js +2 -0
  57. package/dist/async/middlewares/hedging/sequential-hedging/_module.js.map +1 -0
  58. package/dist/async/middlewares/hedging/sequential-hedging/sequential-hedging.middleware.d.ts +51 -0
  59. package/dist/async/middlewares/hedging/sequential-hedging/sequential-hedging.middleware.js +104 -0
  60. package/dist/async/middlewares/hedging/sequential-hedging/sequential-hedging.middleware.js.map +1 -0
  61. package/dist/async/middlewares/observe/_module.d.ts +1 -0
  62. package/dist/async/middlewares/observe/_module.js +2 -0
  63. package/dist/async/middlewares/observe/_module.js.map +1 -0
  64. package/dist/async/middlewares/observe/observe.middleware.d.ts +130 -0
  65. package/dist/async/middlewares/observe/observe.middleware.js +80 -0
  66. package/dist/async/middlewares/observe/observe.middleware.js.map +1 -0
  67. package/dist/async/middlewares/retry/_module.d.ts +1 -0
  68. package/dist/async/middlewares/retry/_module.js +2 -0
  69. package/dist/async/middlewares/retry/_module.js.map +1 -0
  70. package/dist/async/middlewares/retry/retry.middleware.d.ts +117 -0
  71. package/dist/async/middlewares/retry/retry.middleware.js +82 -0
  72. package/dist/async/middlewares/retry/retry.middleware.js.map +1 -0
  73. package/dist/async/middlewares/timeout/_module.d.ts +1 -0
  74. package/dist/async/middlewares/timeout/_module.js +2 -0
  75. package/dist/async/middlewares/timeout/_module.js.map +1 -0
  76. package/dist/async/middlewares/timeout/timeout.middleware.d.ts +83 -0
  77. package/dist/async/middlewares/timeout/timeout.middleware.js +60 -0
  78. package/dist/async/middlewares/timeout/timeout.middleware.js.map +1 -0
  79. package/dist/async/utilities/_module.d.ts +3 -4
  80. package/dist/async/utilities/_module.js +3 -4
  81. package/dist/async/utilities/_module.js.map +1 -1
  82. package/dist/async/utilities/abort-and-fail/_module.d.ts +1 -0
  83. package/dist/async/utilities/abort-and-fail/_module.js +2 -0
  84. package/dist/async/utilities/abort-and-fail/_module.js.map +1 -0
  85. package/dist/async/utilities/abort-and-fail/abort-and-fail.d.ts +7 -0
  86. package/dist/async/utilities/{abort → abort-and-fail}/abort-and-fail.js +6 -6
  87. package/dist/async/utilities/abort-and-fail/abort-and-fail.js.map +1 -0
  88. package/dist/async/utilities/lazy-promise/lazy-promise.d.ts +37 -194
  89. package/dist/async/utilities/lazy-promise/lazy-promise.js +62 -359
  90. package/dist/async/utilities/lazy-promise/lazy-promise.js.map +1 -1
  91. package/dist/async/utilities/promise-queue/_module.d.ts +1 -0
  92. package/dist/async/utilities/promise-queue/_module.js +2 -0
  93. package/dist/async/utilities/promise-queue/_module.js.map +1 -0
  94. package/dist/async/utilities/promise-queue/promise-queue.d.ts +32 -0
  95. package/dist/async/utilities/promise-queue/promise-queue.js +107 -0
  96. package/dist/async/utilities/promise-queue/promise-queue.js.map +1 -0
  97. package/dist/async/utilities/timeout-and-fail/_module.d.ts +1 -0
  98. package/dist/async/utilities/timeout-and-fail/_module.js +2 -0
  99. package/dist/async/utilities/timeout-and-fail/_module.js.map +1 -0
  100. package/dist/async/utilities/timeout-and-fail/timeout-and-fail.d.ts +7 -0
  101. package/dist/async/utilities/timeout-and-fail/timeout-and-fail.js +19 -0
  102. package/dist/async/utilities/timeout-and-fail/timeout-and-fail.js.map +1 -0
  103. package/dist/cache/contracts/cache-adapter.contract.d.ts +14 -14
  104. package/dist/cache/contracts/cache-factory.contract.d.ts +3 -3
  105. package/dist/cache/contracts/cache.contract.d.ts +73 -73
  106. package/dist/cache/contracts/cache.errors.d.ts +7 -7
  107. package/dist/cache/contracts/cache.errors.js +7 -7
  108. package/dist/cache/contracts/cache.events.d.ts +54 -58
  109. package/dist/cache/contracts/cache.events.js +6 -104
  110. package/dist/cache/contracts/cache.events.js.map +1 -1
  111. package/dist/cache/contracts/database-cache-adapter.contract.d.ts +16 -16
  112. package/dist/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.d.ts +3 -3
  113. package/dist/cache/implementations/adapters/libsql-cache-adapter/libsql-cache-adapter.js +2 -2
  114. package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.d.ts +3 -9
  115. package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js +3 -9
  116. package/dist/cache/implementations/adapters/memory-cache-adapter/memory-cache-adapter.js.map +1 -1
  117. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.d.ts +4 -4
  118. package/dist/cache/implementations/adapters/mongodb-cache-adapter/mongodb-cache-adapter.js +3 -3
  119. package/dist/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.d.ts +2 -2
  120. package/dist/cache/implementations/adapters/no-op-cache-adapter/no-op-cache-adapter.js +2 -2
  121. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.d.ts +3 -3
  122. package/dist/cache/implementations/adapters/redis-cache-adapter/redis-cache-adapter.js +2 -2
  123. package/dist/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.d.ts +3 -3
  124. package/dist/cache/implementations/adapters/sqlite-cache-adapter/sqlite-cache-adapter.js +2 -2
  125. package/dist/cache/implementations/derivables/cache/cache.d.ts +26 -27
  126. package/dist/cache/implementations/derivables/cache/cache.js +102 -91
  127. package/dist/cache/implementations/derivables/cache/cache.js.map +1 -1
  128. package/dist/cache/implementations/derivables/cache-factory/cache-factory.d.ts +5 -4
  129. package/dist/cache/implementations/derivables/cache-factory/cache-factory.js +2 -1
  130. package/dist/cache/implementations/derivables/cache-factory/cache-factory.js.map +1 -1
  131. package/dist/cache/implementations/test-utilities/cache-adapter.test-suite.d.ts +3 -3
  132. package/dist/cache/implementations/test-utilities/cache-adapter.test-suite.js +2 -2
  133. package/dist/cache/implementations/test-utilities/cache.test-suite.d.ts +3 -3
  134. package/dist/cache/implementations/test-utilities/cache.test-suite.js +140 -149
  135. package/dist/cache/implementations/test-utilities/cache.test-suite.js.map +1 -1
  136. package/dist/cache/implementations/test-utilities/database-cache-dapter.test-suite.d.ts +3 -3
  137. package/dist/cache/implementations/test-utilities/database-cache-dapter.test-suite.js +2 -2
  138. package/dist/collection/contracts/_shared/compartor.type.d.ts +1 -1
  139. package/dist/collection/contracts/_shared/cross-join-result.type.d.ts +1 -1
  140. package/dist/collection/contracts/_shared/ensure-map.type.d.ts +1 -1
  141. package/dist/collection/contracts/_shared/ensure-record.type.d.ts +1 -1
  142. package/dist/collection/contracts/_shared/foreach.type.d.ts +2 -2
  143. package/dist/collection/contracts/_shared/map.type.d.ts +2 -2
  144. package/dist/collection/contracts/_shared/modifier.type.d.ts +2 -2
  145. package/dist/collection/contracts/_shared/predicate.type.d.ts +7 -7
  146. package/dist/collection/contracts/_shared/reduce.type.d.ts +2 -2
  147. package/dist/collection/contracts/_shared/tap.type.d.ts +2 -2
  148. package/dist/collection/contracts/_shared/transform.type.d.ts +2 -2
  149. package/dist/collection/contracts/async-collection.contract.d.ts +109 -198
  150. package/dist/collection/contracts/collection.contract.d.ts +103 -103
  151. package/dist/collection/contracts/collection.errors.d.ts +11 -11
  152. package/dist/collection/contracts/collection.errors.js +11 -11
  153. package/dist/collection/implementations/_shared.d.ts +8 -8
  154. package/dist/collection/implementations/_shared.js +8 -8
  155. package/dist/collection/implementations/async-iterable-collection/_shared/_module.d.ts +0 -4
  156. package/dist/collection/implementations/async-iterable-collection/_shared/_module.js +0 -4
  157. package/dist/collection/implementations/async-iterable-collection/_shared/_module.js.map +1 -1
  158. package/dist/collection/implementations/async-iterable-collection/_shared/async-cross-join-iterable.js +21 -19
  159. package/dist/collection/implementations/async-iterable-collection/_shared/async-cross-join-iterable.js.map +1 -1
  160. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.d.ts +15 -19
  161. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js +15 -30
  162. package/dist/collection/implementations/async-iterable-collection/async-iterable-collection.js.map +1 -1
  163. package/dist/collection/implementations/iterable-collection/_shared/cross-join-iterable.d.ts +3 -3
  164. package/dist/collection/implementations/iterable-collection/_shared/cross-join-iterable.js +18 -20
  165. package/dist/collection/implementations/iterable-collection/_shared/cross-join-iterable.js.map +1 -1
  166. package/dist/collection/implementations/iterable-collection/iterable-collection.d.ts +11 -12
  167. package/dist/collection/implementations/iterable-collection/iterable-collection.js +11 -12
  168. package/dist/collection/implementations/iterable-collection/iterable-collection.js.map +1 -1
  169. package/dist/collection/implementations/list-collection/list-collection.d.ts +11 -11
  170. package/dist/collection/implementations/list-collection/list-collection.js +24 -30
  171. package/dist/collection/implementations/list-collection/list-collection.js.map +1 -1
  172. package/dist/event-bus/contracts/_module-exports.d.ts +0 -1
  173. package/dist/event-bus/contracts/_module-exports.js +0 -1
  174. package/dist/event-bus/contracts/_module-exports.js.map +1 -1
  175. package/dist/event-bus/contracts/event-bus-adapter.contract.d.ts +13 -8
  176. package/dist/event-bus/contracts/event-bus-factory.contract.d.ts +6 -7
  177. package/dist/event-bus/contracts/event-bus-factory.contract.js.map +1 -1
  178. package/dist/event-bus/contracts/event-bus.contract.d.ts +30 -41
  179. package/dist/event-bus/contracts/event-bus.errors.d.ts +8 -8
  180. package/dist/event-bus/contracts/event-bus.errors.js +8 -8
  181. package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.d.ts +3 -3
  182. package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js +3 -3
  183. package/dist/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.d.ts +2 -2
  184. package/dist/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.js +2 -2
  185. package/dist/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.d.ts +3 -3
  186. package/dist/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js +2 -2
  187. package/dist/event-bus/implementations/derivables/event-bus/event-bus.d.ts +15 -15
  188. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js +32 -32
  189. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js.map +1 -1
  190. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.d.ts +17 -10
  191. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js +13 -6
  192. package/dist/event-bus/implementations/derivables/event-bus-factory/event-bus-factory.js.map +1 -1
  193. package/dist/event-bus/implementations/test-utilities/event-bus-adapter.test-suite.d.ts +3 -5
  194. package/dist/event-bus/implementations/test-utilities/event-bus-adapter.test-suite.js +15 -22
  195. package/dist/event-bus/implementations/test-utilities/event-bus-adapter.test-suite.js.map +1 -1
  196. package/dist/event-bus/implementations/test-utilities/event-bus.test-suite.d.ts +3 -5
  197. package/dist/event-bus/implementations/test-utilities/event-bus.test-suite.js +189 -209
  198. package/dist/event-bus/implementations/test-utilities/event-bus.test-suite.js.map +1 -1
  199. package/dist/lock/contracts/database-lock-adapter.contract.d.ts +9 -9
  200. package/dist/lock/contracts/lock-adapter.contract.d.ts +7 -7
  201. package/dist/lock/contracts/lock-provider-factory.contract.d.ts +4 -4
  202. package/dist/lock/contracts/lock-provider.contract.d.ts +14 -14
  203. package/dist/lock/contracts/lock.contract.d.ts +22 -22
  204. package/dist/lock/contracts/lock.errors.d.ts +10 -10
  205. package/dist/lock/contracts/lock.errors.js +10 -10
  206. package/dist/lock/contracts/lock.events.d.ts +45 -54
  207. package/dist/lock/contracts/lock.events.js +9 -91
  208. package/dist/lock/contracts/lock.events.js.map +1 -1
  209. package/dist/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.d.ts +5 -5
  210. package/dist/lock/implementations/adapters/libsql-lock-adapter/libsql-lock-adapter.js +4 -4
  211. package/dist/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.d.ts +3 -3
  212. package/dist/lock/implementations/adapters/memory-lock-adapter/memory-lock-adapter.js +3 -3
  213. package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.d.ts +5 -5
  214. package/dist/lock/implementations/adapters/mongodb-lock-adapter/mongodb-lock-adapter.js +4 -4
  215. package/dist/lock/implementations/adapters/no-op-lock-adapter/no-op-lock-adapter.d.ts +2 -2
  216. package/dist/lock/implementations/adapters/no-op-lock-adapter/no-op-lock-adapter.js +2 -2
  217. package/dist/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.d.ts +3 -3
  218. package/dist/lock/implementations/adapters/redis-lock-adapter/redis-lock-adapter.js +3 -3
  219. package/dist/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.d.ts +5 -5
  220. package/dist/lock/implementations/adapters/sqlite-lock-adapter/sqlite-lock-adapter.js +4 -4
  221. package/dist/lock/implementations/derivables/lock-provider/lock-provider.d.ts +33 -33
  222. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js +30 -30
  223. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js.map +1 -1
  224. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.d.ts +2 -2
  225. package/dist/lock/implementations/derivables/lock-provider/lock-serde-transformer.js.map +1 -1
  226. package/dist/lock/implementations/derivables/lock-provider/lock.d.ts +3 -3
  227. package/dist/lock/implementations/derivables/lock-provider/lock.js +77 -58
  228. package/dist/lock/implementations/derivables/lock-provider/lock.js.map +1 -1
  229. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.d.ts +5 -4
  230. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js +2 -1
  231. package/dist/lock/implementations/derivables/lock-provider-factory/lock-provider-factory.js.map +1 -1
  232. package/dist/lock/implementations/test-utilities/database-lock-adapter.test-suite.d.ts +3 -3
  233. package/dist/lock/implementations/test-utilities/database-lock-adapter.test-suite.js +2 -2
  234. package/dist/lock/implementations/test-utilities/lock-adapter.test-suite.d.ts +3 -3
  235. package/dist/lock/implementations/test-utilities/lock-adapter.test-suite.js +2 -2
  236. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.d.ts +3 -3
  237. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js +214 -214
  238. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js.map +1 -1
  239. package/dist/serde/contracts/deserializer.contract.d.ts +2 -2
  240. package/dist/serde/contracts/flexible-serde-adapter.contract.d.ts +4 -4
  241. package/dist/serde/contracts/flexible-serde.contract.d.ts +8 -19
  242. package/dist/serde/contracts/serde.contract.d.ts +2 -2
  243. package/dist/serde/contracts/serde.errors.d.ts +4 -4
  244. package/dist/serde/contracts/serde.errors.js +4 -4
  245. package/dist/serde/contracts/serializable.contract.d.ts +2 -2
  246. package/dist/serde/contracts/serializer.contract.d.ts +2 -2
  247. package/dist/serde/implementations/adapters/no-op-serde-adapter/no-op-serde-adapter.d.ts +2 -2
  248. package/dist/serde/implementations/adapters/no-op-serde-adapter/no-op-serde-adapter.js +2 -2
  249. package/dist/serde/implementations/adapters/super-json-serde-adapter/super-json-serde-adapter.d.ts +1 -1
  250. package/dist/serde/implementations/adapters/super-json-serde-adapter/super-json-serde-adapter.js +1 -1
  251. package/dist/serde/implementations/derivables/serde.d.ts +4 -35
  252. package/dist/serde/implementations/derivables/serde.js +2 -47
  253. package/dist/serde/implementations/derivables/serde.js.map +1 -1
  254. package/dist/serde/implementations/test-utilities/flexible-serde-adapter.test-suite.d.ts +3 -3
  255. package/dist/serde/implementations/test-utilities/flexible-serde-adapter.test-suite.js +2 -2
  256. package/dist/serde/implementations/test-utilities/flexible-serde.test-suite.d.ts +3 -3
  257. package/dist/serde/implementations/test-utilities/flexible-serde.test-suite.js +2 -2
  258. package/dist/utilities/classes/_module.d.ts +1 -1
  259. package/dist/utilities/classes/_module.js +1 -1
  260. package/dist/utilities/classes/_module.js.map +1 -1
  261. package/dist/utilities/classes/hooks/_module.d.ts +3 -0
  262. package/dist/utilities/classes/hooks/_module.js +4 -0
  263. package/dist/utilities/classes/hooks/_module.js.map +1 -0
  264. package/dist/utilities/classes/hooks/async-hooks.d.ts +209 -0
  265. package/dist/utilities/classes/hooks/async-hooks.js +145 -0
  266. package/dist/utilities/classes/hooks/async-hooks.js.map +1 -0
  267. package/dist/utilities/classes/hooks/hooks.d.ts +139 -0
  268. package/dist/utilities/classes/hooks/hooks.js +116 -0
  269. package/dist/utilities/classes/hooks/hooks.js.map +1 -0
  270. package/dist/utilities/classes/hooks/types.d.ts +9 -0
  271. package/dist/utilities/classes/hooks/types.js +5 -0
  272. package/dist/utilities/classes/hooks/types.js.map +1 -0
  273. package/dist/utilities/classes/key-prefixer/key-prefixer.d.ts +3 -3
  274. package/dist/utilities/classes/key-prefixer/key-prefixer.js +4 -4
  275. package/dist/utilities/classes/key-prefixer/key-prefixer.js.map +1 -1
  276. package/dist/utilities/classes/time-span/time-span.d.ts +5 -5
  277. package/dist/utilities/classes/time-span/time-span.js +5 -5
  278. package/dist/utilities/contracts/_module.d.ts +0 -1
  279. package/dist/utilities/contracts/_module.js +0 -1
  280. package/dist/utilities/contracts/_module.js.map +1 -1
  281. package/dist/utilities/contracts/deinitizable.contract.d.ts +1 -1
  282. package/dist/utilities/contracts/initizable.contract.d.ts +1 -1
  283. package/dist/utilities/contracts/prunable.contract.d.ts +1 -1
  284. package/dist/utilities/contracts/serialized-error.contract.d.ts +1 -1
  285. package/dist/utilities/contracts/sqlite-database.contract.d.ts +2 -2
  286. package/dist/utilities/errors.d.ts +5 -5
  287. package/dist/utilities/errors.js +5 -5
  288. package/dist/utilities/functions/factory.js +3 -3
  289. package/dist/utilities/functions/factory.js.map +1 -1
  290. package/dist/utilities/functions/invokable.d.ts +9 -5
  291. package/dist/utilities/functions/invokable.js +12 -2
  292. package/dist/utilities/functions/invokable.js.map +1 -1
  293. package/dist/utilities/functions/lazy.d.ts +5 -0
  294. package/dist/utilities/functions/lazy.js +12 -3
  295. package/dist/utilities/functions/lazy.js.map +1 -1
  296. package/dist/utilities/types/async-iterable-value.type.d.ts +1 -1
  297. package/dist/utilities/types/at-least-one.type.d.ts +1 -1
  298. package/dist/utilities/types/factory.type.d.ts +8 -8
  299. package/dist/utilities/types/invokable.type.d.ts +3 -3
  300. package/dist/utilities/types/items.type.d.ts +1 -1
  301. package/dist/utilities/types/lazy.type.d.ts +5 -5
  302. package/dist/utilities/types/none-func.type.d.ts +1 -1
  303. package/dist/utilities/types/one-or-more.type.d.ts +1 -1
  304. package/dist/utilities/types/promiseable.type.d.ts +1 -1
  305. package/dist/utilities/types/result.type.d.ts +1 -1
  306. package/package.json +22 -2
  307. package/dist/async/async.events.d.ts +0 -105
  308. package/dist/async/async.events.js +0 -82
  309. package/dist/async/async.events.js.map +0 -1
  310. package/dist/async/utilities/abort/_module.d.ts +0 -2
  311. package/dist/async/utilities/abort/_module.js +0 -3
  312. package/dist/async/utilities/abort/_module.js.map +0 -1
  313. package/dist/async/utilities/abort/abort-and-fail.d.ts +0 -4
  314. package/dist/async/utilities/abort/abort-and-fail.js.map +0 -1
  315. package/dist/async/utilities/abort/abort.d.ts +0 -9
  316. package/dist/async/utilities/abort/abort.js +0 -18
  317. package/dist/async/utilities/abort/abort.js.map +0 -1
  318. package/dist/async/utilities/delay/_module.d.ts +0 -1
  319. package/dist/async/utilities/delay/_module.js +0 -2
  320. package/dist/async/utilities/delay/_module.js.map +0 -1
  321. package/dist/async/utilities/delay/delay.d.ts +0 -10
  322. package/dist/async/utilities/delay/delay.js +0 -34
  323. package/dist/async/utilities/delay/delay.js.map +0 -1
  324. package/dist/async/utilities/retry/_module.d.ts +0 -2
  325. package/dist/async/utilities/retry/_module.js +0 -3
  326. package/dist/async/utilities/retry/_module.js.map +0 -1
  327. package/dist/async/utilities/retry/retry-or-fail.d.ts +0 -29
  328. package/dist/async/utilities/retry/retry-or-fail.js +0 -39
  329. package/dist/async/utilities/retry/retry-or-fail.js.map +0 -1
  330. package/dist/async/utilities/retry/retry.d.ts +0 -10
  331. package/dist/async/utilities/retry/retry.js +0 -21
  332. package/dist/async/utilities/retry/retry.js.map +0 -1
  333. package/dist/async/utilities/timeout/_module.d.ts +0 -2
  334. package/dist/async/utilities/timeout/_module.js +0 -3
  335. package/dist/async/utilities/timeout/_module.js.map +0 -1
  336. package/dist/async/utilities/timeout/timeout-and-fail.d.ts +0 -5
  337. package/dist/async/utilities/timeout/timeout-and-fail.js +0 -28
  338. package/dist/async/utilities/timeout/timeout-and-fail.js.map +0 -1
  339. package/dist/async/utilities/timeout/timeout.d.ts +0 -10
  340. package/dist/async/utilities/timeout/timeout.js +0 -21
  341. package/dist/async/utilities/timeout/timeout.js.map +0 -1
  342. package/dist/collection/implementations/async-iterable-collection/_shared/async-delay-iterable.d.ts +0 -13
  343. package/dist/collection/implementations/async-iterable-collection/_shared/async-delay-iterable.js +0 -30
  344. package/dist/collection/implementations/async-iterable-collection/_shared/async-delay-iterable.js.map +0 -1
  345. package/dist/collection/implementations/async-iterable-collection/_shared/async-retry-iterable.d.ts +0 -13
  346. package/dist/collection/implementations/async-iterable-collection/_shared/async-retry-iterable.js +0 -36
  347. package/dist/collection/implementations/async-iterable-collection/_shared/async-retry-iterable.js.map +0 -1
  348. package/dist/collection/implementations/async-iterable-collection/_shared/async-take-until-abort-iterable.d.ts +0 -9
  349. package/dist/collection/implementations/async-iterable-collection/_shared/async-take-until-abort-iterable.js +0 -39
  350. package/dist/collection/implementations/async-iterable-collection/_shared/async-take-until-abort-iterable.js.map +0 -1
  351. package/dist/collection/implementations/async-iterable-collection/_shared/async-take-until-timeout-iterable.d.ts +0 -13
  352. package/dist/collection/implementations/async-iterable-collection/_shared/async-take-until-timeout-iterable.js +0 -52
  353. package/dist/collection/implementations/async-iterable-collection/_shared/async-take-until-timeout-iterable.js.map +0 -1
  354. package/dist/event-bus/contracts/_shared.d.ts +0 -12
  355. package/dist/event-bus/contracts/_shared.js +0 -15
  356. package/dist/event-bus/contracts/_shared.js.map +0 -1
  357. package/dist/utilities/classes/sync-event-bus/_module.d.ts +0 -1
  358. package/dist/utilities/classes/sync-event-bus/_module.js +0 -2
  359. package/dist/utilities/classes/sync-event-bus/_module.js.map +0 -1
  360. package/dist/utilities/classes/sync-event-bus/sync-event-bus.d.ts +0 -16
  361. package/dist/utilities/classes/sync-event-bus/sync-event-bus.js +0 -53
  362. package/dist/utilities/classes/sync-event-bus/sync-event-bus.js.map +0 -1
  363. package/dist/utilities/contracts/sync-event-bus-listenable.d.ts +0 -13
  364. package/dist/utilities/contracts/sync-event-bus-listenable.js +0 -5
  365. package/dist/utilities/contracts/sync-event-bus-listenable.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"event-bus.test-suite.js","sourceRoot":"","sources":["../../../../src/event-bus/implementations/test-utilities/event-bus.test-suite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-bus.test-suite.js","sourceRoot":"","sources":["../../../../src/event-bus/implementations/test-utilities/event-bus.test-suite.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  */
4
4
  /**
5
5
  *
6
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
6
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
7
7
  * @group Contracts
8
8
  */
9
9
  export type ILockData = {
@@ -11,33 +11,33 @@ export type ILockData = {
11
11
  expiration: Date | null;
12
12
  };
13
13
  /**
14
- * The <i>ILockAdapter</i> contract defines a way for managing locks independent of data storage.
15
- * This contract is not meant to be used directly, instead you should use <i>{@link ILockProvider}</i> contract.
14
+ * The `ILockAdapter` contract defines a way for managing locks independent of data storage.
15
+ * This contract is not meant to be used directly, instead you should use {@link ILockProvider | `ILockProvider`} contract.
16
16
  *
17
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
17
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
18
18
  * @group Contracts
19
19
  */
20
20
  export type IDatabaseLockAdapter = {
21
21
  /**
22
- * The <i>insert</i> method will create a lock if one does not already exist.
22
+ * The `insert` method will create a lock if one does not already exist.
23
23
  */
24
24
  insert(key: string, owner: string, expiration: Date | null): PromiseLike<void>;
25
25
  /**
26
- * The <i>update</i> method will update a lock if it has expired, matches the given <i>key</i> and matches the given <i>owner</i>.
26
+ * The `update` method will update a lock if it has expired, matches the given `key` and matches the given `owner`.
27
27
  * Returns number of updated rows or documents.
28
28
  */
29
29
  update(key: string, owner: string, expiration: Date | null): PromiseLike<number>;
30
30
  /**
31
- * The <i>remove</i> method will remove a lock if it matches the given <i>key</i> and matches the given <i>owner</i>.
31
+ * The `remove` method will remove a lock if it matches the given `key` and matches the given `owner`.
32
32
  */
33
33
  remove(key: string, owner: string | null): PromiseLike<void>;
34
34
  /**
35
- * The <i>refresh</i> method will upadte expiration of lock if it matches the given <i>key</i> and matches the given <i>owner</i>.
35
+ * The `refresh` method will upadte expiration of lock if it matches the given `key` and matches the given `owner`.
36
36
  * Returns number of updated rows or documents.
37
37
  */
38
38
  refresh(key: string, owner: string, expiration: Date): PromiseLike<number>;
39
39
  /**
40
- * The <i>find</i> method will return a lock by the given <i>key</i>.
40
+ * The `find` method will return a lock by the given `key`.
41
41
  */
42
42
  find(key: string): PromiseLike<ILockData | null>;
43
43
  };
@@ -3,29 +3,29 @@
3
3
  */
4
4
  import type { TimeSpan } from "../../utilities/_module-exports.js";
5
5
  /**
6
- * The <i>ILockAdapter</i> contract defines a way for managing locks independent of the underlying technology.
7
- * This contract is not meant to be used directly, instead you should use <i>{@link ILockProvider}</i> contract.
6
+ * The `ILockAdapter` contract defines a way for managing locks independent of the underlying technology.
7
+ * This contract is not meant to be used directly, instead you should use {@link ILockProvider | `ILockProvider`} contract.
8
8
  *
9
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
9
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
10
10
  * @group Contracts
11
11
  */
12
12
  export type ILockAdapter = {
13
13
  /**
14
- * The <i>acquire</i> method acquires a lock only if the lock is not already acquired.
14
+ * The `acquire` method acquires a lock only if the lock is not already acquired.
15
15
  * Returns true if not already acquired othewise false is returned.
16
16
  */
17
17
  acquire(key: string, owner: string, ttl: TimeSpan | null): PromiseLike<boolean>;
18
18
  /**
19
- * The <i>release</i> method releases a lock if the owner matches.
19
+ * The `release` method releases a lock if the owner matches.
20
20
  * Returns true if released otherwise false is returned.
21
21
  */
22
22
  release(key: string, owner: string): PromiseLike<boolean>;
23
23
  /**
24
- * The <i>forceRelease</i> method releases a lock regardless of the owner.
24
+ * The `forceRelease` method releases a lock regardless of the owner.
25
25
  */
26
26
  forceRelease(key: string): PromiseLike<void>;
27
27
  /**
28
- * The <i>refresh</i> method will upadte ttl of lock if it matches the given <i>key</i> and matches the given <i>owner</i>.
28
+ * The `refresh` method will upadte ttl of lock if it matches the given `key` and matches the given `owner`.
29
29
  * Returns true if the update occured otherwise false is returned.
30
30
  */
31
31
  refresh(key: string, owner: string, ttl: TimeSpan): PromiseLike<boolean>;
@@ -3,15 +3,15 @@
3
3
  */
4
4
  import type { ILockProvider } from "../../lock/contracts/lock-provider.contract.js";
5
5
  /**
6
- * The <i>ILockProviderFactory</i> contract makes it easy to configure and switch between different <i>{@link ILockProvider}</i> dynamically.
6
+ * The `ILockProviderFactory` contract makes it easy to configure and switch between different {@link ILockProvider | `ILockProvider`} dynamically.
7
7
  *
8
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
8
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
9
9
  * @group Contracts
10
10
  */
11
11
  export type ILockProviderFactory<TAdapters extends string = string> = {
12
12
  /**
13
- * The <i>use</i> method will throw an error if you provide it unregisted adapter.
14
- * If no default adapter is defined an error will be thrown by <i>use</i> method.
13
+ * The `use` method will throw an error if you provide it unregisted adapter.
14
+ * If no default adapter is defined an error will be thrown by `use` method.
15
15
  * @throws {UnregisteredAdapterError} {@link UnregisteredAdapterError}
16
16
  * @throws {DefaultAdapterNotDefinedError} {@link DefaultAdapterNotDefinedError}
17
17
  */
@@ -4,22 +4,22 @@
4
4
  import type { OneOrMore, TimeSpan } from "../../utilities/_module-exports.js";
5
5
  import type { ILock } from "../../lock/contracts/lock.contract.js";
6
6
  import type { IEventListenable } from "../../event-bus/contracts/_module-exports.js";
7
- import type { LockEvents } from "../../lock/contracts/lock.events.js";
7
+ import type { LockEventMap } from "../../lock/contracts/lock.events.js";
8
8
  /**
9
- * The <i>ILockListenable</i> contract defines a way for listening <i>{@link ILock}</i> operations.
9
+ * The `ILockListenable` contract defines a way for listening {@link ILock | `ILock`} operations.
10
10
  *
11
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
11
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
12
12
  * @group Contracts
13
13
  */
14
- export type ILockListenable = IEventListenable<LockEvents>;
14
+ export type ILockListenable = IEventListenable<LockEventMap>;
15
15
  /**
16
16
  *
17
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
17
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
18
18
  * @group Contracts
19
19
  */
20
20
  export type LockProviderCreateSettings = {
21
21
  /**
22
- * You can also provide a <i>settings.ttl</i> value using. If not specified it defaults to null, meaning no TTL is applied.
22
+ * You can also provide a `settings.ttl` value using. If not specified it defaults to null, meaning no TTL is applied.
23
23
  */
24
24
  ttl?: TimeSpan | null;
25
25
  /**
@@ -29,24 +29,24 @@ export type LockProviderCreateSettings = {
29
29
  };
30
30
  /**
31
31
  *
32
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
32
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
33
33
  * @group Contracts
34
34
  */
35
35
  export type ILockProviderBase = {
36
36
  /**
37
- * The <i>create</i> method is used to create an instance of <i>{@link ILock}</i>.
37
+ * The `create` method is used to create an instance of {@link ILock | `ILock`}.
38
38
  *
39
- * @param key - can be a string or an <i>Iterable</i> of strings.
40
- * If it's an <i>Iterable</i>, it will be joined into a single string.
41
- * Think of an <i>Iterable</i> as representing a path.
39
+ * @param key - can be a string or an `Iterable` of strings.
40
+ * If it's an `Iterable`, it will be joined into a single string.
41
+ * Think of an `Iterable` as representing a path.
42
42
  */
43
43
  create(key: OneOrMore<string>, settings?: LockProviderCreateSettings): ILock;
44
44
  };
45
45
  /**
46
- * The <i>ILockProvider</i> contract defines a way for managing locks independent of the underlying technology.
47
- * It commes with more convient methods compared to <i>ILockAdapter</i>.
46
+ * The `ILockProvider` contract defines a way for managing locks independent of the underlying technology.
47
+ * It commes with more convient methods compared to `ILockAdapter`.
48
48
  *
49
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
49
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
50
50
  * @group Contracts
51
51
  */
52
52
  export type ILockProvider = ILockListenable & ILockProviderBase;
@@ -6,7 +6,7 @@ import type { LazyPromise } from "../../async/_module-exports.js";
6
6
  import type { KeyAlreadyAcquiredLockError } from "../../lock/contracts/lock.errors.js";
7
7
  /**
8
8
  *
9
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
9
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
10
10
  * @group Contracts
11
11
  */
12
12
  export type AquireBlockingSettings = {
@@ -15,38 +15,38 @@ export type AquireBlockingSettings = {
15
15
  };
16
16
  /**
17
17
  *
18
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
18
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
19
19
  * @group Contracts
20
20
  */
21
21
  export type ILock = {
22
22
  /**
23
- * The <i>run</i> method wraps an <i>{@link Invokable}</i> or <i>{@link LazyPromise}</i> with the <i>acquire</i> and <i>release</i> method.
23
+ * The `run` method wraps an {@link Invokable | `Invokable`} or {@link LazyPromise| `LazyPromise`} with the `acquire` and `release` method.
24
24
  * @throws {UnableToAquireLockError} {@link UnableToAquireLockError}
25
25
  * @throws {UnableToReleaseLockError} {@link UnableToReleaseLockError}
26
26
  */
27
27
  run<TValue = void>(asyncFn: AsyncLazy<TValue>): LazyPromise<Result<TValue, KeyAlreadyAcquiredLockError>>;
28
28
  /**
29
- * The <i>runOrFail</i> method wraps an <i>{@link Invokable}</i> or <i>{@link LazyPromise}</i> with the <i>acquireOrFail</i> and <i>release</i> method.
29
+ * The `runOrFail` method wraps an {@link Invokable | `Invokable`} or {@link LazyPromise| `LazyPromise`} with the `acquireOrFail` and `release` method.
30
30
  * @throws {UnableToAquireLockError} {@link UnableToAquireLockError}
31
31
  * @throws {UnableToReleaseLockError} {@link UnableToReleaseLockError}
32
32
  * @throws {KeyAlreadyAcquiredLockError} {@link KeyAlreadyAcquiredLockError}
33
33
  */
34
34
  runOrFail<TValue = void>(asyncFn: AsyncLazy<TValue>): LazyPromise<TValue>;
35
35
  /**
36
- * The <i>runBlocking</i> method wraps an <i>{@link Invokable}</i> or <i>{@link LazyPromise}</i> with the <i>acquireBlocking</i> and <i>release</i> method.
36
+ * The `runBlocking` method wraps an {@link Invokable | `Invokable`} or {@link LazyPromise| `LazyPromise`} with the `acquireBlocking` and `release` method.
37
37
  * @throws {UnableToAquireLockError} {@link UnableToAquireLockError}
38
38
  * @throws {UnableToReleaseLockError} {@link UnableToReleaseLockError}
39
39
  */
40
40
  runBlocking<TValue = void>(asyncFn: AsyncLazy<TValue>, settings?: AquireBlockingSettings): LazyPromise<Result<TValue, KeyAlreadyAcquiredLockError>>;
41
41
  /**
42
- * The <i>runBlockingOrFail</i> method wraps an <i>{@link Invokable}</i> or <i>{@link LazyPromise}</i> with the <i>acquireBlockingOrFail</i> and <i>release</i> method.
42
+ * The `runBlockingOrFail` method wraps an {@link Invokable | `Invokable`} or {@link LazyPromise| `LazyPromise`} with the `acquireBlockingOrFail` and `release` method.
43
43
  * @throws {UnableToAquireLockError} {@link UnableToAquireLockError}
44
44
  * @throws {UnableToReleaseLockError} {@link UnableToReleaseLockError}
45
45
  * @throws {KeyAlreadyAcquiredLockError} {@link KeyAlreadyAcquiredLockError}
46
46
  */
47
47
  runBlockingOrFail<TValue = void>(asyncFn: AsyncLazy<TValue>, settings?: AquireBlockingSettings): LazyPromise<TValue>;
48
48
  /**
49
- * The <i>acquire</i> method acquires a lock only if the lock is not already acquired.
49
+ * The `acquire` method acquires a lock only if the lock is not already acquired.
50
50
  *
51
51
  * @returns true if the lock is already acquired otherwise false is returned.
52
52
  *
@@ -54,8 +54,8 @@ export type ILock = {
54
54
  */
55
55
  acquire(): LazyPromise<boolean>;
56
56
  /**
57
- * The <i>acquireBlocking</i> method acquires a lock only if the lock is not already acquired.
58
- * If the lock is acquired, it retries every <i>settings.interval</i> until <i>settings.time</i> is reached.
57
+ * The `acquireBlocking` method acquires a lock only if the lock is not already acquired.
58
+ * If the lock is acquired, it retries every `settings.interval` until `settings.time` is reached.
59
59
  *
60
60
  * @returns true if the lock is already acquired otherwise false is returned.
61
61
  *
@@ -63,23 +63,23 @@ export type ILock = {
63
63
  */
64
64
  acquireBlocking(settings?: AquireBlockingSettings): LazyPromise<boolean>;
65
65
  /**
66
- * The <i>acquireBlockingOrFail</i> method acquires a lock only if the lock is not already acquired.
67
- * If the lock is acquired, it retries every <i>settings.interval</i> until <i>settings.time</i> is reached.
68
- * Throws an error if not lock cannot be acquired after the given <i>settings.time</i>.
66
+ * The `acquireBlockingOrFail` method acquires a lock only if the lock is not already acquired.
67
+ * If the lock is acquired, it retries every `settings.interval` until `settings.time` is reached.
68
+ * Throws an error if not lock cannot be acquired after the given `settings.time`.
69
69
  *
70
70
  * @throws {UnableToAquireLockError} {@link UnableToAquireLockError}
71
71
  * @throws {KeyAlreadyAcquiredLockError} {@link KeyAlreadyAcquiredLockError}
72
72
  */
73
73
  acquireBlockingOrFail(settings?: AquireBlockingSettings): LazyPromise<void>;
74
74
  /**
75
- * The <i>acquireOrFail</i> method acquires a lock only if the lock is not already acquired.
75
+ * The `acquireOrFail` method acquires a lock only if the lock is not already acquired.
76
76
  * Throws an error if already acquired.
77
77
  * @throws {UnableToAquireLockError} {@link UnableToAquireLockError}
78
78
  * @throws {KeyAlreadyAcquiredLockError} {@link KeyAlreadyAcquiredLockError}
79
79
  */
80
80
  acquireOrFail(): LazyPromise<void>;
81
81
  /**
82
- * The <i>release</i> method releases a lock if owned by the same owner.
82
+ * The `release` method releases a lock if owned by the same owner.
83
83
  *
84
84
  * @returns true if the lock is released otherwise false is returned.
85
85
  *
@@ -87,45 +87,45 @@ export type ILock = {
87
87
  */
88
88
  release(): LazyPromise<boolean>;
89
89
  /**
90
- * The <i>releaseOrFail</i> method releases a lock if owned by the same owner.
90
+ * The `releaseOrFail` method releases a lock if owned by the same owner.
91
91
  * Throws an error if a different owner attempts to release the lock.
92
92
  * @throws {UnableToReleaseLockError} {@link UnableToReleaseLockError}
93
93
  * @throws {UnownedReleaseLockError} {@link UnownedReleaseLockError}
94
94
  */
95
95
  releaseOrFail(): LazyPromise<void>;
96
96
  /**
97
- * The <i>forceRelease</i> method releases a lock regardless of the owner.
97
+ * The `forceRelease` method releases a lock regardless of the owner.
98
98
  * @throws {UnableToReleaseLockError} {@link UnableToReleaseLockError}
99
99
  */
100
100
  forceRelease(): LazyPromise<void>;
101
101
  /**
102
- * The <i>isExpired</i> method returns true if the expired otherwise false is returned.
102
+ * The `isExpired` method returns true if the expired otherwise false is returned.
103
103
  */
104
104
  isExpired(): LazyPromise<boolean>;
105
105
  /**
106
- * The <i>isLocked</i> method returns true if the locked otherwise false is returned.
106
+ * The `isLocked` method returns true if the locked otherwise false is returned.
107
107
  */
108
108
  isLocked(): LazyPromise<boolean>;
109
109
  /**
110
- * The <i>refresh</i> method updates the TTL of the lock if owned by the same owner.
110
+ * The `refresh` method updates the TTL of the lock if owned by the same owner.
111
111
  *
112
112
  * @returns true if the lock is refreshed occurs otherwise false is returned.
113
113
  */
114
114
  refresh(ttl?: TimeSpan): LazyPromise<boolean>;
115
115
  /**
116
- * The <i>refreshOrFail</i> method updates the TTL of the lock if owned by the same owner.
116
+ * The `refreshOrFail` method updates the TTL of the lock if owned by the same owner.
117
117
  * Throws an error if a different owner attempts to refresh the lock.
118
118
  * @throws {UnownedRefreshLockError} {@link UnownedRefreshLockError}
119
119
  */
120
120
  refreshOrFail(ttl?: TimeSpan): LazyPromise<void>;
121
121
  /**
122
- * The <i>getRemainingTime</i> return the reaming time as <i>{@link TimeSpan}</i>.
122
+ * The `getRemainingTime` return the reaming time as {@link TimeSpan | `TimeSpan`}.
123
123
  *
124
124
  * @returns null if the key doesnt exist, key has no expiration and key has expired.
125
125
  */
126
126
  getRemainingTime(): LazyPromise<TimeSpan | null>;
127
127
  /**
128
- * The <i>getOwner</i> method return the current owner.
128
+ * The `getOwner` method return the current owner.
129
129
  */
130
130
  getOwner(): LazyPromise<string>;
131
131
  };
@@ -5,7 +5,7 @@ import { type ISerializedError, type OneOrMore } from "../../utilities/_module-e
5
5
  import type { IFlexibleSerde, ISerializable } from "../../serde/contracts/_module-exports.js";
6
6
  /**
7
7
  *
8
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
8
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
9
9
  * @group Errors
10
10
  */
11
11
  export declare class LockError extends Error implements ISerializable<ISerializedError> {
@@ -15,7 +15,7 @@ export declare class LockError extends Error implements ISerializable<ISerialize
15
15
  }
16
16
  /**
17
17
  *
18
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
18
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
19
19
  * @group Errors
20
20
  */
21
21
  export declare class UnexpectedLockError extends LockError implements ISerializable<ISerializedError> {
@@ -26,7 +26,7 @@ export declare class UnexpectedLockError extends LockError implements ISerializa
26
26
  /**
27
27
  * The error is thrown when an unexpected error occurs while acquiring a lock.
28
28
  *
29
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
29
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
30
30
  * @group Errors
31
31
  */
32
32
  export declare class UnableToAquireLockError extends UnexpectedLockError implements ISerializable<ISerializedError> {
@@ -37,7 +37,7 @@ export declare class UnableToAquireLockError extends UnexpectedLockError impleme
37
37
  /**
38
38
  * The error is thrown when an unexpected error occurs while releasing a lock.
39
39
  *
40
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
40
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
41
41
  * @group Errors
42
42
  */
43
43
  export declare class UnableToReleaseLockError extends UnexpectedLockError implements ISerializable<ISerializedError> {
@@ -48,7 +48,7 @@ export declare class UnableToReleaseLockError extends UnexpectedLockError implem
48
48
  /**
49
49
  * The error is thrown when trying to acquire a lock that is owned by a different owner.
50
50
  *
51
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
51
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
52
52
  * @group Errors
53
53
  */
54
54
  export declare class KeyAlreadyAcquiredLockError extends LockError implements ISerializable<ISerializedError> {
@@ -59,7 +59,7 @@ export declare class KeyAlreadyAcquiredLockError extends LockError implements IS
59
59
  /**
60
60
  * The error is thrown when trying to release a lock that is owned by a different owner.
61
61
  *
62
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
62
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
63
63
  * @group Errors
64
64
  */
65
65
  export declare class UnownedReleaseLockError extends LockError implements ISerializable<ISerializedError> {
@@ -70,7 +70,7 @@ export declare class UnownedReleaseLockError extends LockError implements ISeria
70
70
  /**
71
71
  * The error is thrown when trying to referesh a lock that is owned by a different owner.
72
72
  *
73
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
73
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
74
74
  * @group Errors
75
75
  */
76
76
  export declare class UnownedRefreshLockError extends LockError implements ISerializable<ISerializedError> {
@@ -80,7 +80,7 @@ export declare class UnownedRefreshLockError extends LockError implements ISeria
80
80
  }
81
81
  /**
82
82
  *
83
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
83
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
84
84
  * @group Errors
85
85
  */
86
86
  export declare const LOCK_ERRORS: {
@@ -92,9 +92,9 @@ export declare const LOCK_ERRORS: {
92
92
  readonly UnownedRelease: typeof UnownedReleaseLockError;
93
93
  };
94
94
  /**
95
- * The <i>registerLockErrorsToSerde</i> function registers all <i>{@link ILock}</i> related errors with <i>IFlexibleSerde</i>, ensuring they will properly be serialized and deserialized.
95
+ * The `registerLockErrorsToSerde` function registers all {@link ILock | `ILock`} related errors with `IFlexibleSerde`, ensuring they will properly be serialized and deserialized.
96
96
  *
97
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
97
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
98
98
  * @group Errors
99
99
  */
100
100
  export declare function registerLockErrorsToSerde(serde: OneOrMore<IFlexibleSerde>): void;
@@ -4,7 +4,7 @@
4
4
  import { CORE, resolveOneOrMore, } from "../../utilities/_module-exports.js";
5
5
  /**
6
6
  *
7
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
7
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
8
8
  * @group Errors
9
9
  */
10
10
  export class LockError extends Error {
@@ -24,7 +24,7 @@ export class LockError extends Error {
24
24
  }
25
25
  /**
26
26
  *
27
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
27
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
28
28
  * @group Errors
29
29
  */
30
30
  export class UnexpectedLockError extends LockError {
@@ -45,7 +45,7 @@ export class UnexpectedLockError extends LockError {
45
45
  /**
46
46
  * The error is thrown when an unexpected error occurs while acquiring a lock.
47
47
  *
48
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
48
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
49
49
  * @group Errors
50
50
  */
51
51
  export class UnableToAquireLockError extends UnexpectedLockError {
@@ -66,7 +66,7 @@ export class UnableToAquireLockError extends UnexpectedLockError {
66
66
  /**
67
67
  * The error is thrown when an unexpected error occurs while releasing a lock.
68
68
  *
69
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
69
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
70
70
  * @group Errors
71
71
  */
72
72
  export class UnableToReleaseLockError extends UnexpectedLockError {
@@ -87,7 +87,7 @@ export class UnableToReleaseLockError extends UnexpectedLockError {
87
87
  /**
88
88
  * The error is thrown when trying to acquire a lock that is owned by a different owner.
89
89
  *
90
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
90
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
91
91
  * @group Errors
92
92
  */
93
93
  export class KeyAlreadyAcquiredLockError extends LockError {
@@ -108,7 +108,7 @@ export class KeyAlreadyAcquiredLockError extends LockError {
108
108
  /**
109
109
  * The error is thrown when trying to release a lock that is owned by a different owner.
110
110
  *
111
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
111
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
112
112
  * @group Errors
113
113
  */
114
114
  export class UnownedReleaseLockError extends LockError {
@@ -129,7 +129,7 @@ export class UnownedReleaseLockError extends LockError {
129
129
  /**
130
130
  * The error is thrown when trying to referesh a lock that is owned by a different owner.
131
131
  *
132
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
132
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
133
133
  * @group Errors
134
134
  */
135
135
  export class UnownedRefreshLockError extends LockError {
@@ -149,7 +149,7 @@ export class UnownedRefreshLockError extends LockError {
149
149
  }
150
150
  /**
151
151
  *
152
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
152
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
153
153
  * @group Errors
154
154
  */
155
155
  export const LOCK_ERRORS = {
@@ -161,9 +161,9 @@ export const LOCK_ERRORS = {
161
161
  UnownedRelease: UnownedReleaseLockError,
162
162
  };
163
163
  /**
164
- * The <i>registerLockErrorsToSerde</i> function registers all <i>{@link ILock}</i> related errors with <i>IFlexibleSerde</i>, ensuring they will properly be serialized and deserialized.
164
+ * The `registerLockErrorsToSerde` function registers all {@link ILock | `ILock`} related errors with `IFlexibleSerde`, ensuring they will properly be serialized and deserialized.
165
165
  *
166
- * IMPORT_PATH: ```"@daiso-tech/core/lock/contracts"```
166
+ * IMPORT_PATH: `"@daiso-tech/core/lock/contracts"`
167
167
  * @group Errors
168
168
  */
169
169
  export function registerLockErrorsToSerde(serde) {