@agentuity/server 0.1.16 → 0.1.18

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 (93) hide show
  1. package/dist/api/api.d.ts +11 -6
  2. package/dist/api/api.d.ts.map +1 -1
  3. package/dist/api/api.js +19 -12
  4. package/dist/api/api.js.map +1 -1
  5. package/dist/api/index.d.ts +1 -0
  6. package/dist/api/index.d.ts.map +1 -1
  7. package/dist/api/index.js +1 -0
  8. package/dist/api/index.js.map +1 -1
  9. package/dist/api/org/env-delete.d.ts.map +1 -1
  10. package/dist/api/org/env-delete.js.map +1 -1
  11. package/dist/api/org/env-get.d.ts.map +1 -1
  12. package/dist/api/org/env-get.js.map +1 -1
  13. package/dist/api/org/env-update.d.ts.map +1 -1
  14. package/dist/api/org/env-update.js.map +1 -1
  15. package/dist/api/queue/analytics.d.ts +108 -0
  16. package/dist/api/queue/analytics.d.ts.map +1 -0
  17. package/dist/api/queue/analytics.js +245 -0
  18. package/dist/api/queue/analytics.js.map +1 -0
  19. package/dist/api/queue/destinations.d.ts +108 -0
  20. package/dist/api/queue/destinations.d.ts.map +1 -0
  21. package/dist/api/queue/destinations.js +238 -0
  22. package/dist/api/queue/destinations.js.map +1 -0
  23. package/dist/api/queue/dlq.d.ts +100 -0
  24. package/dist/api/queue/dlq.d.ts.map +1 -0
  25. package/dist/api/queue/dlq.js +204 -0
  26. package/dist/api/queue/dlq.js.map +1 -0
  27. package/dist/api/queue/index.d.ts +55 -0
  28. package/dist/api/queue/index.d.ts.map +1 -0
  29. package/dist/api/queue/index.js +86 -0
  30. package/dist/api/queue/index.js.map +1 -0
  31. package/dist/api/queue/messages.d.ts +332 -0
  32. package/dist/api/queue/messages.d.ts.map +1 -0
  33. package/dist/api/queue/messages.js +637 -0
  34. package/dist/api/queue/messages.js.map +1 -0
  35. package/dist/api/queue/queues.d.ts +153 -0
  36. package/dist/api/queue/queues.d.ts.map +1 -0
  37. package/dist/api/queue/queues.js +319 -0
  38. package/dist/api/queue/queues.js.map +1 -0
  39. package/dist/api/queue/sources.d.ts +132 -0
  40. package/dist/api/queue/sources.d.ts.map +1 -0
  41. package/dist/api/queue/sources.js +285 -0
  42. package/dist/api/queue/sources.js.map +1 -0
  43. package/dist/api/queue/types.d.ts +1129 -0
  44. package/dist/api/queue/types.d.ts.map +1 -0
  45. package/dist/api/queue/types.js +949 -0
  46. package/dist/api/queue/types.js.map +1 -0
  47. package/dist/api/queue/util.d.ts +262 -0
  48. package/dist/api/queue/util.d.ts.map +1 -0
  49. package/dist/api/queue/util.js +171 -0
  50. package/dist/api/queue/util.js.map +1 -0
  51. package/dist/api/queue/validation.d.ts +247 -0
  52. package/dist/api/queue/validation.d.ts.map +1 -0
  53. package/dist/api/queue/validation.js +513 -0
  54. package/dist/api/queue/validation.js.map +1 -0
  55. package/dist/api/sandbox/get.d.ts.map +1 -1
  56. package/dist/api/sandbox/get.js +5 -0
  57. package/dist/api/sandbox/get.js.map +1 -1
  58. package/dist/api/sandbox/index.d.ts +3 -3
  59. package/dist/api/sandbox/index.d.ts.map +1 -1
  60. package/dist/api/sandbox/index.js +1 -1
  61. package/dist/api/sandbox/index.js.map +1 -1
  62. package/dist/api/sandbox/run.d.ts.map +1 -1
  63. package/dist/api/sandbox/run.js +5 -2
  64. package/dist/api/sandbox/run.js.map +1 -1
  65. package/dist/api/sandbox/snapshot-build.d.ts +2 -0
  66. package/dist/api/sandbox/snapshot-build.d.ts.map +1 -1
  67. package/dist/api/sandbox/snapshot-build.js +4 -0
  68. package/dist/api/sandbox/snapshot-build.js.map +1 -1
  69. package/dist/api/sandbox/snapshot.d.ts +143 -1
  70. package/dist/api/sandbox/snapshot.d.ts.map +1 -1
  71. package/dist/api/sandbox/snapshot.js +183 -4
  72. package/dist/api/sandbox/snapshot.js.map +1 -1
  73. package/package.json +4 -4
  74. package/src/api/api.ts +62 -13
  75. package/src/api/index.ts +1 -0
  76. package/src/api/org/env-delete.ts +1 -4
  77. package/src/api/org/env-get.ts +1 -4
  78. package/src/api/org/env-update.ts +1 -4
  79. package/src/api/queue/analytics.ts +313 -0
  80. package/src/api/queue/destinations.ts +321 -0
  81. package/src/api/queue/dlq.ts +283 -0
  82. package/src/api/queue/index.ts +261 -0
  83. package/src/api/queue/messages.ts +875 -0
  84. package/src/api/queue/queues.ts +448 -0
  85. package/src/api/queue/sources.ts +384 -0
  86. package/src/api/queue/types.ts +1253 -0
  87. package/src/api/queue/util.ts +204 -0
  88. package/src/api/queue/validation.ts +560 -0
  89. package/src/api/sandbox/get.ts +5 -0
  90. package/src/api/sandbox/index.ts +13 -1
  91. package/src/api/sandbox/run.ts +5 -2
  92. package/src/api/sandbox/snapshot-build.ts +4 -0
  93. package/src/api/sandbox/snapshot.ts +223 -5
