@daiso-tech/core 0.25.0 → 0.26.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/dist/async/utilities/lazy-promise/lazy-promise.d.ts +12 -3
  2. package/dist/async/utilities/lazy-promise/lazy-promise.js +36 -3
  3. package/dist/async/utilities/lazy-promise/lazy-promise.js.map +1 -1
  4. package/dist/cache/implementations/derivables/cache/cache.d.ts +24 -24
  5. package/dist/cache/implementations/derivables/cache/cache.js +15 -15
  6. package/dist/cache/implementations/derivables/cache/cache.js.map +1 -1
  7. package/dist/event-bus/contracts/_shared.d.ts +0 -7
  8. package/dist/event-bus/contracts/_shared.js.map +1 -1
  9. package/dist/event-bus/contracts/event-bus-adapter.contract.d.ts +6 -5
  10. package/dist/event-bus/contracts/event-bus.contract.d.ts +8 -23
  11. package/dist/event-bus/contracts/event-bus.contract.js +0 -1
  12. package/dist/event-bus/contracts/event-bus.contract.js.map +1 -1
  13. package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.d.ts +4 -3
  14. package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js +1 -1
  15. package/dist/event-bus/implementations/adapters/memory-event-bus-adapter/memory-event-bus-adapter.js.map +1 -1
  16. package/dist/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.d.ts +4 -3
  17. package/dist/event-bus/implementations/adapters/no-op-event-bus-adapter/no-op-event-bus-adapter.js.map +1 -1
  18. package/dist/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.d.ts +4 -3
  19. package/dist/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js +1 -1
  20. package/dist/event-bus/implementations/adapters/redis-pub-sub-event-bus-adapter/redis-pub-sub-event-bus-adapter.js.map +1 -1
  21. package/dist/event-bus/implementations/derivables/event-bus/event-bus.d.ts +13 -13
  22. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js +5 -5
  23. package/dist/event-bus/implementations/derivables/event-bus/event-bus.js.map +1 -1
  24. package/dist/event-bus/implementations/test-utilities/event-bus.test-suite.js +30 -30
  25. package/dist/event-bus/implementations/test-utilities/event-bus.test-suite.js.map +1 -1
  26. package/dist/lock/implementations/derivables/lock-provider/is-database-lock-adapter.d.ts +9 -0
  27. package/dist/lock/implementations/derivables/lock-provider/is-database-lock-adapter.js +21 -0
  28. package/dist/lock/implementations/derivables/lock-provider/is-database-lock-adapter.js.map +1 -0
  29. package/dist/lock/implementations/derivables/lock-provider/lock-provider.d.ts +23 -24
  30. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js +16 -36
  31. package/dist/lock/implementations/derivables/lock-provider/lock-provider.js.map +1 -1
  32. package/dist/lock/implementations/derivables/lock-provider/lock.d.ts +32 -32
  33. package/dist/lock/implementations/derivables/lock-provider/lock.js +23 -23
  34. package/dist/lock/implementations/derivables/lock-provider/lock.js.map +1 -1
  35. package/dist/lock/implementations/test-utilities/lock-provider.test-suite.js +30 -30
  36. package/dist/utilities/{constants.js → _constants.js} +1 -1
  37. package/dist/utilities/_constants.js.map +1 -0
  38. package/dist/utilities/_module-exports.d.ts +1 -1
  39. package/dist/utilities/_module-exports.js +1 -1
  40. package/dist/utilities/_module-exports.js.map +1 -1
  41. package/dist/utilities/pipeline/_module.d.ts +1 -0
  42. package/dist/utilities/pipeline/_module.js +2 -0
  43. package/dist/utilities/pipeline/_module.js.map +1 -0
  44. package/dist/utilities/pipeline/pipeline.d.ts +45 -0
  45. package/dist/utilities/pipeline/pipeline.js +75 -0
  46. package/dist/utilities/pipeline/pipeline.js.map +1 -0
  47. package/dist/utilities/time-span/time-span.d.ts +3 -12
  48. package/dist/utilities/time-span/time-span.js +3 -6
  49. package/dist/utilities/time-span/time-span.js.map +1 -1
  50. package/dist/utilities/types.d.ts +19 -2
  51. package/package.json +1 -1
  52. package/dist/utilities/constants.js.map +0 -1
  53. /package/dist/utilities/{constants.d.ts → _constants.d.ts} +0 -0
@@ -1,13 +1,13 @@
1
1
  /**
2
2
  * @module Lock
3
3
  */
