redis-smq 6.0.4 → 6.2.2

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 (120) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +19 -13
  3. package/dist/index.d.ts +1 -1
  4. package/dist/index.js +1 -1
  5. package/dist/src/monitor-server/controllers/api/api-controller.js +7 -1
  6. package/dist/src/monitor-server/controllers/api/consumers/consumer/time-series/controller.d.ts +2 -0
  7. package/dist/src/monitor-server/controllers/api/{namespaces/queue → consumers}/consumer/time-series/controller.js +2 -2
  8. package/dist/src/monitor-server/controllers/api/{namespaces/queue → consumers}/consumer/time-series/get-consumer-acknowledged/get-consumer-acknowledged.handler.d.ts +1 -1
  9. package/dist/src/monitor-server/controllers/api/{namespaces/queue → consumers}/consumer/time-series/get-consumer-acknowledged/get-consumer-acknowledged.handler.js +0 -0
  10. package/dist/src/monitor-server/controllers/api/consumers/consumer/time-series/get-consumer-acknowledged/get-consumer-acknowledged.request.DTO.d.ts +3 -0
  11. package/dist/src/monitor-server/controllers/api/{namespaces/queue → consumers}/consumer/time-series/get-consumer-acknowledged/get-consumer-acknowledged.request.DTO.js +1 -1
  12. package/dist/src/monitor-server/controllers/api/consumers/consumer/time-series/get-consumer-acknowledged/get-consumer-acknowledged.response.DTO.d.ts +3 -0
  13. package/dist/src/monitor-server/controllers/api/{namespaces/queue → consumers}/consumer/time-series/get-consumer-acknowledged/get-consumer-acknowledged.response.DTO.js +1 -1
  14. package/dist/src/monitor-server/controllers/api/{namespaces/queue → consumers}/consumer/time-series/get-consumer-dead-lettered/get-consumer-dead-lettered.handler.d.ts +1 -1
  15. package/dist/src/monitor-server/controllers/api/{namespaces/queue → consumers}/consumer/time-series/get-consumer-dead-lettered/get-consumer-dead-lettered.handler.js +0 -0
  16. package/dist/src/monitor-server/controllers/api/consumers/consumer/time-series/get-consumer-dead-lettered/get-consumer-dead-lettered.request.DTO.d.ts +3 -0
  17. package/dist/src/monitor-server/controllers/api/{namespaces/queue → consumers}/consumer/time-series/get-consumer-dead-lettered/get-consumer-dead-lettered.request.DTO.js +1 -1
  18. package/dist/src/monitor-server/controllers/api/consumers/consumer/time-series/get-consumer-dead-lettered/get-consumer-dead-lettered.response.DTO.d.ts +3 -0
  19. package/dist/src/monitor-server/controllers/api/{namespaces/queue → consumers}/consumer/time-series/get-consumer-dead-lettered/get-consumer-dead-lettered.response.DTO.js +1 -1
  20. package/dist/src/monitor-server/controllers/api/consumers/consumers.controller.d.ts +2 -0
  21. package/dist/src/monitor-server/controllers/api/consumers/consumers.controller.js +9 -0
  22. package/dist/src/monitor-server/controllers/api/namespaces/queue/queue.controller.js +1 -1
  23. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/clear-rate-limit/clear-rate-limit.handler.d.ts +4 -0
  24. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/clear-rate-limit/clear-rate-limit.handler.js +20 -0
  25. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/clear-rate-limit/clear-rate-limit.request.DTO.d.ts +3 -0
  26. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/clear-rate-limit/clear-rate-limit.request.DTO.js +8 -0
  27. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/clear-rate-limit/clear-rate-limit.response.DTO.d.ts +3 -0
  28. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/clear-rate-limit/clear-rate-limit.response.DTO.js +8 -0
  29. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/controller.d.ts +2 -0
  30. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/controller.js +46 -0
  31. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/get-rate-limit/get-rate-limit.handler.d.ts +4 -0
  32. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/get-rate-limit/get-rate-limit.handler.js +20 -0
  33. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/get-rate-limit/get-rate-limit.request.DTO.d.ts +3 -0
  34. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/get-rate-limit/get-rate-limit.request.DTO.js +8 -0
  35. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/get-rate-limit/get-rate-limit.response.DTO.d.ts +11 -0
  36. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/get-rate-limit/get-rate-limit.response.DTO.js +52 -0
  37. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/set-rate-limit/set-rate-limit.handler.d.ts +4 -0
  38. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/set-rate-limit/set-rate-limit.handler.js +20 -0
  39. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/set-rate-limit/set-rate-limit.request.DTO.d.ts +5 -0
  40. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/set-rate-limit/set-rate-limit.request.DTO.js +31 -0
  41. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/set-rate-limit/set-rate-limit.response.DTO.d.ts +3 -0
  42. package/dist/src/monitor-server/controllers/api/namespaces/queue/rate-limiting/set-rate-limit/set-rate-limit.response.DTO.js +8 -0
  43. package/dist/src/monitor-server/controllers/common/dto/queues/consumer-time-series-request.DTO.d.ts +2 -2
  44. package/dist/src/monitor-server/controllers/common/dto/queues/consumer-time-series-request.DTO.js +2 -2
  45. package/dist/src/monitor-server/index.d.ts +2 -1
  46. package/dist/src/monitor-server/index.js +2 -2
  47. package/dist/src/monitor-server/lib/routing.js +8 -2
  48. package/dist/src/monitor-server/middlewares/request-validator.js +2 -1
  49. package/dist/src/monitor-server/services/consumer-time-series.service.d.ts +2 -2
  50. package/dist/src/monitor-server/services/consumer-time-series.service.js +4 -10
  51. package/dist/src/monitor-server/services/queues.service.d.ts +9 -0
  52. package/dist/src/monitor-server/services/queues.service.js +18 -0
  53. package/dist/src/monitor-server/workers/websocket-heartbeat-stream.worker.js +0 -16
  54. package/dist/src/monitor-server/workers/websocket-main-stream.worker.js +0 -15
  55. package/dist/src/monitor-server/workers/websocket-online-stream.worker.js +0 -15
  56. package/dist/src/monitor-server/workers/websocket-rate-stream.worker.js +2 -18
  57. package/dist/src/system/app/consumer/consumer-message-handler.d.ts +4 -3
  58. package/dist/src/system/app/consumer/consumer-message-handler.js +54 -31
  59. package/dist/src/system/app/consumer/consumer-message-rate-writer.js +2 -2
  60. package/dist/src/system/app/consumer/consumer-time-series/consumer-acknowledged-time-series.d.ts +3 -2
  61. package/dist/src/system/app/consumer/consumer-time-series/consumer-acknowledged-time-series.js +8 -4
  62. package/dist/src/system/app/consumer/consumer-time-series/consumer-dead-lettered-time-series.d.ts +3 -2
  63. package/dist/src/system/app/consumer/consumer-time-series/consumer-dead-lettered-time-series.js +8 -4
  64. package/dist/src/system/app/consumer/consumer.js +13 -14
  65. package/dist/src/system/app/message/message.js +1 -1
  66. package/dist/src/system/app/message-manager/message-manager.js +1 -1
  67. package/dist/src/system/app/producer/producer.js +2 -2
  68. package/dist/src/system/app/queue-manager/errors/queue-rate-limit.error.d.ts +3 -0
  69. package/dist/src/system/app/queue-manager/errors/queue-rate-limit.error.js +8 -0
  70. package/dist/src/system/app/queue-manager/queue-manager-frontend.d.ts +4 -1
  71. package/dist/src/system/app/queue-manager/queue-manager-frontend.js +13 -1
  72. package/dist/src/system/app/queue-manager/queue-manager.d.ts +5 -1
  73. package/dist/src/system/app/queue-manager/queue-manager.js +48 -2
  74. package/dist/src/system/common/base.js +1 -1
  75. package/dist/src/system/common/broker/broker.d.ts +10 -0
  76. package/dist/src/system/common/broker/broker.js +38 -0
  77. package/dist/src/system/common/broker/retry/dead-letter-message.d.ts +5 -0
  78. package/dist/src/system/common/broker/retry/dead-letter-message.js +60 -0
  79. package/dist/src/system/common/broker/retry/delay-message.d.ts +6 -0
  80. package/dist/src/system/common/broker/retry/delay-message.js +26 -0
  81. package/dist/src/system/common/broker/retry/requeue-message.d.ts +5 -0
  82. package/dist/src/system/common/broker/retry/requeue-message.js +20 -0
  83. package/dist/src/system/common/broker/retry/retry.d.ts +5 -0
  84. package/dist/src/system/common/broker/retry/retry.js +80 -0
  85. package/dist/src/system/common/broker/schedule-message.d.ts +5 -0
  86. package/dist/src/system/common/broker/schedule-message.js +57 -0
  87. package/dist/src/system/common/configuration/configuration.d.ts +4 -0
  88. package/dist/src/system/common/{errors → configuration}/configuration.error.d.ts +1 -1
  89. package/dist/src/system/common/{errors → configuration}/configuration.error.js +1 -1
  90. package/dist/src/system/common/{configuration.js → configuration/configuration.js} +12 -21
  91. package/dist/src/system/common/configuration/default-configuration.d.ts +2 -0
  92. package/dist/src/system/common/configuration/default-configuration.js +35 -0
  93. package/dist/src/system/common/configuration/message-storage.d.ts +2 -0
  94. package/dist/src/system/common/configuration/message-storage.js +47 -0
  95. package/dist/src/system/common/logger.js +1 -1
  96. package/dist/src/system/common/redis-client/lua/has-queue-rate-exceeded.lua +15 -0
  97. package/dist/src/system/common/redis-client/lua/lpoprpushextra.lua +20 -0
  98. package/dist/src/system/common/redis-client/lua-scripts.d.ts +3 -1
  99. package/dist/src/system/common/redis-client/lua-scripts.js +10 -0
  100. package/dist/src/system/common/redis-client/redis-client.d.ts +2 -1
  101. package/dist/src/system/common/redis-client/redis-client.js +17 -12
  102. package/dist/src/system/common/redis-keys/redis-keys.d.ts +12 -2
  103. package/dist/src/system/common/redis-keys/redis-keys.js +6 -2
  104. package/dist/src/system/common/worker/worker-runner/worker-runner.d.ts +1 -5
  105. package/dist/src/system/common/worker/worker-runner/worker-runner.js +3 -51
  106. package/dist/src/system/workers/delay.worker.js +2 -17
  107. package/dist/src/system/workers/heartbeat-monitor.worker.js +0 -15
  108. package/dist/src/system/workers/requeue.worker.js +0 -15
  109. package/dist/src/system/workers/schedule.worker.js +0 -14
  110. package/dist/src/system/workers/time-series.worker.js +2 -17
  111. package/dist/types/index.d.ts +62 -50
  112. package/package.json +2 -2
  113. package/dist/src/monitor-server/controllers/api/namespaces/queue/consumer/time-series/controller.d.ts +0 -2
  114. package/dist/src/monitor-server/controllers/api/namespaces/queue/consumer/time-series/get-consumer-acknowledged/get-consumer-acknowledged.request.DTO.d.ts +0 -3
  115. package/dist/src/monitor-server/controllers/api/namespaces/queue/consumer/time-series/get-consumer-acknowledged/get-consumer-acknowledged.response.DTO.d.ts +0 -3
  116. package/dist/src/monitor-server/controllers/api/namespaces/queue/consumer/time-series/get-consumer-dead-lettered/get-consumer-dead-lettered.request.DTO.d.ts +0 -3
  117. package/dist/src/monitor-server/controllers/api/namespaces/queue/consumer/time-series/get-consumer-dead-lettered/get-consumer-dead-lettered.response.DTO.d.ts +0 -3
  118. package/dist/src/system/common/broker.d.ts +0 -9
  119. package/dist/src/system/common/broker.js +0 -151
  120. package/dist/src/system/common/configuration.d.ts +0 -4