@@ -0,0 +1,204 @@
1
+ import { z } from 'zod';
2
+ import { APIResponseSchema, APIResponseSchemaNoData } from '../api';
3
+ import { DeadLetterMessageSchema, MessageSchema, } from './types';
4
+ import { QueueError, QueueNotFoundError, MessageNotFoundError, queueApiPath, queueApiPathWithQuery, buildQueueHeaders, } from './util';
5
+ import { validateQueueName, validateMessageId, validateLimit, validateOffset } from './validation';
6
+ const DlqListResponseSchema = APIResponseSchema(z.object({
7
+ messages: z.array(DeadLetterMessageSchema),
8
+ total: z.number().optional(),
9
+ }));
10
+ const ReplayDlqResponseSchema = APIResponseSchema(z.object({ message: MessageSchema }));
11
+ const DeleteDlqResponseSchema = APIResponseSchemaNoData();
12
+ /**
13
+ * List messages in the dead letter queue.
14
+ *
15
+ * Retrieves messages that failed processing after exhausting all retries.
16
+ * These messages can be inspected, replayed back to the main queue, or deleted.
17
+ *
18
+ * @param client - The API client instance
19
+ * @param queueName - The name of the queue whose DLQ to list
20
+ * @param params - Optional pagination parameters (limit, offset)
21
+ * @returns Object containing dead letter messages and optional total count
22
+ * @throws {QueueValidationError} If validation fails (invalid queue name, limit, or offset)
23
+ * @throws {QueueNotFoundError} If the queue does not exist
24
+ * @throws {QueueError} If the API request fails
25
+ *
26
+ * @example
27
+ * ```typescript
28
+ * // List first 10 dead letter messages
29
+ * const result = await listDeadLetterMessages(client, 'order-queue', { limit: 10 });
30
+ * for (const msg of result.messages) {
31
+ * console.log(`Failed message ${msg.id}: ${msg.failure_reason}`);
32
+ * console.log(`Attempts: ${msg.delivery_attempts}, Moved at: ${msg.moved_at}`);
33
+ * }
34
+ * ```
35
+ */
36
+ export async function listDeadLetterMessages(client, queueName, params, options) {
37
+ validateQueueName(queueName);
38
+ if (params?.limit !== undefined) {
39
+ validateLimit(params.limit);
40
+ }
41
+ if (params?.offset !== undefined) {
42
+ validateOffset(params.offset);
43
+ }
44
+ const searchParams = new URLSearchParams();
45
+ if (params?.limit !== undefined) {
46
+ searchParams.set('limit', String(params.limit));
47
+ }
48
+ if (params?.offset !== undefined) {
49
+ searchParams.set('offset', String(params.offset));
50
+ }
51
+ const queryString = searchParams.toString();
52
+ const url = queueApiPathWithQuery('dlq/list', queryString || undefined, queueName);
53
+ const resp = await client.get(url, DlqListResponseSchema, undefined, buildQueueHeaders(options?.orgId));
54
+ if (resp.success) {
55
+ return { messages: resp.data.messages, total: resp.data.total };
56
+ }
57
+ if (resp.message?.includes('not found')) {
58
+ throw new QueueNotFoundError({
59
+ queueName,
60
+ message: resp.message,
61
+ });
62
+ }
63
+ throw new QueueError({
64
+ queueName,
65
+ message: resp.message || 'Failed to list dead letter messages',
66
+ });
67
+ }
68
+ /**
69
+ * Replay a dead letter message back to the main queue.
70
+ *
71
+ * Moves a message from the dead letter queue back to the main queue for
72
+ * reprocessing. The message state is reset to pending and retry count is
73
+ * preserved. Use this after fixing the underlying issue that caused the failure.
74
+ *
75
+ * @param client - The API client instance
76
+ * @param queueName - The name of the queue
77
+ * @param messageId - The message ID to replay (prefixed with msg_)
78
+ * @returns The replayed message with updated state
79
+ * @throws {QueueValidationError} If validation fails (invalid queue name or message ID)
80
+ * @throws {MessageNotFoundError} If the message does not exist in the DLQ
81
+ * @throws {QueueNotFoundError} If the queue does not exist
82
+ * @throws {QueueError} If the API request fails
83
+ *
84
+ * @example
85
+ * ```typescript
86
+ * // Replay a failed message after fixing the bug
87
+ * const message = await replayDeadLetterMessage(client, 'order-queue', 'msg_abc123');
88
+ * console.log(`Replayed message ${message.id}, now in state: ${message.state}`);
89
+ * ```
90
+ */
91
+ export async function replayDeadLetterMessage(client, queueName, messageId, options) {
92
+ validateQueueName(queueName);
93
+ validateMessageId(messageId);
94
+ const url = queueApiPath('dlq/replay', queueName, messageId);
95
+ const resp = await client.post(url, undefined, ReplayDlqResponseSchema, undefined, undefined, buildQueueHeaders(options?.orgId));
96
+ if (resp.success) {
97
+ return resp.data.message;
98
+ }
99
+ if (resp.message?.includes('message') && resp.message?.includes('not found')) {
100
+ throw new MessageNotFoundError({
101
+ queueName,
102
+ messageId,
103
+ message: resp.message,
104
+ });
105
+ }
106
+ if (resp.message?.includes('queue') && resp.message?.includes('not found')) {
107
+ throw new QueueNotFoundError({
108
+ queueName,
109
+ message: resp.message,
110
+ });
111
+ }
112
+ throw new QueueError({
113
+ queueName,
114
+ message: resp.message || 'Failed to replay dead letter message',
115
+ });
116
+ }
117
+ /**
118
+ * Purge all messages from a dead letter queue.
119
+ *
120
+ * Permanently deletes all messages in the dead letter queue. This operation
121
+ * cannot be undone. Use with caution - consider reviewing or exporting
122
+ * messages before purging.
123
+ *
124
+ * @param client - The API client instance
125
+ * @param queueName - The name of the queue whose DLQ to purge
126
+ * @returns void
127
+ * @throws {QueueValidationError} If validation fails (invalid queue name)
128
+ * @throws {QueueNotFoundError} If the queue does not exist
129
+ * @throws {QueueError} If the API request fails
130
+ *
131
+ * @example
132
+ * ```typescript
133
+ * // Purge all dead letter messages after investigation
134
+ * await purgeDeadLetter(client, 'order-queue');
135
+ * console.log('All dead letter messages have been deleted');
136
+ * ```
137
+ */
138
+ export async function purgeDeadLetter(client, queueName, options) {
139
+ validateQueueName(queueName);
140
+ const url = queueApiPath('dlq/purge', queueName);
141
+ const resp = await client.delete(url, DeleteDlqResponseSchema, undefined, buildQueueHeaders(options?.orgId));
142
+ if (resp.success) {
143
+ return;
144
+ }
145
+ if (resp.message?.includes('not found')) {
146
+ throw new QueueNotFoundError({
147
+ queueName,
148
+ message: resp.message,
149
+ });
150
+ }
151
+ throw new QueueError({
152
+ queueName,
153
+ message: resp.message || 'Failed to purge dead letter queue',
154
+ });
155
+ }
156
+ /**
157
+ * Delete a specific message from the dead letter queue.
158
+ *
159
+ * Permanently removes a single message from the dead letter queue.
160
+ * Use this when you've determined that a specific failed message
161
+ * should not be retried and can be discarded.
162
+ *
163
+ * @param client - The API client instance
164
+ * @param queueName - The name of the queue
165
+ * @param messageId - The message ID to delete (prefixed with msg_)
166
+ * @returns void
167
+ * @throws {QueueValidationError} If validation fails (invalid queue name or message ID)
168
+ * @throws {MessageNotFoundError} If the message does not exist in the DLQ
169
+ * @throws {QueueError} If the API request fails
170
+ *
171
+ * @example
172
+ * ```typescript
173
+ * // Delete a message that cannot be recovered
174
+ * await deleteDeadLetterMessage(client, 'order-queue', 'msg_abc123');
175
+ * console.log('Dead letter message deleted');
176
+ * ```
177
+ */
178
+ export async function deleteDeadLetterMessage(client, queueName, messageId, options) {
179
+ validateQueueName(queueName);
180
+ validateMessageId(messageId);
181
+ const url = queueApiPath('dlq/delete', queueName, messageId);
182
+ const resp = await client.delete(url, DeleteDlqResponseSchema, undefined, buildQueueHeaders(options?.orgId));
183
+ if (resp.success) {
184
+ return;
185
+ }
186
+ if (resp.message?.includes('queue') && resp.message?.includes('not found')) {
187
+ throw new QueueNotFoundError({
188
+ queueName,
189
+ message: resp.message,
190
+ });
191
+ }
192
+ if (resp.message?.includes('message') && resp.message?.includes('not found')) {
193
+ throw new MessageNotFoundError({
194
+ queueName,
195
+ messageId,
196
+ message: resp.message,
197
+ });
198
+ }
199
+ throw new QueueError({
200
+ queueName,
201
+ message: resp.message || 'Failed to delete dead letter message',
202
+ });
203
+ }
204
+ //# sourceMappingURL=dlq.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dlq.js","sourceRoot":"","sources":["../../../src/api/queue/dlq.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * @module queue
3
+ *
4
+ * Queue API client for managing message queues, messages, destinations, and dead letter queues.
5
+ *
6
+ * This module provides a complete client for the Agentuity Queue API, supporting:
7
+ * - **Queue Management**: Create, read, update, and delete message queues
8
+ * - **Message Operations**: Publish, consume, acknowledge, and manage messages
9
+ * - **Destinations**: Configure webhook endpoints for automatic message delivery
10
+ * - **Dead Letter Queue**: Handle failed messages that exceeded retry limits
11
+ *
12
+ * @example Basic Queue Operations
13
+ * ```typescript
14
+ * import { createQueue, publishMessage, receiveMessage, ackMessage } from '@agentuity/server';
15
+ *
16
+ * // Create a worker queue
17
+ * const queue = await createQueue(client, {
18
+ * name: 'order-processing',
19
+ * queue_type: 'worker',
20
+ * });
21
+ *
22
+ * // Publish a message
23
+ * await publishMessage(client, 'order-processing', {
24
+ * payload: { orderId: 123 },
25
+ * });
26
+ *
27
+ * // Receive and acknowledge a message
28
+ * const message = await receiveMessage(client, 'order-processing');
29
+ * if (message) {
30
+ * // Process the message...
31
+ * await ackMessage(client, 'order-processing', message.id);
32
+ * }
33
+ * ```
34
+ *
35
+ * @example Webhook Destinations
36
+ * ```typescript
37
+ * import { createDestination } from '@agentuity/server';
38
+ *
39
+ * // Messages are automatically delivered to this URL
40
+ * await createDestination(client, 'order-processing', {
41
+ * destination_type: 'http',
42
+ * config: { url: 'https://api.example.com/webhook' },
43
+ * });
44
+ * ```
45
+ */
46
+ export { QueueTypeSchema, QueueSettingsSchema, QueueStatsSchema, QueueSchema, MessageStateSchema, MessageSchema, DestinationTypeSchema, HttpDestinationConfigSchema, DestinationStatsSchema, DestinationSchema, DeadLetterMessageSchema, CreateQueueRequestSchema, UpdateQueueRequestSchema, ListQueuesRequestSchema, PublishMessageRequestSchema, BatchPublishMessagesRequestSchema, ListMessagesRequestSchema, ConsumeMessagesRequestSchema, CreateDestinationRequestSchema, UpdateDestinationRequestSchema, ListDlqRequestSchema, type QueueType, type QueueSettings, type QueueStats, type Queue, type MessageState, type Message, type DestinationType, type HttpDestinationConfig, type DestinationStats, type Destination, type DeadLetterMessage, type CreateQueueRequest, type UpdateQueueRequest, type ListQueuesRequest, type PublishMessageRequest, type BatchPublishMessagesRequest, type ListMessagesRequest, type ConsumeMessagesRequest, type CreateDestinationRequest, type UpdateDestinationRequest, type ListDlqRequest, type QueueApiOptions, AnalyticsGranularitySchema, TimePeriodSchema, LatencyStatsSchema, QueueCurrentStatsSchema, QueuePeriodStatsSchema, DestinationAnalyticsSchema, QueueAnalyticsSchema, QueueSummarySchema, OrgAnalyticsSummarySchema, OrgAnalyticsSchema, TimeSeriesPointSchema, TimeSeriesDataSchema, SSEStatsEventSchema, type AnalyticsGranularity, type AnalyticsOptions, type StreamAnalyticsOptions, type TimePeriod, type LatencyStats, type QueueCurrentStats, type QueuePeriodStats, type DestinationAnalytics, type QueueAnalytics, type QueueSummary, type OrgAnalyticsSummary, type OrgAnalytics, type TimeSeriesPoint, type TimeSeriesData, type SSEStatsEvent, SourceAuthTypeSchema, SourceSchema, CreateSourceRequestSchema, UpdateSourceRequestSchema, type SourceAuthType, type Source, type CreateSourceRequest, type UpdateSourceRequest, } from './types';
47
+ export { QueueError, QueueNotFoundError, MessageNotFoundError, DestinationNotFoundError, DestinationAlreadyExistsError, QueueInvalidArgumentError, SourceNotFoundError, SourceAlreadyExistsError, } from './util';
48
+ export { createQueue, getQueue, listQueues, updateQueue, deleteQueue, pauseQueue, resumeQueue, } from './queues';
49
+ export { publishMessage, batchPublishMessages, getMessage, getMessageByOffset, listMessages, deleteMessage, replayMessage, consumeMessages, getQueueHead, getQueueTail, receiveMessage, ackMessage, nackMessage, } from './messages';
50
+ export { listDeadLetterMessages, replayDeadLetterMessage, purgeDeadLetter, deleteDeadLetterMessage, } from './dlq';
51
+ export { createDestination, listDestinations, updateDestination, deleteDestination, } from './destinations';
52
+ export { createSource, listSources, getSource, updateSource, deleteSource } from './sources';
53
+ export { getOrgAnalytics, getQueueAnalytics, getQueueTimeSeries, streamOrgAnalytics, streamQueueAnalytics, } from './analytics';
54
+ export { QueueValidationError, validateQueueName, validateQueueType, validatePayload, validateMessageId, validateDestinationId, validateDescription, validatePartitionKey, validateIdempotencyKey, validateTTL, validateVisibilityTimeout, validateMaxRetries, validateMaxInFlight, validateOffset, validateLimit, validateBatchSize, validateWebhookUrl, validateDestinationConfig, validateSourceId, validateSourceName, MAX_QUEUE_NAME_LENGTH, MIN_QUEUE_NAME_LENGTH, MAX_PAYLOAD_SIZE, MAX_DESCRIPTION_LENGTH, MAX_BATCH_SIZE, MAX_METADATA_SIZE, MAX_PARTITION_KEY_LENGTH, MAX_IDEMPOTENCY_KEY_LENGTH, MAX_VISIBILITY_TIMEOUT, MAX_RETRIES, MAX_IN_FLIGHT, MAX_SOURCE_NAME_LENGTH, } from './validation';
55
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/api/queue/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,86 @@
1
+ /**
2
+ * @module queue
3
+ *
4
+ * Queue API client for managing message queues, messages, destinations, and dead letter queues.
5
+ *
6
+ * This module provides a complete client for the Agentuity Queue API, supporting:
7
+ * - **Queue Management**: Create, read, update, and delete message queues
8
+ * - **Message Operations**: Publish, consume, acknowledge, and manage messages
9
+ * - **Destinations**: Configure webhook endpoints for automatic message delivery
10
+ * - **Dead Letter Queue**: Handle failed messages that exceeded retry limits
11
+ *
12
+ * @example Basic Queue Operations
13
+ * ```typescript
14
+ * import { createQueue, publishMessage, receiveMessage, ackMessage } from '@agentuity/server';
15
+ *
16
+ * // Create a worker queue
17
+ * const queue = await createQueue(client, {
18
+ * name: 'order-processing',
19
+ * queue_type: 'worker',
20
+ * });
21
+ *
22
+ * // Publish a message
23
+ * await publishMessage(client, 'order-processing', {
24
+ * payload: { orderId: 123 },
25
+ * });
26
+ *
27
+ * // Receive and acknowledge a message
28
+ * const message = await receiveMessage(client, 'order-processing');
29
+ * if (message) {
30
+ * // Process the message...
31
+ * await ackMessage(client, 'order-processing', message.id);
32
+ * }
33
+ * ```
34
+ *
35
+ * @example Webhook Destinations
36
+ * ```typescript
37
+ * import { createDestination } from '@agentuity/server';
38
+ *
39
+ * // Messages are automatically delivered to this URL
40
+ * await createDestination(client, 'order-processing', {
41
+ * destination_type: 'http',
42
+ * config: { url: 'https://api.example.com/webhook' },
43
+ * });
44
+ * ```
45
+ */
46
+ // ============================================================================
47
+ // Types & Schemas
48
+ // ============================================================================
49
+ export { QueueTypeSchema, QueueSettingsSchema, QueueStatsSchema, QueueSchema, MessageStateSchema, MessageSchema, DestinationTypeSchema, HttpDestinationConfigSchema, DestinationStatsSchema, DestinationSchema, DeadLetterMessageSchema, CreateQueueRequestSchema, UpdateQueueRequestSchema, ListQueuesRequestSchema, PublishMessageRequestSchema, BatchPublishMessagesRequestSchema, ListMessagesRequestSchema, ConsumeMessagesRequestSchema, CreateDestinationRequestSchema, UpdateDestinationRequestSchema, ListDlqRequestSchema,
50
+ // Analytics types
51
+ AnalyticsGranularitySchema, TimePeriodSchema, LatencyStatsSchema, QueueCurrentStatsSchema, QueuePeriodStatsSchema, DestinationAnalyticsSchema, QueueAnalyticsSchema, QueueSummarySchema, OrgAnalyticsSummarySchema, OrgAnalyticsSchema, TimeSeriesPointSchema, TimeSeriesDataSchema, SSEStatsEventSchema,
52
+ // Source types
53
+ SourceAuthTypeSchema, SourceSchema, CreateSourceRequestSchema, UpdateSourceRequestSchema, } from './types';
54
+ // ============================================================================
55
+ // Errors
56
+ // ============================================================================
57
+ export { QueueError, QueueNotFoundError, MessageNotFoundError, DestinationNotFoundError, DestinationAlreadyExistsError, QueueInvalidArgumentError, SourceNotFoundError, SourceAlreadyExistsError, } from './util';
58
+ // ============================================================================
59
+ // Queue Operations
60
+ // ============================================================================
61
+ export { createQueue, getQueue, listQueues, updateQueue, deleteQueue, pauseQueue, resumeQueue, } from './queues';
62
+ // ============================================================================
63
+ // Message Operations
64
+ // ============================================================================
65
+ export { publishMessage, batchPublishMessages, getMessage, getMessageByOffset, listMessages, deleteMessage, replayMessage, consumeMessages, getQueueHead, getQueueTail, receiveMessage, ackMessage, nackMessage, } from './messages';
66
+ // ============================================================================
67
+ // Dead Letter Queue Operations
68
+ // ============================================================================
69
+ export { listDeadLetterMessages, replayDeadLetterMessage, purgeDeadLetter, deleteDeadLetterMessage, } from './dlq';
70
+ // ============================================================================
71
+ // Destination Operations
72
+ // ============================================================================
73
+ export { createDestination, listDestinations, updateDestination, deleteDestination, } from './destinations';
74
+ // ============================================================================
75
+ // Source Operations
76
+ // ============================================================================
77
+ export { createSource, listSources, getSource, updateSource, deleteSource } from './sources';
78
+ // ============================================================================
79
+ // Analytics Operations
80
+ // ============================================================================
81
+ export { getOrgAnalytics, getQueueAnalytics, getQueueTimeSeries, streamOrgAnalytics, streamQueueAnalytics, } from './analytics';
82
+ // ============================================================================
83
+ // Validation Utilities
84
+ // ============================================================================
85
+ export { QueueValidationError, validateQueueName, validateQueueType, validatePayload, validateMessageId, validateDestinationId, validateDescription, validatePartitionKey, validateIdempotencyKey, validateTTL, validateVisibilityTimeout, validateMaxRetries, validateMaxInFlight, validateOffset, validateLimit, validateBatchSize, validateWebhookUrl, validateDestinationConfig, validateSourceId, validateSourceName, MAX_QUEUE_NAME_LENGTH, MIN_QUEUE_NAME_LENGTH, MAX_PAYLOAD_SIZE, MAX_DESCRIPTION_LENGTH, MAX_BATCH_SIZE, MAX_METADATA_SIZE, MAX_PARTITION_KEY_LENGTH, MAX_IDEMPOTENCY_KEY_LENGTH, MAX_VISIBILITY_TIMEOUT, MAX_RETRIES, MAX_IN_FLIGHT, MAX_SOURCE_NAME_LENGTH, } from './validation';
86
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/api/queue/index.ts"],"names":[],"mappings":"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"}