@gravito/stream 1.0.0-alpha.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 (148) hide show
  1. package/README.md +319 -0
  2. package/dist/Consumer.d.ts +67 -0
  3. package/dist/Consumer.d.ts.map +1 -0
  4. package/dist/Job.d.ts +76 -0
  5. package/dist/Job.d.ts.map +1 -0
  6. package/dist/OrbitQueue.d.ts +74 -0
  7. package/dist/OrbitQueue.d.ts.map +1 -0
  8. package/dist/QueueManager.d.ts +86 -0
  9. package/dist/QueueManager.d.ts.map +1 -0
  10. package/dist/Queueable.d.ts +63 -0
  11. package/dist/Queueable.d.ts.map +1 -0
  12. package/dist/Worker.d.ts +48 -0
  13. package/dist/Worker.d.ts.map +1 -0
  14. package/dist/core/src/ConfigManager.d.ts +26 -0
  15. package/dist/core/src/ConfigManager.d.ts.map +1 -0
  16. package/dist/core/src/Container.d.ts +39 -0
  17. package/dist/core/src/Container.d.ts.map +1 -0
  18. package/dist/core/src/Event.d.ts +6 -0
  19. package/dist/core/src/Event.d.ts.map +1 -0
  20. package/dist/core/src/EventManager.d.ts +124 -0
  21. package/dist/core/src/EventManager.d.ts.map +1 -0
  22. package/dist/core/src/GlobalErrorHandlers.d.ts +32 -0
  23. package/dist/core/src/GlobalErrorHandlers.d.ts.map +1 -0
  24. package/dist/core/src/HookManager.d.ts +29 -0
  25. package/dist/core/src/HookManager.d.ts.map +1 -0
  26. package/dist/core/src/Listener.d.ts +5 -0
  27. package/dist/core/src/Listener.d.ts.map +1 -0
  28. package/dist/core/src/Logger.d.ts +21 -0
  29. package/dist/core/src/Logger.d.ts.map +1 -0
  30. package/dist/core/src/PlanetCore.d.ts +116 -0
  31. package/dist/core/src/PlanetCore.d.ts.map +1 -0
  32. package/dist/core/src/Route.d.ts +13 -0
  33. package/dist/core/src/Route.d.ts.map +1 -0
  34. package/dist/core/src/Router.d.ts +168 -0
  35. package/dist/core/src/Router.d.ts.map +1 -0
  36. package/dist/core/src/ServiceProvider.d.ts +17 -0
  37. package/dist/core/src/ServiceProvider.d.ts.map +1 -0
  38. package/dist/core/src/exceptions/AuthenticationException.d.ts +5 -0
  39. package/dist/core/src/exceptions/AuthenticationException.d.ts.map +1 -0
  40. package/dist/core/src/exceptions/AuthorizationException.d.ts +5 -0
  41. package/dist/core/src/exceptions/AuthorizationException.d.ts.map +1 -0
  42. package/dist/core/src/exceptions/GravitoException.d.ts +15 -0
  43. package/dist/core/src/exceptions/GravitoException.d.ts.map +1 -0
  44. package/dist/core/src/exceptions/ModelNotFoundException.d.ts +7 -0
  45. package/dist/core/src/exceptions/ModelNotFoundException.d.ts.map +1 -0
  46. package/dist/core/src/exceptions/ValidationException.d.ts +15 -0
  47. package/dist/core/src/exceptions/ValidationException.d.ts.map +1 -0
  48. package/dist/core/src/exceptions/index.d.ts +6 -0
  49. package/dist/core/src/exceptions/index.d.ts.map +1 -0
  50. package/dist/core/src/helpers/Arr.d.ts +15 -0
  51. package/dist/core/src/helpers/Arr.d.ts.map +1 -0
  52. package/dist/core/src/helpers/Str.d.ts +19 -0
  53. package/dist/core/src/helpers/Str.d.ts.map +1 -0
  54. package/dist/core/src/helpers/data.d.ts +6 -0
  55. package/dist/core/src/helpers/data.d.ts.map +1 -0
  56. package/dist/core/src/helpers/errors.d.ts +13 -0
  57. package/dist/core/src/helpers/errors.d.ts.map +1 -0
  58. package/dist/core/src/helpers/response.d.ts +19 -0
  59. package/dist/core/src/helpers/response.d.ts.map +1 -0
  60. package/dist/core/src/helpers.d.ts +39 -0
  61. package/dist/core/src/helpers.d.ts.map +1 -0
  62. package/dist/core/src/http/CookieJar.d.ts +34 -0
  63. package/dist/core/src/http/CookieJar.d.ts.map +1 -0
  64. package/dist/core/src/http/middleware/ThrottleRequests.d.ts +13 -0
  65. package/dist/core/src/http/middleware/ThrottleRequests.d.ts.map +1 -0
  66. package/dist/core/src/index.d.ts +32 -0
  67. package/dist/core/src/index.d.ts.map +1 -0
  68. package/dist/core/src/security/Encrypter.d.ts +25 -0
  69. package/dist/core/src/security/Encrypter.d.ts.map +1 -0
  70. package/dist/core/src/security/Hasher.d.ts +30 -0
  71. package/dist/core/src/security/Hasher.d.ts.map +1 -0
  72. package/dist/core/src/types/events.d.ts +95 -0
  73. package/dist/core/src/types/events.d.ts.map +1 -0
  74. package/dist/drivers/DatabaseDriver.d.ts +60 -0
  75. package/dist/drivers/DatabaseDriver.d.ts.map +1 -0
  76. package/dist/drivers/KafkaDriver.d.ts +134 -0
  77. package/dist/drivers/KafkaDriver.d.ts.map +1 -0
  78. package/dist/drivers/MemoryDriver.d.ts +45 -0
  79. package/dist/drivers/MemoryDriver.d.ts.map +1 -0
  80. package/dist/drivers/QueueDriver.d.ts +89 -0
  81. package/dist/drivers/QueueDriver.d.ts.map +1 -0
  82. package/dist/drivers/RedisDriver.d.ts +79 -0
  83. package/dist/drivers/RedisDriver.d.ts.map +1 -0
  84. package/dist/drivers/SQSDriver.d.ts +100 -0
  85. package/dist/drivers/SQSDriver.d.ts.map +1 -0
  86. package/dist/index.cjs +32101 -0
  87. package/dist/index.cjs.map +422 -0
  88. package/dist/index.d.ts +45 -0
  89. package/dist/index.d.ts.map +1 -0
  90. package/dist/index.mjs +32095 -0
  91. package/dist/index.mjs.map +422 -0
  92. package/dist/orbit-db/src/DBService.d.ts +270 -0
  93. package/dist/orbit-db/src/DBService.d.ts.map +1 -0
  94. package/dist/orbit-db/src/EventBus.d.ts +53 -0
  95. package/dist/orbit-db/src/EventBus.d.ts.map +1 -0
  96. package/dist/orbit-db/src/MigrationDriver.d.ts +55 -0
  97. package/dist/orbit-db/src/MigrationDriver.d.ts.map +1 -0
  98. package/dist/orbit-db/src/Model.d.ts +564 -0
  99. package/dist/orbit-db/src/Model.d.ts.map +1 -0
  100. package/dist/orbit-db/src/ModelCollection.d.ts +35 -0
  101. package/dist/orbit-db/src/ModelCollection.d.ts.map +1 -0
  102. package/dist/orbit-db/src/index.d.ts +34 -0
  103. package/dist/orbit-db/src/index.d.ts.map +1 -0
  104. package/dist/orbit-db/src/types.d.ts +146 -0
  105. package/dist/orbit-db/src/types.d.ts.map +1 -0
  106. package/dist/orbit-queue/src/Consumer.d.ts +67 -0
  107. package/dist/orbit-queue/src/Consumer.d.ts.map +1 -0
  108. package/dist/orbit-queue/src/Job.d.ts +76 -0
  109. package/dist/orbit-queue/src/Job.d.ts.map +1 -0
  110. package/dist/orbit-queue/src/OrbitQueue.d.ts +74 -0
  111. package/dist/orbit-queue/src/OrbitQueue.d.ts.map +1 -0
  112. package/dist/orbit-queue/src/QueueManager.d.ts +86 -0
  113. package/dist/orbit-queue/src/QueueManager.d.ts.map +1 -0
  114. package/dist/orbit-queue/src/Queueable.d.ts +63 -0
  115. package/dist/orbit-queue/src/Queueable.d.ts.map +1 -0
  116. package/dist/orbit-queue/src/Worker.d.ts +48 -0
  117. package/dist/orbit-queue/src/Worker.d.ts.map +1 -0
  118. package/dist/orbit-queue/src/drivers/DatabaseDriver.d.ts +60 -0
  119. package/dist/orbit-queue/src/drivers/DatabaseDriver.d.ts.map +1 -0
  120. package/dist/orbit-queue/src/drivers/KafkaDriver.d.ts +134 -0
  121. package/dist/orbit-queue/src/drivers/KafkaDriver.d.ts.map +1 -0
  122. package/dist/orbit-queue/src/drivers/MemoryDriver.d.ts +45 -0
  123. package/dist/orbit-queue/src/drivers/MemoryDriver.d.ts.map +1 -0
  124. package/dist/orbit-queue/src/drivers/QueueDriver.d.ts +89 -0
  125. package/dist/orbit-queue/src/drivers/QueueDriver.d.ts.map +1 -0
  126. package/dist/orbit-queue/src/drivers/RedisDriver.d.ts +79 -0
  127. package/dist/orbit-queue/src/drivers/RedisDriver.d.ts.map +1 -0
  128. package/dist/orbit-queue/src/drivers/SQSDriver.d.ts +100 -0
  129. package/dist/orbit-queue/src/drivers/SQSDriver.d.ts.map +1 -0
  130. package/dist/orbit-queue/src/index.d.ts +45 -0
  131. package/dist/orbit-queue/src/index.d.ts.map +1 -0
  132. package/dist/orbit-queue/src/serializers/ClassNameSerializer.d.ts +46 -0
  133. package/dist/orbit-queue/src/serializers/ClassNameSerializer.d.ts.map +1 -0
  134. package/dist/orbit-queue/src/serializers/JobSerializer.d.ts +36 -0
  135. package/dist/orbit-queue/src/serializers/JobSerializer.d.ts.map +1 -0
  136. package/dist/orbit-queue/src/serializers/JsonSerializer.d.ts +32 -0
  137. package/dist/orbit-queue/src/serializers/JsonSerializer.d.ts.map +1 -0
  138. package/dist/orbit-queue/src/types.d.ts +85 -0
  139. package/dist/orbit-queue/src/types.d.ts.map +1 -0
  140. package/dist/serializers/ClassNameSerializer.d.ts +46 -0
  141. package/dist/serializers/ClassNameSerializer.d.ts.map +1 -0
  142. package/dist/serializers/JobSerializer.d.ts +36 -0
  143. package/dist/serializers/JobSerializer.d.ts.map +1 -0
  144. package/dist/serializers/JsonSerializer.d.ts +32 -0
  145. package/dist/serializers/JsonSerializer.d.ts.map +1 -0
  146. package/dist/types.d.ts +85 -0
  147. package/dist/types.d.ts.map +1 -0
  148. package/package.json +57 -0