4
- import type { LazyPromiseable, Result } from "../../../../utilities/_module-exports.js";
4
+ import type { Invokable, LazyPromiseable, Result } from "../../../../utilities/_module-exports.js";
5
5
  import type { TimeSpan } from "../../../../utilities/_module-exports.js";
6
6
  import type { BackoffPolicy, RetryPolicy } from "../../../../async/_module-exports.js";
7
7
  import { LazyPromise } from "../../../../async/_module-exports.js";
8
8
  import type { AquireBlockingSettings, ILockAdapter, LockEvents } from "../../../../lock/contracts/_module-exports.js";
9
9
  import { KeyAlreadyAcquiredLockError, type ILock } from "../../../../lock/contracts/_module-exports.js";
10
- import type { EventClass, EventListener, EventInstance, Unsubscribe, IGroupableEventBus, IEventDispatcher } from "../../../../event-bus/contracts/_module-exports.js";
10
+ import type { EventClass, EventInstance, Unsubscribe, IGroupableEventBus, IEventDispatcher } from "../../../../event-bus/contracts/_module-exports.js";
11
11
  import { type ILockStateRecord } from "../../../../lock/implementations/derivables/lock-provider/lock-state.js";
12
12
  /**
13
13
  * @internal
@@ -72,7 +72,7 @@ export declare class Lock implements ILock {
72
72
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
73
73
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
74
74
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
75
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
75
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
76
76
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
77
77
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
78
78
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -117,7 +117,7 @@ export declare class Lock implements ILock {
117
117
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
118
118
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
119
119
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
120
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
120
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
121
121
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
122
122
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
123
123
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -171,7 +171,7 @@ export declare class Lock implements ILock {
171
171
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
172
172
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
173
173
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
174
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
174
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
175
175
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
176
176
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
177
177
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -218,7 +218,7 @@ export declare class Lock implements ILock {
218
218
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
219
219
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
220
220
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
221
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
221
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
222
222
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
223
223
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
224
224
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -275,7 +275,7 @@ export declare class Lock implements ILock {
275
275
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
276
276
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
277
277
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
278
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
278
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
279
279
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
280
280
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
281
281
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -320,7 +320,7 @@ export declare class Lock implements ILock {
320
320
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
321
321
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
322
322
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
323
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
323
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
324
324
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
325
325
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
326
326
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -374,7 +374,7 @@ export declare class Lock implements ILock {
374
374
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
375
375
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
376
376
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
377
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
377
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
378
378
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
379
379
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
380
380
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -428,7 +428,7 @@ export declare class Lock implements ILock {
428
428
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
429
429
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
430
430
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
431
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
431
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
432
432
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
433
433
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
434
434
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -480,7 +480,7 @@ export declare class Lock implements ILock {
480
480
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
481
481
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
482
482
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
483
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
483
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
484
484
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
485
485
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
486
486
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -547,7 +547,7 @@ export declare class Lock implements ILock {
547
547
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
548
548
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
549
549
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
550
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
550
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
551
551
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
552
552
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
553
553
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -567,14 +567,14 @@ export declare class Lock implements ILock {
567
567
  *
568
568
  * const lock = lockProvider.create("a");
569
569
  *
570
- * const listener: EventListener<LockEvents> = event => {
570
+ * const listener: Invokable <LockEvents> = event => {
571
571
  * console.log(event);
572
572
  * }
573
573
  * await lock.addListener(KeyAcquiredLockEvent, listener);
574
574
  * await lock.acquire();
575
575
  * ```
576
576
  */
577
- addListener<TEventClass extends EventClass<LockEvents>>(event: TEventClass, listener: EventListener<EventInstance<TEventClass>>): LazyPromise<void>;
577
+ addListener<TEventClass extends EventClass<LockEvents>>(event: TEventClass, listener: Invokable<EventInstance<TEventClass>>): LazyPromise<void>;
578
578
  /**
579
579
  * You can listen to different events of the current <i>Lock</i> class instance.
580
580
  *
@@ -585,7 +585,7 @@ export declare class Lock implements ILock {
585
585
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
586
586
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
587
587
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
588
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
588
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
589
589
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
590
590
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
591
591
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -605,14 +605,14 @@ export declare class Lock implements ILock {
605
605
  *
606
606
  * const lock = lockProvider.create("a");
607
607
  *
608
- * const listener: EventListener<LockEvents> = event => {
608
+ * const listener: Invokable <LockEvents> = event => {
609
609
  * console.log(event);
610
610
  * }
611
611
  * await lock.addListenerMany([KeyAcquiredLockEvent], listener);
612
612
  * await lock.acquire();
613
613
  * ```
614
614
  */
