flashq 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (78) hide show
  1. package/README.md +283 -0
  2. package/dist/client/advanced.d.ts +174 -0
  3. package/dist/client/advanced.d.ts.map +1 -0
  4. package/dist/client/advanced.js +248 -0
  5. package/dist/client/advanced.js.map +1 -0
  6. package/dist/client/connection.d.ts +103 -0
  7. package/dist/client/connection.d.ts.map +1 -0
  8. package/dist/client/connection.js +570 -0
  9. package/dist/client/connection.js.map +1 -0
  10. package/dist/client/core.d.ts +119 -0
  11. package/dist/client/core.d.ts.map +1 -0
  12. package/dist/client/core.js +257 -0
  13. package/dist/client/core.js.map +1 -0
  14. package/dist/client/cron.d.ts +59 -0
  15. package/dist/client/cron.d.ts.map +1 -0
  16. package/dist/client/cron.js +82 -0
  17. package/dist/client/cron.js.map +1 -0
  18. package/dist/client/dlq.d.ts +52 -0
  19. package/dist/client/dlq.d.ts.map +1 -0
  20. package/dist/client/dlq.js +73 -0
  21. package/dist/client/dlq.js.map +1 -0
  22. package/dist/client/flows.d.ts +49 -0
  23. package/dist/client/flows.d.ts.map +1 -0
  24. package/dist/client/flows.js +67 -0
  25. package/dist/client/flows.js.map +1 -0
  26. package/dist/client/index.d.ts +644 -0
  27. package/dist/client/index.d.ts.map +1 -0
  28. package/dist/client/index.js +829 -0
  29. package/dist/client/index.js.map +1 -0
  30. package/dist/client/jobs.d.ts +183 -0
  31. package/dist/client/jobs.d.ts.map +1 -0
  32. package/dist/client/jobs.js +272 -0
  33. package/dist/client/jobs.js.map +1 -0
  34. package/dist/client/kv.d.ts +63 -0
  35. package/dist/client/kv.d.ts.map +1 -0
  36. package/dist/client/kv.js +131 -0
  37. package/dist/client/kv.js.map +1 -0
  38. package/dist/client/metrics.d.ts +34 -0
  39. package/dist/client/metrics.d.ts.map +1 -0
  40. package/dist/client/metrics.js +49 -0
  41. package/dist/client/metrics.js.map +1 -0
  42. package/dist/client/pubsub.d.ts +42 -0
  43. package/dist/client/pubsub.d.ts.map +1 -0
  44. package/dist/client/pubsub.js +92 -0
  45. package/dist/client/pubsub.js.map +1 -0
  46. package/dist/client/queue.d.ts +111 -0
  47. package/dist/client/queue.d.ts.map +1 -0
  48. package/dist/client/queue.js +160 -0
  49. package/dist/client/queue.js.map +1 -0
  50. package/dist/client/types.d.ts +23 -0
  51. package/dist/client/types.d.ts.map +1 -0
  52. package/dist/client/types.js +3 -0
  53. package/dist/client/types.js.map +1 -0
  54. package/dist/client.d.ts +17 -0
  55. package/dist/client.d.ts.map +1 -0
  56. package/dist/client.js +23 -0
  57. package/dist/client.js.map +1 -0
  58. package/dist/events.d.ts +184 -0
  59. package/dist/events.d.ts.map +1 -0
  60. package/dist/events.js +340 -0
  61. package/dist/events.js.map +1 -0
  62. package/dist/index.d.ts +30 -0
  63. package/dist/index.d.ts.map +1 -0
  64. package/dist/index.js +43 -0
  65. package/dist/index.js.map +1 -0
  66. package/dist/queue.d.ts +104 -0
  67. package/dist/queue.d.ts.map +1 -0
  68. package/dist/queue.js +139 -0
  69. package/dist/queue.js.map +1 -0
  70. package/dist/types.d.ts +185 -0
  71. package/dist/types.d.ts.map +1 -0
  72. package/dist/types.js +6 -0
  73. package/dist/types.js.map +1 -0
  74. package/dist/worker.d.ts +88 -0
  75. package/dist/worker.d.ts.map +1 -0
  76. package/dist/worker.js +296 -0
  77. package/dist/worker.js.map +1 -0
  78. package/package.json +70 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,183 @@