package/CHANGELOG.md CHANGED
@@ -1,5 +1,28 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 6.2.2 (2022-02-21)
4
+
5
+ * Fix a queue rate limiting bug allowing to save invalid Redis keys (1dc91aa)
6
+ * Bump up redis-smq-monitor to v6.5.2 (e192db0)
7
+ * Update docs (5a6469e)
8
+
9
+ ## 6.2.1 (2022-02-19)
10
+
11
+ * Remove unused code (475fa3d)
12
+
13
+ ## 6.2.0 (2022-02-19)
14
+
15
+ * Bump up redis-smq-monitor to v6.5.1 (c543c55)
16
+ * Improve consumer message rate time series handling (7d51bb3)
17
+ * Update docs (ef21b39)
18
+ * Allow configuring queue rate limiting from the HTTP API (ec2bc52)
19
+ * Test message consumption rate limiting (62e5b1f)
20
+ * Implement message consumption rate limiting (1c87ec0)
21
+
22
+ ## 6.1.0 (2022-02-14)
23
+
24
+ * Allow configuring which messages to store with extended parameters (7bd37a1)
25
+
3
26
  ## 6.0.4 (2022-02-13)
4
27
 
5
28
  * Fix missing type definition for koa-bodyparser (4b8a11e)
package/README.md CHANGED
@@ -16,19 +16,20 @@ RedisSMQ is a Node.js library for queuing messages (aka jobs) and processing the
16
16
 