615
- addListenerMany<TEventClass extends EventClass<LockEvents>>(events: TEventClass[], listener: EventListener<EventInstance<TEventClass>>): LazyPromise<void>;
615
+ addListenerMany<TEventClass extends EventClass<LockEvents>>(events: TEventClass[], listener: Invokable<EventInstance<TEventClass>>): LazyPromise<void>;
616
616
  /**
617
617
  * You can listen to different events of the current <i>Lock</i> class instance.
618
618
  *
@@ -623,7 +623,7 @@ export declare class Lock implements ILock {
623
623
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
624
624
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
625
625
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
626
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
626
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
627
627
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
628
628
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
629
629
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -643,7 +643,7 @@ export declare class Lock implements ILock {
643
643
  *
644
644
  * const lock = lockProvider.create("a");
645
645
  *
646
- * const listener: EventListener<LockEvents> = event => {
646
+ * const listener: Invokable <LockEvents> = event => {
647
647
  * console.log(event);
648
648
  * }
649
649
  * await lock.addListener(KeyAcquiredLockEvent, listener);
@@ -651,7 +651,7 @@ export declare class Lock implements ILock {
651
651
  * await lock.acquire();
652
652
  * ```
653
653
  */
654
- removeListener<TEventClass extends EventClass<LockEvents>>(event: TEventClass, listener: EventListener<EventInstance<TEventClass>>): LazyPromise<void>;
654
+ removeListener<TEventClass extends EventClass<LockEvents>>(event: TEventClass, listener: Invokable<EventInstance<TEventClass>>): LazyPromise<void>;
655
655
  /**
656
656
  * You can listen to different events of the current <i>Lock</i> class instance.
657
657
  *
@@ -662,7 +662,7 @@ export declare class Lock implements ILock {
662
662
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
663
663
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
664
664
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
665
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
665
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
666
666
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
667
667
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
668
668
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -682,7 +682,7 @@ export declare class Lock implements ILock {
682
682
  *
683
683
  * const lock = lockProvider.create("a");
684
684
  *
685
- * const listener: EventListener<LockEvents> = event => {
685
+ * const listener: Invokable <LockEvents> = event => {
686
686
  * console.log(event);
687
687
  * }
688
688
  * await lock.addListenerMany([KeyAcquiredLockEvent], listener);
@@ -690,7 +690,7 @@ export declare class Lock implements ILock {
690
690
  * await lock.acquire();
691
691
  * ```
692
692
  */
693
- removeListenerMany<TEventClass extends EventClass<LockEvents>>(events: TEventClass[], listener: EventListener<EventInstance<TEventClass>>): LazyPromise<void>;
693
+ removeListenerMany<TEventClass extends EventClass<LockEvents>>(events: TEventClass[], listener: Invokable<EventInstance<TEventClass>>): LazyPromise<void>;
694
694
  /**
695
695
  * You can listen to different events of the current <i>Lock</i> class instance.
696
696
  *
@@ -701,7 +701,7 @@ export declare class Lock implements ILock {
701
701
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
702
702
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
703
703
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
704
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
704
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
705
705
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
706
706
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
707
707
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -721,14 +721,14 @@ export declare class Lock implements ILock {
721
721
  *
722
722
  * const lock = lockProvider.create("a");
723
723
  *
724
- * const listener: EventListener<LockEvents> = event => {
724
+ * const listener: Invokable <LockEvents> = event => {
725
725
  * console.log(event);
726
726
  * }
727
727
  * await lock.listenOnce(KeyAcquiredLockEvent, listener);
728
728
  * await lock.acquire();
729
729
  * ```
730
730
  */
731
- listenOnce<TEventClass extends EventClass<LockEvents>>(event: TEventClass, listener: EventListener<EventInstance<TEventClass>>): LazyPromise<void>;
731
+ listenOnce<TEventClass extends EventClass<LockEvents>>(event: TEventClass, listener: Invokable<EventInstance<TEventClass>>): LazyPromise<void>;
732
732
  asPromise<TEventClass extends EventClass<LockEvents>>(event: TEventClass): LazyPromise<EventInstance<TEventClass>>;