1
+ /**
2
+ * Job management operations
3
+ */
4
+ import type { IFlashQClient, JobState, JobWithState, JobLogEntry } from './types';
5
+ /**
6
+ * Get a job with its current state.
7
+ *
8
+ * @param client - FlashQ client instance
9
+ * @param jobId - Job ID
10
+ * @returns Job with state, or null if not found
11
+ *
12
+ * @example
13
+ * ```typescript
14
+ * const result = await client.getJob(123);
15
+ * if (result) {
16
+ * console.log(`Job ${result.job.id} is ${result.state}`);
17
+ * }
18
+ * ```
19
+ */
20
+ export declare function getJob(client: IFlashQClient, jobId: number): Promise<JobWithState | null>;
21
+ /**
22
+ * Get job state only.
23
+ *
24
+ * @param client - FlashQ client instance
25
+ * @param jobId - Job ID
26
+ * @returns Job state or null if not found
27
+ *
28
+ * @example
29
+ * ```typescript
30
+ * const state = await client.getState(123);
31
+ * console.log(`Job state: ${state}`);
32
+ * ```
33
+ */
34
+ export declare function getState(client: IFlashQClient, jobId: number): Promise<JobState | null>;
35
+ /**
36
+ * Get job result.
37
+ *
38
+ * @param client - FlashQ client instance
39
+ * @param jobId - Job ID
40
+ * @returns Job result or null
41
+ *
42
+ * @example
43
+ * ```typescript
44
+ * const result = await client.getResult<{ sent: boolean }>(123);
45
+ * ```
46
+ */
47
+ export declare function getResult<T = unknown>(client: IFlashQClient, jobId: number): Promise<T | null>;
48
+ /**
49
+ * Wait for a job to complete and return its result.
50
+ * Useful for synchronous workflows.
51
+ *
52
+ * @param client - FlashQ client instance
53
+ * @param jobId - Job ID
54
+ * @param timeout - Timeout in ms (default: 30000)
55
+ * @returns Job result or null
56
+ * @throws Error if job fails or times out
57
+ *
58
+ * @example
59
+ * ```typescript
60
+ * const job = await client.push('process', { data: 'value' });
61
+ * const result = await client.finished(job.id);
62
+ * console.log('Result:', result);
63
+ * ```
64
+ */
65
+ export declare function finished<T = unknown>(client: IFlashQClient, jobId: number, timeout?: number): Promise<T | null>;
66
+ /**
67
+ * Get a job by its custom ID.
68
+ * Custom IDs are set using the `jobId` option when pushing.
69
+ *
70
+ * @param client - FlashQ client instance
71
+ * @param customId - Custom job ID
72
+ * @returns Job with state or null
73
+ *
74
+ * @example
75
+ * ```typescript
76
+ * // Push with custom ID
77
+ * await client.push('process', { orderId: 123 }, { jobId: 'order-123' });
78
+ *
79
+ * // Retrieve by custom ID
80
+ * const result = await client.getJobByCustomId('order-123');
81
+ * ```
82
+ */
83
+ export declare function getJobByCustomId(client: IFlashQClient, customId: string): Promise<JobWithState | null>;
84
+ /**
85
+ * Get multiple jobs by their IDs in a single call.
86
+ *
87
+ * @param client - FlashQ client instance
88
+ * @param jobIds - Array of job IDs
89
+ * @returns Array of jobs with states
90
+ *
91
+ * @example
92
+ * ```typescript
93
+ * const jobs = await client.getJobsBatch([1, 2, 3, 4, 5]);
94
+ * ```
95
+ */
96
+ export declare function getJobsBatch(client: IFlashQClient, jobIds: number[]): Promise<JobWithState[]>;
97
+ /**
98
+ * Cancel a pending job.
99
+ *
100
+ * @param client - FlashQ client instance
101
+ * @param jobId - Job ID
102
+ *
103
+ * @example
104
+ * ```typescript
105
+ * await client.cancel(job.id);
106
+ * ```
107
+ */
108
+ export declare function cancel(client: IFlashQClient, jobId: number): Promise<void>;
109
+ /**
110
+ * Update job progress.
111
+ *
112
+ * @param client - FlashQ client instance
113
+ * @param jobId - Job ID
114
+ * @param progress - Progress value (0-100)
115
+ * @param message - Optional progress message
116
+ *
117
+ * @example
118
+ * ```typescript
119
+ * await client.progress(job.id, 50, 'Halfway done');
120
+ * ```
121
+ */
122
+ export declare function progress(client: IFlashQClient, jobId: number, progressValue: number, message?: string): Promise<void>;
123
+ /**
124
+ * Get job progress.
125
+ *
126
+ * @param client - FlashQ client instance
127
+ * @param jobId - Job ID
128
+ * @returns Progress value and message
129
+ *
130
+ * @example
131
+ * ```typescript
132
+ * const { progress, message } = await client.getProgress(job.id);
133
+ * ```
134
+ */
135
+ export declare function getProgress(client: IFlashQClient, jobId: number): Promise<{
136
+ progress: number;
137
+ message?: string;
138
+ }>;
139
+ /**
140
+ * Add a log entry to a job.
141
+ *
142
+ * @param client - FlashQ client instance
143
+ * @param jobId - Job ID
144
+ * @param message - Log message
145
+ * @param level - Log level (info, warn, error)
146
+ *
147
+ * @example
148
+ * ```typescript
149
+ * await client.log(job.id, 'Processing step 1', 'info');
150
+ * await client.log(job.id, 'Warning: low memory', 'warn');
151
+ * ```
152
+ */
153
+ export declare function log(client: IFlashQClient, jobId: number, message: string, level?: 'info' | 'warn' | 'error'): Promise<void>;
154
+ /**
155
+ * Get log entries for a job.
156
+ *
157
+ * @param client - FlashQ client instance
158
+ * @param jobId - Job ID
159
+ * @returns Array of log entries
160
+ *
161
+ * @example
162
+ * ```typescript
163
+ * const logs = await client.getLogs(job.id);
164
+ * ```
165
+ */
166
+ export declare function getLogs(client: IFlashQClient, jobId: number): Promise<JobLogEntry[]>;
167
+ /**
168
+ * Send a heartbeat to prevent job from being marked as stalled.
169
+ *
170
+ * @param client - FlashQ client instance
171
+ * @param jobId - Job ID
172
+ *
173
+ * @example
174
+ * ```typescript
175
+ * // In a long-running job processor
176
+ * for (const item of largeDataset) {
177
+ * await processItem(item);
178
+ * await client.heartbeat(job.id);
179
+ * }
180
+ * ```
181
+ */
182
+ export declare function heartbeat(client: IFlashQClient, jobId: number): Promise<void>;
183
+ //# sourceMappingURL=jobs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jobs.d.ts","sourceRoot":"","sources":["../../src/client/jobs.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,aAAa,EAAO,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEvF;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,MAAM,CAC1B,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAW9B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,QAAQ,CAC5B,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAU1B;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,SAAS,CAAC,CAAC,GAAG,OAAO,EACzC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAUnB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,QAAQ,CAAC,CAAC,GAAG,OAAO,EACxC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAqBnB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAW9B;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,MAAM,EAAE,GACf,OAAO,CAAC,YAAY,EAAE,CAAC,CASzB;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,MAAM,CAC1B,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CAKf;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,QAAQ,CAC5B,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAOf;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAajD;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,GAAG,CACvB,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,KAAK,GAAE,MAAM,GAAG,MAAM,GAAG,OAAgB,GACxC,OAAO,CAAC,IAAI,CAAC,CAOf;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,OAAO,CAC3B,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,WAAW,EAAE,CAAC,CAMxB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,SAAS,CAC7B,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CAKf"}
@@ -0,0 +1,272 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getJob = getJob;
4
+ exports.getState = getState;
5
+ exports.getResult = getResult;
6
+ exports.finished = finished;
7
+ exports.getJobByCustomId = getJobByCustomId;
8
+ exports.getJobsBatch = getJobsBatch;
9
+ exports.cancel = cancel;
10
+ exports.progress = progress;
11
+ exports.getProgress = getProgress;
12
+ exports.log = log;
13
+ exports.getLogs = getLogs;
14
+ exports.heartbeat = heartbeat;
15
+ /**
16
+ * Get a job with its current state.
17
+ *
18
+ * @param client - FlashQ client instance
19
+ * @param jobId - Job ID
20
+ * @returns Job with state, or null if not found
21
+ *
22
+ * @example
23
+ * ```typescript
24
+ * const result = await client.getJob(123);
25
+ * if (result) {
26
+ * console.log(`Job ${result.job.id} is ${result.state}`);
27
+ * }
28
+ * ```
29
+ */
30
+ async function getJob(client, jobId) {
31
+ const response = await client.send({
32
+ cmd: 'GETJOB',
33
+ id: jobId,
34
+ });
35
+ if (!response.job)
36
+ return null;
37
+ return { job: response.job, state: response.state };
38
+ }
39
+ /**
40
+ * Get job state only.
41
+ *
42
+ * @param client - FlashQ client instance
43
+ * @param jobId - Job ID
44
+ * @returns Job state or null if not found
45
+ *
46
+ * @example
47
+ * ```typescript
48
+ * const state = await client.getState(123);
49
+ * console.log(`Job state: ${state}`);
50
+ * ```
51
+ */
52
+ async function getState(client, jobId) {
53
+ const response = await client.send({
54
+ cmd: 'GETSTATE',
55
+ id: jobId,
56
+ });
57
+ return response.state;
58
+ }
59
+ /**
60
+ * Get job result.
61
+ *
62
+ * @param client - FlashQ client instance
63
+ * @param jobId - Job ID
64
+ * @returns Job result or null
65
+ *
66
+ * @example
67
+ * ```typescript
68
+ * const result = await client.getResult<{ sent: boolean }>(123);
69
+ * ```
70
+ */
71
+ async function getResult(client, jobId) {
72
+ const response = await client.send({
73
+ cmd: 'GETRESULT',
74
+ id: jobId,
75
+ });
76
+ return response.result;
77
+ }
78
+ /**
79
+ * Wait for a job to complete and return its result.
80
+ * Useful for synchronous workflows.
81
+ *
82
+ * @param client - FlashQ client instance
83
+ * @param jobId - Job ID
84
+ * @param timeout - Timeout in ms (default: 30000)
85
+ * @returns Job result or null
86
+ * @throws Error if job fails or times out
87
+ *
88
+ * @example
89
+ * ```typescript
90
+ * const job = await client.push('process', { data: 'value' });
91
+ * const result = await client.finished(job.id);
92
+ * console.log('Result:', result);
93
+ * ```
94
+ */
95
+ async function finished(client, jobId, timeout) {
96
+ const waitTimeout = timeout ?? 30000;
97
+ const requestTimeout = waitTimeout + 5000;
98
+ const response = await client.send({
99
+ cmd: 'WAITJOB',
100
+ id: jobId,
101
+ timeout: waitTimeout,
102
+ }, requestTimeout);
103
+ if (response.error) {
104
+ throw new Error(response.error);
105
+ }
106
+ return response.result;
107
+ }
108
+ /**
109
+ * Get a job by its custom ID.
110
+ * Custom IDs are set using the `jobId` option when pushing.
111
+ *
112
+ * @param client - FlashQ client instance
113
+ * @param customId - Custom job ID
114
+ * @returns Job with state or null
115
+ *
116
+ * @example
117
+ * ```typescript
118
+ * // Push with custom ID
119
+ * await client.push('process', { orderId: 123 }, { jobId: 'order-123' });
120
+ *
121
+ * // Retrieve by custom ID
122
+ * const result = await client.getJobByCustomId('order-123');
123
+ * ```
124
+ */
125
+ async function getJobByCustomId(client, customId) {
126
+ const response = await client.send({
127
+ cmd: 'GETJOBBYCUSTOMID',
128
+ job_id: customId,
129
+ });
130
+ if (!response.job)
131
+ return null;
132
+ return { job: response.job, state: response.state };
133
+ }
134
+ /**
135
+ * Get multiple jobs by their IDs in a single call.
136
+ *
137
+ * @param client - FlashQ client instance
138
+ * @param jobIds - Array of job IDs
139
+ * @returns Array of jobs with states
140
+ *
141
+ * @example
142
+ * ```typescript
143
+ * const jobs = await client.getJobsBatch([1, 2, 3, 4, 5]);
144
+ * ```
145
+ */
146
+ async function getJobsBatch(client, jobIds) {
147
+ const response = await client.send({
148
+ cmd: 'GETJOBSBATCH',
149
+ ids: jobIds,
150
+ });
151
+ return response.jobs.map((j) => ({ job: j.job, state: j.state }));
152
+ }
153
+ /**
154
+ * Cancel a pending job.
155
+ *
156
+ * @param client - FlashQ client instance
157
+ * @param jobId - Job ID
158
+ *
159
+ * @example
160
+ * ```typescript
161
+ * await client.cancel(job.id);
162
+ * ```
163
+ */
164
+ async function cancel(client, jobId) {
165
+ await client.send({
166
+ cmd: 'CANCEL',
167
+ id: jobId,
168
+ });
169
+ }
170
+ /**
171
+ * Update job progress.
172
+ *
173
+ * @param client - FlashQ client instance
174
+ * @param jobId - Job ID
175
+ * @param progress - Progress value (0-100)
176
+ * @param message - Optional progress message
177
+ *
178
+ * @example
179
+ * ```typescript
180
+ * await client.progress(job.id, 50, 'Halfway done');
181
+ * ```
182
+ */
183
+ async function progress(client, jobId, progressValue, message) {
184
+ await client.send({
185
+ cmd: 'PROGRESS',
186
+ id: jobId,
187
+ progress: Math.min(100, Math.max(0, progressValue)),
188
+ message,
189
+ });
190
+ }
191
+ /**
192
+ * Get job progress.
193
+ *
194
+ * @param client - FlashQ client instance
195
+ * @param jobId - Job ID
196
+ * @returns Progress value and message
197
+ *
198
+ * @example
199
+ * ```typescript
200
+ * const { progress, message } = await client.getProgress(job.id);
201
+ * ```
202
+ */
203
+ async function getProgress(client, jobId) {
204
+ const response = await client.send({
205
+ cmd: 'GETPROGRESS',
206
+ id: jobId,
207
+ });
208
+ return { progress: response.progress.progress, message: response.progress.message };
209
+ }
210
+ /**
211
+ * Add a log entry to a job.
212
+ *
213
+ * @param client - FlashQ client instance
214
+ * @param jobId - Job ID
215
+ * @param message - Log message
216
+ * @param level - Log level (info, warn, error)
217
+ *
218
+ * @example
219
+ * ```typescript
220
+ * await client.log(job.id, 'Processing step 1', 'info');
221
+ * await client.log(job.id, 'Warning: low memory', 'warn');
222
+ * ```
223
+ */
224
+ async function log(client, jobId, message, level = 'info') {
225
+ await client.send({
226
+ cmd: 'LOG',
227
+ job_id: jobId,
228
+ message,
229
+ level,
230
+ });
231
+ }
232
+ /**
233
+ * Get log entries for a job.
234
+ *
235
+ * @param client - FlashQ client instance
236
+ * @param jobId - Job ID
237
+ * @returns Array of log entries
238
+ *
239
+ * @example
240
+ * ```typescript
241
+ * const logs = await client.getLogs(job.id);
242
+ * ```
243
+ */
244
+ async function getLogs(client, jobId) {
245
+ const response = await client.send({
246
+ cmd: 'GETLOGS',
247
+ job_id: jobId,
248
+ });
249
+ return response.logs;
250
+ }
251
+ /**
252
+ * Send a heartbeat to prevent job from being marked as stalled.
253
+ *
254
+ * @param client - FlashQ client instance
255
+ * @param jobId - Job ID
256
+ *
257
+ * @example
258
+ * ```typescript
259
+ * // In a long-running job processor
260
+ * for (const item of largeDataset) {
261
+ * await processItem(item);
262
+ * await client.heartbeat(job.id);
263
+ * }
264
+ * ```
265
+ */
266
+ async function heartbeat(client, jobId) {
267
+ await client.send({
268
+ cmd: 'HEARTBEAT',
269
+ job_id: jobId,
270
+ });
271
+ }
272
+ //# sourceMappingURL=jobs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jobs.js","sourceRoot":"","sources":["../../src/client/jobs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Key-Value storage operations for FlashQ client
3
+ *
4
+ * Redis-like KV store with TTL support and batch operations.
5
+ */
6
+ import type { FlashQConnection } from './connection';
7
+ export interface KvSetOptions {
8
+ /** Time-to-live in milliseconds */
9
+ ttl?: number;
10
+ }
11
+ export interface KvEntry {
12
+ key: string;
13
+ value: unknown;
14
+ ttl?: number;
15
+ }
16
+ /**
17
+ * Set a key-value pair.
18
+ */
19
+ export declare function set(client: FlashQConnection, key: string, value: unknown, options?: KvSetOptions): Promise<void>;
20
+ /**
21
+ * Get a value by key.
22
+ */
23
+ export declare function get<T = unknown>(client: FlashQConnection, key: string): Promise<T | null>;
24
+ /**
25
+ * Delete a key.
26
+ */
27
+ export declare function del(client: FlashQConnection, key: string): Promise<boolean>;
28
+ /**
29
+ * Check if a key exists.
30
+ */
31
+ export declare function exists(client: FlashQConnection, key: string): Promise<boolean>;
32
+ /**
33
+ * Set TTL on an existing key.
34
+ */
35
+ export declare function expire(client: FlashQConnection, key: string, ttl: number): Promise<boolean>;
36
+ /**
37
+ * Get remaining TTL for a key.
38
+ * Returns: milliseconds remaining, -1 if no TTL, -2 if key doesn't exist.
39
+ */
40
+ export declare function ttl(client: FlashQConnection, key: string): Promise<number>;
41
+ /**
42
+ * Get multiple values by keys (MGET).
43
+ */
44
+ export declare function mget<T = unknown>(client: FlashQConnection, keys: string[]): Promise<(T | null)[]>;
45
+ /**
46
+ * Set multiple key-value pairs (MSET).
47
+ */
48
+ export declare function mset(client: FlashQConnection, entries: KvEntry[]): Promise<number>;
49
+ /**
50
+ * List keys matching a pattern.
51
+ * Supports glob patterns: * (any chars), ? (one char)
52
+ */
53
+ export declare function keys(client: FlashQConnection, pattern?: string): Promise<string[]>;
54
+ /**
55
+ * Increment a numeric value.
56
+ * If key doesn't exist, creates it with value = by.
57
+ */
58
+ export declare function incr(client: FlashQConnection, key: string, by?: number): Promise<number>;
59
+ /**
60
+ * Decrement a numeric value.
61
+ */
62
+ export declare function decr(client: FlashQConnection, key: string, by?: number): Promise<number>;
63
+ //# sourceMappingURL=kv.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kv.d.ts","sourceRoot":"","sources":["../../src/client/kv.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAErD,MAAM,WAAW,YAAY;IAC3B,mCAAmC;IACnC,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,OAAO;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAID;;GAEG;AACH,wBAAsB,GAAG,CACvB,MAAM,EAAE,gBAAgB,EACxB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,OAAO,EACd,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,IAAI,CAAC,CAOf;AAED;;GAEG;AACH,wBAAsB,GAAG,CAAC,CAAC,GAAG,OAAO,EACnC,MAAM,EAAE,gBAAgB,EACxB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAMnB;AAED;;GAEG;AACH,wBAAsB,GAAG,CACvB,MAAM,EAAE,gBAAgB,EACxB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,OAAO,CAAC,CAMlB;AAED;;GAEG;AACH,wBAAsB,MAAM,CAC1B,MAAM,EAAE,gBAAgB,EACxB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,OAAO,CAAC,CAMlB;AAID;;GAEG;AACH,wBAAsB,MAAM,CAC1B,MAAM,EAAE,gBAAgB,EACxB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED;;;GAGG;AACH,wBAAsB,GAAG,CACvB,MAAM,EAAE,gBAAgB,EACxB,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,MAAM,CAAC,CAMjB;AAID;;GAEG;AACH,wBAAsB,IAAI,CAAC,CAAC,GAAG,OAAO,EACpC,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,MAAM,EAAE,GACb,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,CAMvB;AAED;;GAEG;AACH,wBAAsB,IAAI,CACxB,MAAM,EAAE,gBAAgB,EACxB,OAAO,EAAE,OAAO,EAAE,GACjB,OAAO,CAAC,MAAM,CAAC,CAMjB;AAID;;;GAGG;AACH,wBAAsB,IAAI,CACxB,MAAM,EAAE,gBAAgB,EACxB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,EAAE,CAAC,CAMnB;AAID;;;GAGG;AACH,wBAAsB,IAAI,CACxB,MAAM,EAAE,gBAAgB,EACxB,GAAG,EAAE,MAAM,EACX,EAAE,GAAE,MAAU,GACb,OAAO,CAAC,MAAM,CAAC,CAOjB;AAED;;GAEG;AACH,wBAAsB,IAAI,CACxB,MAAM,EAAE,gBAAgB,EACxB,GAAG,EAAE,MAAM,EACX,EAAE,GAAE,MAAU,GACb,OAAO,CAAC,MAAM,CAAC,CAEjB"}
@@ -0,0 +1,131 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.set = set;
4
+ exports.get = get;
5
+ exports.del = del;
6
+ exports.exists = exists;
7
+ exports.expire = expire;
8
+ exports.ttl = ttl;
9
+ exports.mget = mget;
10
+ exports.mset = mset;
11
+ exports.keys = keys;
12
+ exports.incr = incr;
13
+ exports.decr = decr;
14
+ // ============== Core Operations ==============
15
+ /**
16
+ * Set a key-value pair.
17
+ */
18
+ async function set(client, key, value, options = {}) {
19
+ await client.send({
20
+ cmd: 'KVSET',
21
+ key,
22
+ value,
23
+ ttl: options.ttl,
24
+ });
25
+ }
26
+ /**
27
+ * Get a value by key.
28
+ */
29
+ async function get(client, key) {
30
+ const response = await client.send({
31
+ cmd: 'KVGET',
32
+ key,
33
+ });
34
+ return response.value ?? null;
35
+ }
36
+ /**
37
+ * Delete a key.
38
+ */
39
+ async function del(client, key) {
40
+ const response = await client.send({
41
+ cmd: 'KVDEL',
42
+ key,
43
+ });
44
+ return response.exists;
45
+ }
46
+ /**
47
+ * Check if a key exists.
48
+ */
49
+ async function exists(client, key) {
50
+ const response = await client.send({
51
+ cmd: 'KVEXISTS',
52
+ key,
53
+ });
54
+ return response.exists;
55
+ }
56
+ // ============== TTL Operations ==============
57
+ /**
58
+ * Set TTL on an existing key.
59
+ */
60
+ async function expire(client, key, ttl) {
61
+ const response = await client.send({
62
+ cmd: 'KVEXPIRE',
63
+ key,
64
+ ttl,
65
+ });
66
+ return response.exists;
67
+ }
68
+ /**
69
+ * Get remaining TTL for a key.
70
+ * Returns: milliseconds remaining, -1 if no TTL, -2 if key doesn't exist.
71
+ */
72
+ async function ttl(client, key) {
73
+ const response = await client.send({
74
+ cmd: 'KVTTL',
75
+ key,
76
+ });
77
+ return response.ttl;
78
+ }
79
+ // ============== Batch Operations ==============
80
+ /**
81
+ * Get multiple values by keys (MGET).
82
+ */
83
+ async function mget(client, keys) {
84
+ const response = await client.send({
85
+ cmd: 'KVMGET',
86
+ keys,
87
+ });
88
+ return response.values;
89
+ }
90
+ /**
91
+ * Set multiple key-value pairs (MSET).
92
+ */
93
+ async function mset(client, entries) {
94
+ const response = await client.send({
95
+ cmd: 'KVMSET',
96
+ entries,
97
+ });
98
+ return response.count;
99
+ }
100
+ // ============== Pattern Matching ==============
101
+ /**
102
+ * List keys matching a pattern.
103
+ * Supports glob patterns: * (any chars), ? (one char)
104
+ */
105
+ async function keys(client, pattern) {
106
+ const response = await client.send({
107
+ cmd: 'KVKEYS',
108
+ pattern,
109
+ });
110
+ return response.keys;
111
+ }
112
+ // ============== Atomic Operations ==============
113
+ /**
114
+ * Increment a numeric value.
115
+ * If key doesn't exist, creates it with value = by.
116
+ */
117
+ async function incr(client, key, by = 1) {
118
+ const response = await client.send({
119
+ cmd: 'KVINCR',
120
+ key,
121
+ by,
122
+ });
123
+ return response.value;
124
+ }
125
+ /**
126
+ * Decrement a numeric value.
127
+ */
128
+ async function decr(client, key, by = 1) {
129
+ return incr(client, key, -by);
130
+ }
131
+ //# sourceMappingURL=kv.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kv.js","sourceRoot":"","sources":["../../src/client/kv.ts"],"names":[],"mappings":"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"}