@@ -0,0 +1,95 @@
1
+ /**
2
+ * Event system type definitions.
3
+ */
4
+ /**
5
+ * Listener interface.
6
+ *
7
+ * All event listeners must implement this interface.
8
+ */
9
+ export interface Listener<TEvent extends Event = Event> {
10
+ /**
11
+ * Handle an event.
12
+ * @param event - Event instance
13
+ */
14
+ handle(event: TEvent): Promise<void> | void;
15
+ }
16
+ /**
17
+ * Marker interface for listeners that should be queued.
18
+ *
19
+ * Listeners implementing this interface can be dispatched asynchronously via a queue.
20
+ */
21
+ export interface ShouldQueue {
22
+ /**
23
+ * Queue name (optional).
24
+ */
25
+ queue?: string;
26
+ /**
27
+ * Connection name (optional).
28
+ */
29
+ connection?: string;
30
+ /**
31
+ * Delay before execution (seconds).
32
+ */
33
+ delay?: number;
34
+ }
35
+ /**
36
+ * Marker interface for events that should be broadcast.
37
+ *
38
+ * Events implementing this interface can be automatically broadcast to clients.
39
+ */
40
+ export interface ShouldBroadcast {
41
+ /**
42
+ * Define the broadcast channel.
43
+ * @returns Channel name or channel object
44
+ */
45
+ broadcastOn(): string | Channel;
46
+ /**
47
+ * Define broadcast payload (optional).
48
+ * If omitted, public event properties will be used.
49
+ * @returns Broadcast payload
50
+ */
51
+ broadcastWith?(): Record<string, unknown>;
52
+ /**
53
+ * Define the broadcast event name (optional).
54
+ * If omitted, the event class name will be used.
55
+ * @returns Event name
56
+ */
57
+ broadcastAs?(): string;
58
+ }
59
+ /**
60
+ * Channel interface.
61
+ */
62
+ export interface Channel {
63
+ /**
64
+ * Channel name.
65
+ */
66
+ name: string;
67
+ /**
68
+ * Channel type.
69
+ */
70
+ type: 'public' | 'private' | 'presence';
71
+ }
72
+ /**
73
+ * Base event class.
74
+ *
75
+ * All events should extend this class.
76
+ */
77
+ export declare abstract class Event {
78
+ /**
79
+ * Whether this event should be broadcast.
80
+ */
81
+ shouldBroadcast(): boolean;
82
+ /**
83
+ * Get broadcast channel.
84
+ */
85
+ getBroadcastChannel(): string | Channel | null;
86
+ /**
87
+ * Get broadcast payload.
88
+ */
89
+ getBroadcastData(): Record<string, unknown>;
90
+ /**
91
+ * Get broadcast event name.
92
+ */
93
+ getBroadcastEventName(): string;
94
+ }
95
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../../core/src/types/events.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;GAIG;AACH,MAAM,WAAW,QAAQ,CAAC,MAAM,SAAS,KAAK,GAAG,KAAK;IACpD;;;OAGG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CAC5C;AAED;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,WAAW,IAAI,MAAM,GAAG,OAAO,CAAA;IAE/B;;;;OAIG;IACH,aAAa,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAEzC;;;;OAIG;IACH,WAAW,CAAC,IAAI,MAAM,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IAEZ;;OAEG;IACH,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAA;CACxC;AAED;;;;GAIG;AACH,8BAAsB,KAAK;IACzB;;OAEG;IACH,eAAe,IAAI,OAAO;IAO1B;;OAEG;IACH,mBAAmB,IAAI,MAAM,GAAG,OAAO,GAAG,IAAI;IAO9C;;OAEG;IACH,gBAAgB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAkB3C;;OAEG;IACH,qBAAqB,IAAI,MAAM;CAUhC"}
@@ -0,0 +1,60 @@
1
+ import type { DBService } from '@gravito/orbit-db';
2
+ import type { SerializedJob } from '../types';
3
+ import type { QueueDriver } from './QueueDriver';
4
+ /**
5
+ * Database driver configuration.
6
+ */
7
+ export interface DatabaseDriverConfig {
8
+ /**
9
+ * Table name (default: `jobs`).
10
+ */
11
+ table?: string;
12
+ /**
13
+ * DBService instance (from `orbit-db`).
14
+ * If not provided, it can be resolved from Context in OrbitQueue.
15
+ */
16
+ dbService?: DBService;
17
+ }
18
+ /**
19
+ * Database Driver
20
+ *
21
+ * Uses a database as the queue backend.
22
+ * Reuses the `orbit-db` connection instead of creating a new connection.
23
+ *
24
+ * Requires `@gravito/orbit-db` to be installed and configured.
25
+ *
26
+ * @example
27
+ * ```typescript
28
+ * // Get DBService from Context
29
+ * const dbService = c.get('db')
30
+ * const driver = new DatabaseDriver({ dbService, table: 'jobs' })
31
+ *
32
+ * await driver.push('default', serializedJob)
33
+ * ```
34
+ */
35
+ export declare class DatabaseDriver implements QueueDriver {
36
+ private tableName;
37
+ private dbService;
38
+ constructor(config: DatabaseDriverConfig);
39
+ /**
40
+ * Push a job to a queue.
41
+ */
42
+ push(queue: string, job: SerializedJob): Promise<void>;
43
+ /**
44
+ * Pop a job from the queue (FIFO, with delay support).
45
+ */
46
+ pop(queue: string): Promise<SerializedJob | null>;
47
+ /**
48
+ * Get queue size.
49
+ */
50
+ size(queue: string): Promise<number>;
51
+ /**
52
+ * Clear a queue.
53
+ */
54
+ clear(queue: string): Promise<void>;
55
+ /**
56
+ * Push multiple jobs.
57
+ */
58
+ pushMany(queue: string, jobs: SerializedJob[]): Promise<void>;
59
+ }
60
+ //# sourceMappingURL=DatabaseDriver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DatabaseDriver.d.ts","sourceRoot":"","sources":["../../src/drivers/DatabaseDriver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAEhD;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd;;;OAGG;IACH,SAAS,CAAC,EAAE,SAAS,CAAA;CACtB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,cAAe,YAAW,WAAW;IAChD,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,SAAS,CAAW;gBAEhB,MAAM,EAAE,oBAAoB;IAWxC;;OAEG;IACG,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAa5D;;OAEG;IACG,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAyEvD;;OAEG;IACG,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAa1C;;OAEG;IACG,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC;;OAEG;IACG,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAoBpE"}
@@ -0,0 +1,134 @@
1
+ import type { SerializedJob, TopicOptions } from '../types';
2
+ import type { QueueDriver } from './QueueDriver';
3
+ /**
4
+ * Kafka driver configuration.
5
+ */
6
+ export interface KafkaDriverConfig {
7
+ /**
8
+ * Kafka client instance (kafkajs).
9
+ */
10
+ client: {
11
+ producer: () => {
12
+ connect: () => Promise<void>;
13
+ send: (args: {
14
+ topic: string;
15
+ messages: Array<{
16
+ key?: string;
17
+ value: string;
18
+ }>;
19
+ }) => Promise<void>;
20
+ disconnect: () => Promise<void>;
21
+ };
22
+ admin: () => {
23
+ connect: () => Promise<void>;
24
+ createTopics: (args: {
25
+ topics: Array<{
26
+ topic: string;
27
+ numPartitions?: number;
28
+ replicationFactor?: number;
29
+ }>;
30
+ }) => Promise<void>;
31
+ deleteTopics: (args: {
32
+ topics: string[];
33
+ }) => Promise<void>;
34
+ disconnect: () => Promise<void>;
35
+ };
36
+ consumer: (args: {
37
+ groupId: string;
38
+ }) => {
39
+ connect: () => Promise<void>;
40
+ subscribe: (args: {
41
+ topics: string[];
42
+ }) => Promise<void>;
43
+ run: (args: {
44
+ eachMessage: (args: {
45
+ topic: string;
46
+ partition: number;
47
+ message: {
48
+ key?: Buffer;
49
+ value: Buffer;
50
+ offset: string;
51
+ };
52
+ }) => Promise<void>;
53
+ }) => Promise<void>;
54
+ disconnect: () => Promise<void>;
55
+ };
56
+ };
57
+ /**
58
+ * Consumer group ID (for consuming messages).
59
+ */
60
+ consumerGroupId?: string;
61
+ }
62
+ /**
63
+ * Kafka Driver
64
+ *
65
+ * Uses Apache Kafka as the queue backend.
66
+ * Supports topic management, consumer groups, and batch operations.
67
+ *
68
+ * Requires `kafkajs`.
69
+ *
70
+ * @example
71
+ * ```typescript
72
+ * import { Kafka } from 'kafkajs'
73
+ *
74
+ * const kafka = new Kafka({
75
+ * brokers: ['localhost:9092'],
76
+ * clientId: 'gravito-app'
77
+ * })
78
+ *
79
+ * const driver = new KafkaDriver({ client: kafka, consumerGroupId: 'workers' })
80
+ * await driver.push('default', serializedJob)
81
+ * ```
82
+ */
83
+ export declare class KafkaDriver implements QueueDriver {
84
+ private client;
85
+ private consumerGroupId;
86
+ private producer?;
87
+ private admin?;
88
+ constructor(config: KafkaDriverConfig);
89
+ /**
90
+ * Ensure the producer is connected.
91
+ */
92
+ private ensureProducer;
93
+ /**
94
+ * Ensure the admin client is connected.
95
+ */
96
+ private ensureAdmin;
97
+ /**
98
+ * Push a job to a topic.
99
+ */
100
+ push(queue: string, job: SerializedJob): Promise<void>;
101
+ /**
102
+ * Pop is not supported for Kafka.
103
+ *
104
+ * Note: Kafka uses a push-based model, so you should use `subscribe()`.
105
+ */
106
+ pop(_queue: string): Promise<SerializedJob | null>;
107
+ /**
108
+ * Kafka does not provide a direct queue size.
109
+ *
110
+ * Returns 0; use Kafka tooling/metrics for lag/size insights.
111
+ */
112
+ size(_queue: string): Promise<number>;
113
+ /**
114
+ * Clear a queue by deleting the topic.
115
+ */
116
+ clear(queue: string): Promise<void>;
117
+ /**
118
+ * Push multiple jobs.
119
+ */
120
+ pushMany(queue: string, jobs: SerializedJob[]): Promise<void>;
121
+ /**
122
+ * Create a topic.
123
+ */
124
+ createTopic(topic: string, options?: TopicOptions): Promise<void>;
125
+ /**
126
+ * Delete a topic.
127
+ */
128
+ deleteTopic(topic: string): Promise<void>;
129
+ /**
130
+ * Subscribe to a topic (push-based model).
131
+ */
132
+ subscribe(queue: string, callback: (job: SerializedJob) => Promise<void>): Promise<void>;
133
+ }
134
+ //# sourceMappingURL=KafkaDriver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KafkaDriver.d.ts","sourceRoot":"","sources":["../../src/drivers/KafkaDriver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAEhD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,MAAM,EAAE;QACN,QAAQ,EAAE,MAAM;YACd,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;YAC5B,IAAI,EAAE,CAAC,IAAI,EAAE;gBACX,KAAK,EAAE,MAAM,CAAA;gBACb,QAAQ,EAAE,KAAK,CAAC;oBAAE,GAAG,CAAC,EAAE,MAAM,CAAC;oBAAC,KAAK,EAAE,MAAM,CAAA;iBAAE,CAAC,CAAA;aACjD,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;YACnB,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;SAChC,CAAA;QACD,KAAK,EAAE,MAAM;YACX,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;YAC5B,YAAY,EAAE,CAAC,IAAI,EAAE;gBACnB,MAAM,EAAE,KAAK,CAAC;oBAAE,KAAK,EAAE,MAAM,CAAC;oBAAC,aAAa,CAAC,EAAE,MAAM,CAAC;oBAAC,iBAAiB,CAAC,EAAE,MAAM,CAAA;iBAAE,CAAC,CAAA;aACrF,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;YACnB,YAAY,EAAE,CAAC,IAAI,EAAE;gBAAE,MAAM,EAAE,MAAM,EAAE,CAAA;aAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;YAC3D,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;SAChC,CAAA;QACD,QAAQ,EAAE,CAAC,IAAI,EAAE;YAAE,OAAO,EAAE,MAAM,CAAA;SAAE,KAAK;YACvC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;YAC5B,SAAS,EAAE,CAAC,IAAI,EAAE;gBAAE,MAAM,EAAE,MAAM,EAAE,CAAA;aAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;YACxD,GAAG,EAAE,CAAC,IAAI,EAAE;gBACV,WAAW,EAAE,CAAC,IAAI,EAAE;oBAClB,KAAK,EAAE,MAAM,CAAA;oBACb,SAAS,EAAE,MAAM,CAAA;oBACjB,OAAO,EAAE;wBAAE,GAAG,CAAC,EAAE,MAAM,CAAC;wBAAC,KAAK,EAAE,MAAM,CAAC;wBAAC,MAAM,EAAE,MAAM,CAAA;qBAAE,CAAA;iBACzD,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;aACpB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;YACnB,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;SAChC,CAAA;KACF,CAAA;IAED;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,WAAY,YAAW,WAAW;IAC7C,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,eAAe,CAAQ;IAC/B,OAAO,CAAC,QAAQ,CAAC,CAAqD;IACtE,OAAO,CAAC,KAAK,CAAC,CAAkD;gBAEpD,MAAM,EAAE,iBAAiB;IASrC;;OAEG;YACW,cAAc;IAQ5B;;OAEG;YACW,WAAW;IAQzB;;OAEG;IACG,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAwB5D;;;;OAIG;IACG,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAKxD;;;;OAIG;IACG,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAK3C;;OAEG;IACG,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKzC;;OAEG;IACG,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BnE;;OAEG;IACG,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAavE;;OAEG;IACG,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/C;;OAEG;IACG,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAiC/F"}
@@ -0,0 +1,45 @@
1
+ import type { SerializedJob } from '../types';
2
+ import type { QueueDriver } from './QueueDriver';
3
+ /**
4
+ * Memory Driver
5
+ *
6
+ * In-memory driver for development and testing.
7
+ * All data is stored in memory and will be lost when the process restarts.
8
+ *
9
+ * Zero-config: works out of the box.
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * const driver = new MemoryDriver()
14
+ * await driver.push('default', serializedJob)
15
+ * const job = await driver.pop('default')
16
+ * ```
17
+ */
18
+ export declare class MemoryDriver implements QueueDriver {
19
+ private queues;
20
+ /**
21
+ * Push a job to a queue.
22
+ */
23
+ push(queue: string, job: SerializedJob): Promise<void>;
24
+ /**
25
+ * Pop a job from a queue (FIFO).
26
+ */
27
+ pop(queue: string): Promise<SerializedJob | null>;
28
+ /**
29
+ * Get queue size.
30
+ */
31
+ size(queue: string): Promise<number>;
32
+ /**
33
+ * Clear a queue.
34
+ */
35
+ clear(queue: string): Promise<void>;
36
+ /**
37
+ * Push multiple jobs.
38
+ */
39
+ pushMany(queue: string, jobs: SerializedJob[]): Promise<void>;
40
+ /**
41
+ * Pop multiple jobs.
42
+ */
43
+ popMany(queue: string, count: number): Promise<SerializedJob[]>;
44
+ }
45
+ //# sourceMappingURL=MemoryDriver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemoryDriver.d.ts","sourceRoot":"","sources":["../../src/drivers/MemoryDriver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAEhD;;;;;;;;;;;;;;GAcG;AACH,qBAAa,YAAa,YAAW,WAAW;IAC9C,OAAO,CAAC,MAAM,CAAqC;IAEnD;;OAEG;IACG,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAO5D;;OAEG;IACG,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAmBvD;;OAEG;IACG,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI1C;;OAEG;IACG,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC;;OAEG;IACG,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAOnE;;OAEG;IACG,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;CAYtE"}
@@ -0,0 +1,89 @@
1
+ import type { SerializedJob, TopicOptions } from '../types';
2
+ /**
3
+ * Queue driver interface.
4
+ *
5
+ * All queue drivers must implement this interface.
6
+ * Defines basic queue operations plus optional enterprise-grade capabilities.
7
+ *
8
+ * @example
9
+ * ```typescript
10
+ * class MyDriver implements QueueDriver {
11
+ * async push(queue: string, job: SerializedJob): Promise<void> {
12
+ * // push a job
13
+ * }
14
+ *
15
+ * async pop(queue: string): Promise<SerializedJob | null> {
16
+ * // pop a job
17
+ * }
18
+ *
19
+ * async size(queue: string): Promise<number> {
20
+ * // queue size
21
+ * }
22
+ *
23
+ * async clear(queue: string): Promise<void> {
24
+ * // clear queue
25
+ * }
26
+ * }
27
+ * ```
28
+ */
29
+ export interface QueueDriver {
30
+ /**
31
+ * Push a job to a queue.
32
+ * @param queue - Queue name
33
+ * @param job - Serialized job
34
+ */
35
+ push(queue: string, job: SerializedJob): Promise<void>;
36
+ /**
37
+ * Pop a job from a queue (non-blocking).
38
+ * @param queue - Queue name
39
+ * @returns Serialized job, or `null` if the queue is empty
40
+ */
41
+ pop(queue: string): Promise<SerializedJob | null>;
42
+ /**
43
+ * Get queue size.
44
+ * @param queue - Queue name
45
+ * @returns Number of jobs in the queue
46
+ */
47
+ size(queue: string): Promise<number>;
48
+ /**
49
+ * Clear a queue.
50
+ * @param queue - Queue name
51
+ */
52
+ clear(queue: string): Promise<void>;
53
+ /**
54
+ * Push multiple jobs (optional, higher throughput).
55
+ * @param queue - Queue name
56
+ * @param jobs - Serialized job array
57
+ */
58
+ pushMany?(queue: string, jobs: SerializedJob[]): Promise<void>;
59
+ /**
60
+ * Pop multiple jobs (optional, higher throughput).
61
+ * @param queue - Queue name
62
+ * @param count - Max number of jobs to pop
63
+ * @returns Serialized job array
64
+ */
65
+ popMany?(queue: string, count: number): Promise<SerializedJob[]>;
66
+ /**
67
+ * Acknowledge a message (enterprise capability, e.g. Kafka/SQS).
68
+ * @param messageId - Message ID
69
+ */
70
+ acknowledge?(messageId: string): Promise<void>;
71
+ /**
72
+ * Subscribe to a queue (push-based model, e.g. Kafka/SQS).
73
+ * @param queue - Queue name
74
+ * @param callback - Callback to process jobs
75
+ */
76
+ subscribe?(queue: string, callback: (job: SerializedJob) => Promise<void>): Promise<void>;
77
+ /**
78
+ * Create a topic (Kafka, etc.).
79
+ * @param topic - Topic name
80
+ * @param options - Topic options
81
+ */
82
+ createTopic?(topic: string, options?: TopicOptions): Promise<void>;
83
+ /**
84
+ * Delete a topic (Kafka, etc.).
85
+ * @param topic - Topic name
86
+ */
87
+ deleteTopic?(topic: string): Promise<void>;
88
+ }
89
+ //# sourceMappingURL=QueueDriver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueueDriver.d.ts","sourceRoot":"","sources":["../../src/drivers/QueueDriver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAE3D;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;OAIG;IACH,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEtD;;;;OAIG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAA;IAEjD;;;;OAIG;IACH,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAEpC;;;OAGG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEnC;;;;OAIG;IACH,QAAQ,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE9D;;;;;OAKG;IACH,OAAO,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAAA;IAEhE;;;OAGG;IACH,WAAW,CAAC,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE9C;;;;OAIG;IACH,SAAS,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEzF;;;;OAIG;IACH,WAAW,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAElE;;;OAGG;IACH,WAAW,CAAC,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAC3C"}
@@ -0,0 +1,79 @@
1
+ import type { SerializedJob } from '../types';
2
+ import type { QueueDriver } from './QueueDriver';
3
+ /**
4
+ * Redis driver configuration.
5
+ */
6
+ export interface RedisDriverConfig {
7
+ /**
8
+ * Redis client instance (ioredis or node-redis).
9
+ */
10
+ client: {
11
+ lpush: (key: string, ...values: string[]) => Promise<number>;
12
+ rpop: (key: string) => Promise<string | null>;
13
+ llen: (key: string) => Promise<number>;
14
+ del: (key: string) => Promise<number>;
15
+ lpushx?: (key: string, ...values: string[]) => Promise<number>;
16
+ rpoplpush?: (src: string, dst: string) => Promise<string | null>;
17
+ [key: string]: unknown;
18
+ };
19
+ /**
20
+ * Key prefix (default: `queue:`).
21
+ */
22
+ prefix?: string;
23
+ }
24
+ /**
25
+ * Redis Driver
26
+ *
27
+ * Uses Redis as the queue backend.
28
+ * Implements FIFO via Redis Lists (LPUSH/RPOP).
29
+ *
30
+ * Requires `ioredis` or `redis`.
31
+ *
32
+ * @example
33
+ * ```typescript
34
+ * import Redis from 'ioredis'
35
+ *
36
+ * const redis = new Redis('redis://localhost:6379')
37
+ * const driver = new RedisDriver({ client: redis })
38
+ *
39
+ * await driver.push('default', serializedJob)
40
+ * ```
41
+ */
42
+ export declare class RedisDriver implements QueueDriver {
43
+ private prefix;
44
+ private client;
45
+ constructor(config: RedisDriverConfig);
46
+ /**
47
+ * Get full Redis key for a queue.
48
+ */
49
+ private getKey;
50
+ /**
51
+ * Push a job (LPUSH).
52
+ */
53
+ push(queue: string, job: SerializedJob): Promise<void>;
54
+ /**
55
+ * Pop a job (RPOP, FIFO).
56
+ */
57
+ pop(queue: string): Promise<SerializedJob | null>;
58
+ /**
59
+ * Parse Redis payload.
60
+ */
61
+ private parsePayload;
62
+ /**
63
+ * Get queue size.
64
+ */
65
+ size(queue: string): Promise<number>;
66
+ /**
67
+ * Clear a queue.
68
+ */
69
+ clear(queue: string): Promise<void>;
70
+ /**
71
+ * Push multiple jobs.
72
+ */
73
+ pushMany(queue: string, jobs: SerializedJob[]): Promise<void>;
74
+ /**
75
+ * Pop multiple jobs.
76
+ */
77
+ popMany(queue: string, count: number): Promise<SerializedJob[]>;
78
+ }
79
+ //# sourceMappingURL=RedisDriver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RedisDriver.d.ts","sourceRoot":"","sources":["../../src/drivers/RedisDriver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAEhD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,MAAM,EAAE;QACN,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;QAC5D,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;QAC7C,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;QACtC,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;QACrC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;QAC9D,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;QAChE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KACvB,CAAA;IAED;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,WAAY,YAAW,WAAW;IAC7C,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,MAAM,CAA6B;gBAE/B,MAAM,EAAE,iBAAiB;IAWrC;;OAEG;IACH,OAAO,CAAC,MAAM;IAId;;OAEG;IACG,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA6B5D;;OAEG;IACG,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IA4BvD;;OAEG;IACH,OAAO,CAAC,YAAY;IAcpB;;OAEG;IACG,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAK1C;;OAEG;IACG,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IASzC;;OAEG;IACG,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBnE;;OAEG;IACG,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;CAetE"}
@@ -0,0 +1,100 @@
1
+ import type { SerializedJob } from '../types';
2
+ import type { QueueDriver } from './QueueDriver';
3
+ /**
4
+ * SQS driver configuration.
5
+ */
6
+ export interface SQSDriverConfig {
7
+ /**
8
+ * SQS client instance (`@aws-sdk/client-sqs`).
9
+ */
10
+ client: {
11
+ send: (command: unknown) => Promise<{
12
+ MessageId?: string;
13
+ Messages?: Array<{
14
+ MessageId?: string;
15
+ ReceiptHandle?: string;
16
+ Body?: string;
17
+ }>;
18
+ }>;
19
+ };
20
+ /**
21
+ * Queue URL prefix (used to build full queue URLs).
22
+ */
23
+ queueUrlPrefix?: string;
24
+ /**
25
+ * Visibility timeout (seconds, default: 30).
26
+ */
27
+ visibilityTimeout?: number;
28
+ /**
29
+ * Long-polling duration (seconds, default: 20).
30
+ */
31
+ waitTimeSeconds?: number;
32
+ }
33
+ /**
34
+ * SQS Driver
35
+ *
36
+ * Uses AWS SQS as the queue backend.
37
+ * Supports standard/FIFO queues, long polling, DLQ setups, etc.
38
+ *
39
+ * Requires `@aws-sdk/client-sqs`.
40
+ *
41
+ * @example
42
+ * ```typescript
43
+ * import { SQSClient } from '@aws-sdk/client-sqs'
44
+ *
45
+ * const sqs = new SQSClient({
46
+ * region: 'us-east-1',
47
+ * credentials: {
48
+ * accessKeyId: process.env.AWS_ACCESS_KEY_ID!,
49
+ * secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY!,
50
+ * }
51
+ * })
52
+ *
53
+ * const driver = new SQSDriver({ client: sqs })
54
+ * await driver.push('default', serializedJob)
55
+ * ```
56
+ */
57
+ export declare class SQSDriver implements QueueDriver {
58
+ private client;
59
+ private queueUrlPrefix;
60
+ private visibilityTimeout;
61
+ private waitTimeSeconds;
62
+ private queueUrls;
63
+ constructor(config: SQSDriverConfig);
64
+ /**
65
+ * Resolve the full queue URL.
66
+ */
67
+ private getQueueUrl;
68
+ /**
69
+ * Push a job to SQS.
70
+ */
71
+ push(queue: string, job: SerializedJob): Promise<void>;
72
+ /**
73
+ * Pop a job (long polling).
74
+ */
75
+ pop(queue: string): Promise<SerializedJob | null>;
76
+ /**
77
+ * Get queue size (approximate).
78
+ */
79
+ size(queue: string): Promise<number>;
80
+ /**
81
+ * Clear a queue by receiving and deleting messages.
82
+ *
83
+ * Note: SQS does not provide a direct "purge" API via this wrapper. This method will
84
+ * keep receiving and deleting messages until the queue is empty.
85
+ */
86
+ clear(queue: string): Promise<void>;
87
+ /**
88
+ * Push multiple jobs.
89
+ */
90
+ pushMany(queue: string, jobs: SerializedJob[]): Promise<void>;
91
+ /**
92
+ * Acknowledge is not supported via messageId.
93
+ */
94
+ acknowledge(_messageId: string): Promise<void>;
95
+ /**
96
+ * Delete a message (acknowledge processing completion).
97
+ */
98
+ deleteMessage(queue: string, receiptHandle: string): Promise<void>;
99
+ }
100
+ //# sourceMappingURL=SQSDriver.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SQSDriver.d.ts","sourceRoot":"","sources":["../../src/drivers/SQSDriver.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAEhD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC;YAClC,SAAS,CAAC,EAAE,MAAM,CAAA;YAClB,QAAQ,CAAC,EAAE,KAAK,CAAC;gBACf,SAAS,CAAC,EAAE,MAAM,CAAA;gBAClB,aAAa,CAAC,EAAE,MAAM,CAAA;gBACtB,IAAI,CAAC,EAAE,MAAM,CAAA;aACd,CAAC,CAAA;SACH,CAAC,CAAA;KACH,CAAA;IAED;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;IAEvB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,SAAU,YAAW,WAAW;IAC3C,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,cAAc,CAAQ;IAC9B,OAAO,CAAC,iBAAiB,CAAQ;IACjC,OAAO,CAAC,eAAe,CAAQ;IAC/B,OAAO,CAAC,SAAS,CAA4B;gBAEjC,MAAM,EAAE,eAAe;IAanC;;OAEG;YACW,WAAW;IAiBzB;;OAEG;IACG,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA0B5D;;OAEG;IACG,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAkCvD;;OAEG;IACG,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAmB1C;;;;;OAKG;IACG,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBzC;;OAEG;IACG,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAwCnE;;OAEG;IACG,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKpD;;OAEG;IACG,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAWzE"}