733
733
  /**
734
734
  * You can listen to different events of the current <i>Lock</i> class instance.
@@ -740,7 +740,7 @@ export declare class Lock implements ILock {
740
740
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
741
741
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
742
742
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
743
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
743
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
744
744
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
745
745
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
746
746
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -760,7 +760,7 @@ export declare class Lock implements ILock {
760
760
  *
761
761
  * const lock = lockProvider.create("a");
762
762
  *
763
- * const listener: EventListener<LockEvents> = event => {
763
+ * const listener: Invokable <LockEvents> = event => {
764
764
  * console.log(event);
765
765
  * }
766
766
  * const unsubscribe = await lock.subscribe(KeyAcquiredLockEvent, listener);
@@ -768,7 +768,7 @@ export declare class Lock implements ILock {
768
768
  * await unsubscribe();
769
769
  * ```
770
770
  */
771
- subscribe<TEventClass extends EventClass<LockEvents>>(event: TEventClass, listener: EventListener<EventInstance<TEventClass>>): LazyPromise<Unsubscribe>;
771
+ subscribe<TEventClass extends EventClass<LockEvents>>(event: TEventClass, listener: Invokable<EventInstance<TEventClass>>): LazyPromise<Unsubscribe>;
772
772
  /**
773
773
  * You can listen to different events of the current <i>Lock</i> class instance.
774
774
  *
@@ -779,7 +779,7 @@ export declare class Lock implements ILock {
779
779
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
780
780
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
781
781
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
782
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
782
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
783
783
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
784
784
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
785
785
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -799,7 +799,7 @@ export declare class Lock implements ILock {
799
799
  *
800
800
  * const lock = lockProvider.create("a");
801
801
  *
802
- * const listener: EventListener<LockEvents> = event => {
802
+ * const listener: Invokable <LockEvents> = event => {
803
803
  * console.log(event);
804
804
  * }
805
805
  * const unsubscribe = await lock.subscribeMany([KeyAcquiredLockEvent], listener);
@@ -807,5 +807,5 @@ export declare class Lock implements ILock {
807
807
  * await unsubscribe();
808
808
  * ```
809
809
  */
810
- subscribeMany<TEventClass extends EventClass<LockEvents>>(events: TEventClass[], listener: EventListener<EventInstance<TEventClass>>): LazyPromise<Unsubscribe>;
810
+ subscribeMany<TEventClass extends EventClass<LockEvents>>(events: TEventClass[], listener: Invokable<EventInstance<TEventClass>>): LazyPromise<Unsubscribe>;
811
811
  }