17
17
  * **[High-performance message processing](docs/performance.md)**
18
18
  * **[Multi-Queue Producers](#producer-class) & [Multi-Queue Consumers](#consumer-class)**: Offering very flexible models which make RedisSMQ an ideal message broker for your microservices.
19
- * **Scalable**: You can run multiple Consumer/Producer instances concurrently in the same host, or in different hosts.
20
- * **Supporting both [at-least-once/at-most-once delivery](/docs/api/message.md#messageprototypesetretrythreshold)**: In case of failures, while delivering or processing a message, RedisSMQ can guaranty that the message will be not lost and redelivered again. When configured to do so, RedisSMQ can ensure that the message is delivered at-most-once.
21
- * **[Message expiration](docs/api/message.md#messageprototypesetttl)**: A message will not be delivered if it has been in a queue for longer than a given amount of time, called TTL (time-to-live).
22
- * **[Message consume timeout](docs/api/message.md#messageprototypesetconsumetimeout)**: Timeout for consuming messages.
23
- * **[Delaying and scheduling message delivery](docs/scheduling-messages.md)**: Messages can be configured to be delayed, delivered for N times with an optional period between deliveries, and to be scheduled using CRON expressions.
19
+ * **[Supporting both at-least-once/at-most-once delivery](/docs/api/message.md#messageprototypesetretrythreshold)**: In case of failures, while delivering or processing a message, RedisSMQ can guaranty that the message will be not lost and redelivered again. When configured to do so, RedisSMQ can also ensure that the message is delivered at-most-once.
20
+ * **[Message Expiration](docs/api/message.md#messageprototypesetttl)**: A message will not be delivered if it has been in a queue for longer than a given amount of time, called TTL (time-to-live).
21
+ * **[Message Consumption Timeout](docs/api/message.md#messageprototypesetconsumetimeout)**: Timeout for consuming messages.
22
+ * **[Queue Rate Limiting](docs/queue-rate-limiting.md)**: Allowing you to control the rate at which the messages are consumed from a given queue.
23
+ * **[Scheduling Messages](docs/scheduling-messages.md)**: Messages can be configured to be delayed, delivered for N times with an optional period between deliveries, and to be scheduled using CRON expressions.
24
24
  * **[Reliable Priority Queues](docs/priority-queues.md)**: Supports priority messaging.
25
25
  * **[HTTP API](docs/http-api.md)**: an HTTP interface is provided to interact with the MQ.
26
26
  * **[Web UI](docs/web-ui.md)**: RedisSMQ can be managed also from your web browser.
27
27
  * **[Logging](docs/logs.md)**: Comes with a built-in JSON logger. But you can also use your own logger instance.
28
- * **Highly optimized**: Strongly-typed and implemented using pure callbacks, with small memory footprint and no memory leaks. See [callbacks vs promises vs async/await benchmarks](http://bluebirdjs.com/docs/benchmarks.html).
29
28
  * **[Configurable](docs/configuration.md)**: Many options and features can be configured.
29
+ * **Both redis & ioredis clients are supported**: RedisSMQ can be configured to use either `redis` or `ioredis` to connect to Redis server.
30
30
  * **Rigorously tested**: With 100+ tests and code coverage no less than 80%.
31
- * **Supports both redis & ioredis**: RedisSMQ can be configured to use either `redis` or `ioredis` to connect to Redis server.
31
+ * **Highly optimized**: Strongly-typed and implemented using pure callbacks, with small memory footprint and no memory leaks. See [callbacks vs promises vs async/await benchmarks](http://bluebirdjs.com/docs/benchmarks.html).
32
+
32
33
 
33
34
  ### RedisSMQ Use Case: Multi-Queue Producers & Multi-Queue Consumers
34
35
 
@@ -49,11 +50,12 @@ RedisSMQ is a Node.js library for queuing messages (aka jobs) and processing the
49
50
  2. Advanced Topics
50
51
  1. [Scheduling Messages](docs/scheduling-messages.md)
51
52
  2. [Priority Queues](docs/priority-queues.md)
52
- 3. [Message Manager](docs/api/message-manager.md)
53
- 4. [Queue Manager](docs/api/queue-manager.md)
54
- 5. [HTTP API](docs/http-api.md)
55
- 6. [Web UI](docs/web-ui.md)
56
- 7. [Logs](docs/logs.md)
53
+ 3. [Queue Rate Limiting](docs/queue-rate-limiting.md)
54
+ 4. [Message Manager](docs/api/message-manager.md)
55
+ 5. [Queue Manager](docs/api/queue-manager.md)
56
+ 6. [HTTP API](docs/http-api.md)
57
+ 7. [Web UI](docs/web-ui.md)
58
+ 8. [Logs](docs/logs.md)
57
59
  5. [RedisSMQ Architecture](docs/redis-smq-architecture.md)
58
60
  6. [Performance](#performance)
59
61
  7. [Contributing](#contributing)
@@ -178,7 +180,9 @@ const messageHandler = (msg, cb) => {
178
180
  cb(); // acknowledging the message
179
181
  };
180
182
 
181
- // the second parameter is for enabling priority queuing
183
+ // The second parameter is for enabling priority queuing for the message handler
184
+ // If you are willing to consume messages with priority, do not forget to set a priority for your messages
185
+ // See Reliable Priority Queues for more details
182
186
  consumer.consume('test_queue', false, messageHandler, (err, isRunning) => {
183
187
  if (err) console.error(err);
184
188
  // the message handler will be started only if the consumer is running
@@ -217,6 +221,8 @@ See [Consumer Reference](docs/api/consumer.md) for more details.
217
221
  * [Scheduling Messages](docs/scheduling-messages.md)
218
222
 
219
223
  * [Priority Queues](docs/priority-queues.md)
224
+
225
+ * [Queue Rate Limiting](docs/queue-rate-limiting.md)
220
226
 
221
227
  * [Message Manager](docs/api/message-manager.md)
222
228
 
package/dist/index.d.ts CHANGED
@@ -4,5 +4,5 @@ export { Message } from './src/message';
4
4
  export { MessageManager } from './src/message-manager';
5
5
  export { QueueManager } from './src/queue-manager';
6
6
  export { MonitorServer } from './src/monitor-server';
7
- export { setConfiguration } from './src/system/common/configuration';
7
+ export { setConfiguration } from './src/system/common/configuration/configuration';
8
8
  export { setLogger } from './src/system/common/logger';
package/dist/index.js CHANGED
@@ -13,7 +13,7 @@ var queue_manager_1 = require("./src/queue-manager");
13
13
  Object.defineProperty(exports, "QueueManager", { enumerable: true, get: function () { return queue_manager_1.QueueManager; } });
14
14
  var monitor_server_1 = require("./src/monitor-server");
15
15
  Object.defineProperty(exports, "MonitorServer", { enumerable: true, get: function () { return monitor_server_1.MonitorServer; } });
16
- var configuration_1 = require("./src/system/common/configuration");
16
+ var configuration_1 = require("./src/system/common/configuration/configuration");
17
17
  Object.defineProperty(exports, "setConfiguration", { enumerable: true, get: function () { return configuration_1.setConfiguration; } });
18
18
  var logger_1 = require("./src/system/common/logger");
19
19
  Object.defineProperty(exports, "setLogger", { enumerable: true, get: function () { return logger_1.setLogger; } });
@@ -4,8 +4,14 @@ exports.apiController = void 0;
4
4
  const main_controller_1 = require("./main/main.controller");
5
5
  const queues_controller_1 = require("./queues/queues.controller");
6
6
  const namespaces_controller_1 = require("./namespaces/namespaces.controller");
7
+ const consumers_controller_1 = require("./consumers/consumers.controller");
7
8
  exports.apiController = {
8
9
  path: '/api',
9
- actions: [main_controller_1.mainController, namespaces_controller_1.namespacesController, queues_controller_1.queuesController],
10
+ actions: [
11
+ main_controller_1.mainController,
12
+ namespaces_controller_1.namespacesController,
13
+ queues_controller_1.queuesController,
14
+ consumers_controller_1.consumersController,
15
+ ],
10
16
  };
11
17
  //# sourceMappingURL=api-controller.js.map
@@ -0,0 +1,2 @@
1
+ import { IRouteController } from '../../../../../lib/routing';
2
+ export declare const controller: IRouteController;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.controller = void 0;
4
- const routing_1 = require("../../../../../../lib/routing");
4
+ const routing_1 = require("../../../../../lib/routing");
5
5
  const get_consumer_acknowledged_handler_1 = require("./get-consumer-acknowledged/get-consumer-acknowledged.handler");
6
6
  const get_consumer_acknowledged_request_DTO_1 = require("./get-consumer-acknowledged/get-consumer-acknowledged.request.DTO");
7
7
  const get_consumer_acknowledged_response_DTO_1 = require("./get-consumer-acknowledged/get-consumer-acknowledged.response.DTO");
@@ -9,7 +9,7 @@ const get_consumer_dead_lettered_handler_1 = require("./get-consumer-dead-letter
9
9
  const get_consumer_dead_lettered_request_DTO_1 = require("./get-consumer-dead-lettered/get-consumer-dead-lettered.request.DTO");
10
10
  const get_consumer_dead_lettered_response_DTO_1 = require("./get-consumer-dead-lettered/get-consumer-dead-lettered.response.DTO");
11
11
  exports.controller = {
12
- path: '/consumers/:consumerId',
12
+ path: '/:consumerId',
13
13
  actions: [
14
14
  {
15
15
  path: '/time-series',
@@ -1,4 +1,4 @@
1
- import { TRouteControllerActionHandler } from '../../../../../../../lib/routing';
1
+ import { TRouteControllerActionHandler } from '../../../../../../lib/routing';
2
2
  import { GetConsumerAcknowledgedRequestDTO } from './get-consumer-acknowledged.request.DTO';
3
3
  import { GetConsumerAcknowledgedResponseDTO } from './get-consumer-acknowledged.response.DTO';
4
4
  export declare const GetConsumerAcknowledgedHandler: TRouteControllerActionHandler<GetConsumerAcknowledgedRequestDTO, GetConsumerAcknowledgedResponseDTO>;
@@ -0,0 +1,3 @@
1
+ import { ConsumerTimeSeriesRequestDTO } from '../../../../../common/dto/queues/consumer-time-series-request.DTO';
2
+ export declare class GetConsumerAcknowledgedRequestDTO extends ConsumerTimeSeriesRequestDTO {
3
+ }
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.GetConsumerAcknowledgedRequestDTO = void 0;
4
- const consumer_time_series_request_DTO_1 = require("../../../../../../common/dto/queues/consumer-time-series-request.DTO");
4
+ const consumer_time_series_request_DTO_1 = require("../../../../../common/dto/queues/consumer-time-series-request.DTO");
5
5
  class GetConsumerAcknowledgedRequestDTO extends consumer_time_series_request_DTO_1.ConsumerTimeSeriesRequestDTO {
6
6
  }
7
7
  exports.GetConsumerAcknowledgedRequestDTO = GetConsumerAcknowledgedRequestDTO;
@@ -0,0 +1,3 @@
1
+ import { TimeSeriesResponseDTO } from '../../../../../common/dto/time-series/time-series-response.DTO';
2
+ export declare class GetConsumerAcknowledgedResponseDTO extends TimeSeriesResponseDTO {
3
+ }
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.GetConsumerAcknowledgedResponseDTO = void 0;
4
- const time_series_response_DTO_1 = require("../../../../../../common/dto/time-series/time-series-response.DTO");
4
+ const time_series_response_DTO_1 = require("../../../../../common/dto/time-series/time-series-response.DTO");
5
5
  class GetConsumerAcknowledgedResponseDTO extends time_series_response_DTO_1.TimeSeriesResponseDTO {
6
6
  }
7
7
  exports.GetConsumerAcknowledgedResponseDTO = GetConsumerAcknowledgedResponseDTO;
@@ -1,4 +1,4 @@
1
- import { TRouteControllerActionHandler } from '../../../../../../../lib/routing';
1
+ import { TRouteControllerActionHandler } from '../../../../../../lib/routing';
2
2
  import { GetConsumerDeadLetteredRequestDTO } from './get-consumer-dead-lettered.request.DTO';
3
3
  import { GetConsumerDeadLetteredResponseDTO } from './get-consumer-dead-lettered.response.DTO';
4
4
  export declare const GetConsumerDeadLetteredHandler: TRouteControllerActionHandler<GetConsumerDeadLetteredRequestDTO, GetConsumerDeadLetteredResponseDTO>;
@@ -0,0 +1,3 @@
1
+ import { ConsumerTimeSeriesRequestDTO } from '../../../../../common/dto/queues/consumer-time-series-request.DTO';
2
+ export declare class GetConsumerDeadLetteredRequestDTO extends ConsumerTimeSeriesRequestDTO {
3
+ }
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.GetConsumerDeadLetteredRequestDTO = void 0;
4
- const consumer_time_series_request_DTO_1 = require("../../../../../../common/dto/queues/consumer-time-series-request.DTO");
4
+ const consumer_time_series_request_DTO_1 = require("../../../../../common/dto/queues/consumer-time-series-request.DTO");
5
5
  class GetConsumerDeadLetteredRequestDTO extends consumer_time_series_request_DTO_1.ConsumerTimeSeriesRequestDTO {
6
6
  }
7
7
  exports.GetConsumerDeadLetteredRequestDTO = GetConsumerDeadLetteredRequestDTO;
@@ -0,0 +1,3 @@
1
+ import { TimeSeriesResponseDTO } from '../../../../../common/dto/time-series/time-series-response.DTO';
2
+ export declare class GetConsumerDeadLetteredResponseDTO extends TimeSeriesResponseDTO {
3
+ }
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.GetConsumerDeadLetteredResponseDTO = void 0;
4
- const time_series_response_DTO_1 = require("../../../../../../common/dto/time-series/time-series-response.DTO");
4
+ const time_series_response_DTO_1 = require("../../../../../common/dto/time-series/time-series-response.DTO");
5
5
  class GetConsumerDeadLetteredResponseDTO extends time_series_response_DTO_1.TimeSeriesResponseDTO {
6
6
  }
7
7
  exports.GetConsumerDeadLetteredResponseDTO = GetConsumerDeadLetteredResponseDTO;
@@ -0,0 +1,2 @@
1
+ import { IRouteController } from '../../../lib/routing';
2
+ export declare const consumersController: IRouteController;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.consumersController = void 0;
4
+ const controller_1 = require("./consumer/time-series/controller");
5
+ exports.consumersController = {
6
+ path: '/consumers',
7
+ actions: [controller_1.controller],
8
+ };
9
+ //# sourceMappingURL=consumers.controller.js.map
@@ -10,7 +10,7 @@ const controller_2 = require("./acknowledged-messages/controller");
10
10
  const controller_3 = require("./pending-messages-with-priority/controller");
11
11
  const controller_4 = require("./pending-messages/controller");
12
12
  const controller_5 = require("./time-series/controller");
13
- const controller_6 = require("./consumer/time-series/controller");
13
+ const controller_6 = require("./rate-limiting/controller");
14
14
  exports.queueController = {
15
15
  path: '/:queueName',
16
16
  actions: [
@@ -0,0 +1,4 @@
1
+ import { TRouteControllerActionHandler } from '../../../../../../lib/routing';
2
+ import { ClearRateLimitRequestDTO } from './clear-rate-limit.request.DTO';
3
+ import { ClearRateLimitResponseDTO } from './clear-rate-limit.response.DTO';
4
+ export declare const ClearRateLimitHandler: TRouteControllerActionHandler<ClearRateLimitRequestDTO, ClearRateLimitResponseDTO>;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ClearRateLimitHandler = void 0;
13
+ const ClearRateLimitHandler = (app) => {
14
+ return (ctx) => __awaiter(void 0, void 0, void 0, function* () {
15
+ const { queuesService } = app.context.services;
16
+ return queuesService.clearQueueRateLimit(ctx.state.dto);
17
+ });
18
+ };
19
+ exports.ClearRateLimitHandler = ClearRateLimitHandler;
20
+ //# sourceMappingURL=clear-rate-limit.handler.js.map
@@ -0,0 +1,3 @@
1
+ import { QueueRequestDTO } from '../../../../../common/dto/queues/queue-request.DTO';
2
+ export declare class ClearRateLimitRequestDTO extends QueueRequestDTO {
3
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ClearRateLimitRequestDTO = void 0;
4
+ const queue_request_DTO_1 = require("../../../../../common/dto/queues/queue-request.DTO");
5
+ class ClearRateLimitRequestDTO extends queue_request_DTO_1.QueueRequestDTO {
6
+ }
7
+ exports.ClearRateLimitRequestDTO = ClearRateLimitRequestDTO;
8
+ //# sourceMappingURL=clear-rate-limit.request.DTO.js.map
@@ -0,0 +1,3 @@
1
+ import { NoContentHttpResponseDTO } from '../../../../../common/dto/no-content-http-response.DTO';
2
+ export declare class ClearRateLimitResponseDTO extends NoContentHttpResponseDTO {
3
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ClearRateLimitResponseDTO = void 0;
4
+ const no_content_http_response_DTO_1 = require("../../../../../common/dto/no-content-http-response.DTO");
5
+ class ClearRateLimitResponseDTO extends no_content_http_response_DTO_1.NoContentHttpResponseDTO {
6
+ }
7
+ exports.ClearRateLimitResponseDTO = ClearRateLimitResponseDTO;
8
+ //# sourceMappingURL=clear-rate-limit.response.DTO.js.map
@@ -0,0 +1,2 @@
1
+ import { IRouteController } from '../../../../../lib/routing';
2
+ export declare const controller: IRouteController;
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.controller = void 0;
4
+ const routing_1 = require("../../../../../lib/routing");
5
+ const set_rate_limit_handler_1 = require("./set-rate-limit/set-rate-limit.handler");
6
+ const set_rate_limit_request_DTO_1 = require("./set-rate-limit/set-rate-limit.request.DTO");
7
+ const set_rate_limit_response_DTO_1 = require("./set-rate-limit/set-rate-limit.response.DTO");
8
+ const get_rate_limit_handler_1 = require("./get-rate-limit/get-rate-limit.handler");
9
+ const get_rate_limit_request_DTO_1 = require("./get-rate-limit/get-rate-limit.request.DTO");
10
+ const get_rate_limit_response_DTO_1 = require("./get-rate-limit/get-rate-limit.response.DTO");
11
+ const clear_rate_limit_handler_1 = require("./clear-rate-limit/clear-rate-limit.handler");
12
+ const clear_rate_limit_request_DTO_1 = require("./clear-rate-limit/clear-rate-limit.request.DTO");
13
+ const clear_rate_limit_response_DTO_1 = require("./clear-rate-limit/clear-rate-limit.response.DTO");
14
+ exports.controller = {
15
+ path: '/rate-limit',
16
+ actions: [
17
+ {
18
+ path: '/',
19
+ method: routing_1.ERouteControllerActionMethod.POST,
20
+ payload: [
21
+ routing_1.ERouteControllerActionPayload.PATH,
22
+ routing_1.ERouteControllerActionPayload.BODY,
23
+ ],
24
+ Handler: set_rate_limit_handler_1.SetRateLimitHandler,
25
+ RequestDTO: set_rate_limit_request_DTO_1.SetRateLimitRequestDTO,
26
+ ResponseDTO: set_rate_limit_response_DTO_1.SetRateLimitResponseDTO,
27
+ },
28
+ {
29
+ path: '/',
30
+ method: routing_1.ERouteControllerActionMethod.GET,
31
+ payload: [routing_1.ERouteControllerActionPayload.PATH],
32
+ Handler: get_rate_limit_handler_1.GetRateLimitHandler,
33
+ RequestDTO: get_rate_limit_request_DTO_1.GetRateLimitRequestDTO,
34
+ ResponseDTO: get_rate_limit_response_DTO_1.GetRateLimitResponseDTO,
35
+ },
36
+ {
37
+ path: '/',
38
+ method: routing_1.ERouteControllerActionMethod.DELETE,
39
+ payload: [routing_1.ERouteControllerActionPayload.PATH],
40
+ Handler: clear_rate_limit_handler_1.ClearRateLimitHandler,
41
+ RequestDTO: clear_rate_limit_request_DTO_1.ClearRateLimitRequestDTO,
42
+ ResponseDTO: clear_rate_limit_response_DTO_1.ClearRateLimitResponseDTO,
43
+ },
44
+ ],
45
+ };
46
+ //# sourceMappingURL=controller.js.map
@@ -0,0 +1,4 @@
1
+ import { TRouteControllerActionHandler } from '../../../../../../lib/routing';
2
+ import { GetRateLimitRequestDTO } from './get-rate-limit.request.DTO';
3
+ import { GetRateLimitResponseDTO } from './get-rate-limit.response.DTO';
4
+ export declare const GetRateLimitHandler: TRouteControllerActionHandler<GetRateLimitRequestDTO, GetRateLimitResponseDTO>;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.GetRateLimitHandler = void 0;
13
+ const GetRateLimitHandler = (app) => {
14
+ return (ctx) => __awaiter(void 0, void 0, void 0, function* () {
15
+ const { queuesService } = app.context.services;
16
+ return queuesService.getQueueRateLimit(ctx.state.dto);
17
+ });
18
+ };
19
+ exports.GetRateLimitHandler = GetRateLimitHandler;
20
+ //# sourceMappingURL=get-rate-limit.handler.js.map
@@ -0,0 +1,3 @@
1
+ import { QueueRequestDTO } from '../../../../../common/dto/queues/queue-request.DTO';
2
+ export declare class GetRateLimitRequestDTO extends QueueRequestDTO {
3
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GetRateLimitRequestDTO = void 0;
4
+ const queue_request_DTO_1 = require("../../../../../common/dto/queues/queue-request.DTO");
5
+ class GetRateLimitRequestDTO extends queue_request_DTO_1.QueueRequestDTO {
6
+ }
7
+ exports.GetRateLimitRequestDTO = GetRateLimitRequestDTO;
8
+ //# sourceMappingURL=get-rate-limit.request.DTO.js.map
@@ -0,0 +1,11 @@
1
+ export declare class GetRateLimitResponseBodyDataDTO {
2
+ interval: number;
3
+ limit: number;
4
+ }
5
+ export declare class GetRateLimitResponseBodyDTO {
6
+ data?: GetRateLimitResponseBodyDataDTO | null;
7
+ }
8
+ export declare class GetRateLimitResponseDTO {
9
+ status: number;
10
+ body: GetRateLimitResponseBodyDTO;
11
+ }
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.GetRateLimitResponseDTO = exports.GetRateLimitResponseBodyDTO = exports.GetRateLimitResponseBodyDataDTO = void 0;
13
+ const class_validator_1 = require("class-validator");
14
+ const class_transformer_1 = require("class-transformer");
15
+ class GetRateLimitResponseBodyDataDTO {
16
+ }
17
+ __decorate([
18
+ (0, class_validator_1.IsNumber)(),
19
+ (0, class_transformer_1.Type)(() => Number),
20
+ __metadata("design:type", Number)
21
+ ], GetRateLimitResponseBodyDataDTO.prototype, "interval", void 0);
22
+ __decorate([
23
+ (0, class_validator_1.IsNumber)(),
24
+ (0, class_transformer_1.Type)(() => Number),
25
+ __metadata("design:type", Number)
26
+ ], GetRateLimitResponseBodyDataDTO.prototype, "limit", void 0);
27
+ exports.GetRateLimitResponseBodyDataDTO = GetRateLimitResponseBodyDataDTO;
28
+ class GetRateLimitResponseBodyDTO {
29
+ constructor() {
30
+ this.data = null;
31
+ }
32
+ }
33
+ __decorate([
34
+ (0, class_validator_1.ValidateNested)(),
35
+ (0, class_transformer_1.Type)(() => GetRateLimitResponseBodyDataDTO),
36
+ (0, class_validator_1.IsOptional)(),
37
+ __metadata("design:type", Object)
38
+ ], GetRateLimitResponseBodyDTO.prototype, "data", void 0);
39
+ exports.GetRateLimitResponseBodyDTO = GetRateLimitResponseBodyDTO;
40
+ class GetRateLimitResponseDTO {
41
+ }
42
+ __decorate([
43
+ (0, class_validator_1.IsInt)(),
44
+ __metadata("design:type", Number)
45
+ ], GetRateLimitResponseDTO.prototype, "status", void 0);
46
+ __decorate([
47
+ (0, class_validator_1.ValidateNested)(),
48
+ (0, class_transformer_1.Type)(() => GetRateLimitResponseBodyDTO),
49
+ __metadata("design:type", GetRateLimitResponseBodyDTO)
50
+ ], GetRateLimitResponseDTO.prototype, "body", void 0);
51
+ exports.GetRateLimitResponseDTO = GetRateLimitResponseDTO;
52
+ //# sourceMappingURL=get-rate-limit.response.DTO.js.map
@@ -0,0 +1,4 @@
1
+ import { TRouteControllerActionHandler } from '../../../../../../lib/routing';
2
+ import { SetRateLimitRequestDTO } from './set-rate-limit.request.DTO';
3
+ import { SetRateLimitResponseDTO } from './set-rate-limit.response.DTO';
4
+ export declare const SetRateLimitHandler: TRouteControllerActionHandler<SetRateLimitRequestDTO, SetRateLimitResponseDTO>;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.SetRateLimitHandler = void 0;
13
+ const SetRateLimitHandler = (app) => {
14
+ return (ctx) => __awaiter(void 0, void 0, void 0, function* () {
15
+ const { queuesService } = app.context.services;
16
+ return queuesService.setQueueRateLimit(ctx.state.dto);
17
+ });
18
+ };
19
+ exports.SetRateLimitHandler = SetRateLimitHandler;
20
+ //# sourceMappingURL=set-rate-limit.handler.js.map
@@ -0,0 +1,5 @@
1
+ import { QueueRequestDTO } from '../../../../../common/dto/queues/queue-request.DTO';
2
+ export declare class SetRateLimitRequestDTO extends QueueRequestDTO {
3
+ interval: number;
4
+ limit: number;
5
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.SetRateLimitRequestDTO = void 0;
13
+ const class_validator_1 = require("class-validator");
14
+ const class_transformer_1 = require("class-transformer");
15
+ const queue_request_DTO_1 = require("../../../../../common/dto/queues/queue-request.DTO");
16
+ class SetRateLimitRequestDTO extends queue_request_DTO_1.QueueRequestDTO {
17
+ }
18
+ __decorate([
19
+ (0, class_validator_1.IsNumber)(),
20
+ (0, class_validator_1.Min)(1000),
21
+ (0, class_transformer_1.Type)(() => Number),
22
+ __metadata("design:type", Number)
23
+ ], SetRateLimitRequestDTO.prototype, "interval", void 0);
24
+ __decorate([
25
+ (0, class_validator_1.IsNumber)(),
26
+ (0, class_validator_1.Min)(1),
27
+ (0, class_transformer_1.Type)(() => Number),
28
+ __metadata("design:type", Number)
29
+ ], SetRateLimitRequestDTO.prototype, "limit", void 0);
30
+ exports.SetRateLimitRequestDTO = SetRateLimitRequestDTO;
31
+ //# sourceMappingURL=set-rate-limit.request.DTO.js.map
@@ -0,0 +1,3 @@
1
+ import { NoContentHttpResponseDTO } from '../../../../../common/dto/no-content-http-response.DTO';
2
+ export declare class SetRateLimitResponseDTO extends NoContentHttpResponseDTO {
3
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SetRateLimitResponseDTO = void 0;
4
+ const no_content_http_response_DTO_1 = require("../../../../../common/dto/no-content-http-response.DTO");
5
+ class SetRateLimitResponseDTO extends no_content_http_response_DTO_1.NoContentHttpResponseDTO {
6
+ }
7
+ exports.SetRateLimitResponseDTO = SetRateLimitResponseDTO;
8
+ //# sourceMappingURL=set-rate-limit.response.DTO.js.map
@@ -1,4 +1,4 @@
1
- import { QueueTimeSeriesRequestDTO } from './queue-time-series-request.DTO';
2
- export declare class ConsumerTimeSeriesRequestDTO extends QueueTimeSeriesRequestDTO {
1
+ import { TimeSeriesRequestDTO } from '../time-series/time-series-request.DTO';
2
+ export declare class ConsumerTimeSeriesRequestDTO extends TimeSeriesRequestDTO {
3
3
  consumerId: string;
4
4
  }
@@ -11,8 +11,8 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.ConsumerTimeSeriesRequestDTO = void 0;
13
13
  const class_validator_1 = require("class-validator");
14
- const queue_time_series_request_DTO_1 = require("./queue-time-series-request.DTO");
15
- class ConsumerTimeSeriesRequestDTO extends queue_time_series_request_DTO_1.QueueTimeSeriesRequestDTO {
14
+ const time_series_request_DTO_1 = require("../time-series/time-series-request.DTO");
15
+ class ConsumerTimeSeriesRequestDTO extends time_series_request_DTO_1.TimeSeriesRequestDTO {
16
16
  }
17
17
  __decorate([
18
18
  (0, class_validator_1.IsUUID)('4'),
@@ -51,9 +51,10 @@ declare const RedisClientPrototypeAsync: {
51
51
  evalshaAsync: (hash: string, args: string | number | (string | number)[]) => Promise<unknown>;
52
52
  getAsync: (key: string) => Promise<string>;
53
53
  setAsync: (key: string, value: string, expiryMode: "EX" | "PX" | undefined, time: number | undefined, flag: string | undefined) => Promise<string>;
54
- delAsync: (key: string) => Promise<number>;
54
+ delAsync: (key: string | string[]) => Promise<number>;
55
55
  llenAsync: (key: string) => Promise<number>;
56
56
  lmoveAsync: (source: string, destination: string, from: "LEFT" | "RIGHT", to: "LEFT" | "RIGHT") => Promise<string>;
57
+ lpoprpushextraAsync: (source: string, destination: string, listSize: number, expire: number) => Promise<string>;
57
58
  lpoprpushAsync: (source: string, destination: string) => Promise<string>;
58
59
  runScriptAsync: (scriptName: import("../system/common/redis-client/lua-scripts").ELuaScriptName, keys: string[], args: (string | number)[]) => Promise<unknown>;
59
60
  zremrangebyscoreAsync: (source: string, min: string | number, max: string | number) => Promise<number>;