@@ -63,7 +63,7 @@ export class Lock {
63
63
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
64
64
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
65
65
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
66
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
66
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
67
67
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
68
68
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
69
69
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -108,7 +108,7 @@ export class Lock {
108
108
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
109
109
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
110
110
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
111
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
111
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
112
112
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
113
113
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
114
114
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -181,7 +181,7 @@ export class Lock {
181
181
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
182
182
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
183
183
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
184
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
184
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
185
185
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
186
186
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
187
187
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -228,7 +228,7 @@ export class Lock {
228
228
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
229
229
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
230
230
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
231
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
231
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
232
232
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
233
233
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
234
234
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -299,7 +299,7 @@ export class Lock {
299
299
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
300
300
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
301
301
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
302
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
302
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
303
303
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
304
304
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
305
305
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -344,7 +344,7 @@ export class Lock {
344
344
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
345
345
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
346
346
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
347
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
347
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
348
348
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
349
349
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
350
350
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -417,7 +417,7 @@ export class Lock {
417
417
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
418
418
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
419
419
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
420
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
420
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
421
421
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
422
422
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
423
423
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -508,7 +508,7 @@ export class Lock {
508
508
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
509
509
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
510
510
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
511
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
511
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
512
512
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
513
513
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
514
514
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -567,7 +567,7 @@ export class Lock {
567
567
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
568
568
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
569
569
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
570
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
570
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
571
571
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
572
572
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
573
573
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -788,7 +788,7 @@ export class Lock {
788
788
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
789
789
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
790
790
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
791
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
791
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
792
792
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
793
793
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
794
794
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -808,7 +808,7 @@ export class Lock {
808
808
  *
809
809
  * const lock = lockProvider.create("a");
810
810
  *
811
- * const listener: EventListener<LockEvents> = event => {
811
+ * const listener: Invokable <LockEvents> = event => {
812
812
  * console.log(event);
813
813
  * }
814
814
  * await lock.addListener(KeyAcquiredLockEvent, listener);
@@ -828,7 +828,7 @@ export class Lock {
828
828
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
829
829
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
830
830
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
831
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
831
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
832
832
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
833
833
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
834
834
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -848,7 +848,7 @@ export class Lock {
848
848
  *
849
849
  * const lock = lockProvider.create("a");
850
850
  *
851
- * const listener: EventListener<LockEvents> = event => {
851
+ * const listener: Invokable <LockEvents> = event => {
852
852
  * console.log(event);
853
853
  * }
854
854
  * await lock.addListenerMany([KeyAcquiredLockEvent], listener);
@@ -868,7 +868,7 @@ export class Lock {
868
868
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
869
869
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
870
870
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
871
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
871
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
872
872
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
873
873
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
874
874
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -888,7 +888,7 @@ export class Lock {
888
888
  *
889
889
  * const lock = lockProvider.create("a");
890
890
  *
891
- * const listener: EventListener<LockEvents> = event => {
891
+ * const listener: Invokable <LockEvents> = event => {
892
892
  * console.log(event);
893
893
  * }
894
894
  * await lock.addListener(KeyAcquiredLockEvent, listener);
@@ -909,7 +909,7 @@ export class Lock {
909
909
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
910
910
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
911
911
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
912
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
912
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
913
913
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
914
914
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
915
915
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -929,7 +929,7 @@ export class Lock {
929
929
  *
930
930
  * const lock = lockProvider.create("a");
931
931
  *
932
- * const listener: EventListener<LockEvents> = event => {
932
+ * const listener: Invokable <LockEvents> = event => {
933
933
  * console.log(event);
934
934
  * }
935
935
  * await lock.addListenerMany([KeyAcquiredLockEvent], listener);
@@ -950,7 +950,7 @@ export class Lock {
950
950
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
951
951
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
952
952
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
953
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
953
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
954
954
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
955
955
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
956
956
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -970,7 +970,7 @@ export class Lock {
970
970
  *
971
971
  * const lock = lockProvider.create("a");
972
972
  *
973
- * const listener: EventListener<LockEvents> = event => {
973
+ * const listener: Invokable <LockEvents> = event => {
974
974
  * console.log(event);
975
975
  * }
976
976
  * await lock.listenOnce(KeyAcquiredLockEvent, listener);
@@ -993,7 +993,7 @@ export class Lock {
993
993
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
994
994
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
995
995
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
996
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
996
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
997
997
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
998
998
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
999
999
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -1013,7 +1013,7 @@ export class Lock {
1013
1013
  *
1014
1014
  * const lock = lockProvider.create("a");
1015
1015
  *
1016
- * const listener: EventListener<LockEvents> = event => {
1016
+ * const listener: Invokable <LockEvents> = event => {
1017
1017
  * console.log(event);
1018
1018
  * }
1019
1019
  * const unsubscribe = await lock.subscribe(KeyAcquiredLockEvent, listener);
@@ -1034,7 +1034,7 @@ export class Lock {
1034
1034
  * import { type IGroupableLockProvider, type LockEvents, KeyAcquiredLockEvent } from "@daiso-tech/core/lock/contracts";
1035
1035
  * import { LockProvider } from "@daiso-tech/core/lock/implementations/derivables";
1036
1036
  * import { MemoryLockAdapter } from "@daiso-tech/core/lock/implementations/adapters";
1037
- * import type { EventListener} from "@daiso-tech/core/event-bus/contracts";
1037
+ * import type { Invokable } from "@daiso-tech/core/event-bus/contracts";
1038
1038
  * import { EventBus } from "@daiso-tech/core/event-bus/implementations/derivables";
1039
1039
  * import { MemoryEventBusAdapter } from "@daiso-tech/core/event-bus/implementations/adapters";
1040
1040
  * import { Serde } from "@daiso-tech/core/serde/implementations/derivables";
@@ -1054,7 +1054,7 @@ export class Lock {
1054
1054
  *
1055
1055
  * const lock = lockProvider.create("a");
1056
1056
  *
1057
- * const listener: EventListener<LockEvents> = event => {
1057
+ * const listener: Invokable <LockEvents> = event => {
1058
1058
  * console.log(event);
1059
1059
  * }
1060
1060
  * const unsubscribe = await lock.subscribeMany([KeyAcquiredLockEvent], listener);
@@ -1 +1 @@
1
- {"version":3,"file":"lock.js","sourceRoot":"","sources":["../../../../../src/lock/implementations/derivables/lock-provider/lock.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lock.js","sourceRoot":"","sources":["../../../../../src/lock/implementations/derivables/lock-provider/lock.ts"],"names":[],"mappings":"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"}