@waku/sds 0.0.4-383e0b2.0 → 0.0.4-4c18ca2.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.
@@ -1,6 +1,7 @@
1
1
  import { TypedEventEmitter } from "@libp2p/interface";
2
2
  import { sha256 } from "@noble/hashes/sha256";
3
3
  import { bytesToHex } from "@noble/hashes/utils";
4
+ import { Logger } from "@waku/utils";
4
5
  import { DefaultBloomFilter } from "../bloom_filter/bloom.js";
5
6
  import { Command } from "./command_queue.js";
6
7
  import { MessageChannelEvent } from "./events.js";
@@ -10,14 +11,15 @@ export const DEFAULT_BLOOM_FILTER_OPTIONS = {
10
11
  };
11
12
  const DEFAULT_CAUSAL_HISTORY_SIZE = 2;
12
13
  const DEFAULT_RECEIVED_MESSAGE_TIMEOUT = 1000 * 60 * 5; // 5 minutes
14
+ const log = new Logger("sds:message-channel");
13
15
  export class MessageChannel extends TypedEventEmitter {
16
+ channelId;
14
17
  lamportTimestamp;
15
18
  filter;
16
19
  outgoingBuffer;
17
20
  acknowledgements;
18
21
  incomingBuffer;
19
22
  localHistory;
20
- channelId;
21
23
  causalHistorySize;
22
24
  acknowledgementCount;
23
25
  timeReceived;
@@ -53,40 +55,61 @@ export class MessageChannel extends TypedEventEmitter {
53
55
  this.receivedMessageTimeout =
54
56
  options.receivedMessageTimeout ?? DEFAULT_RECEIVED_MESSAGE_TIMEOUT;
55
57
  }
56
- // Periodically called by the library consumer to process async operations
57
- // in a sequential manner.
58
+ static getMessageId(payload) {
59
+ return bytesToHex(sha256(payload));
60
+ }
61
+ /**
62
+ * Processes all queued tasks sequentially to ensure proper message ordering.
63
+ *
64
+ * This method should be called periodically by the library consumer to execute
65
+ * queued send/receive operations in the correct sequence.
66
+ *
67
+ * @example
68
+ * ```typescript
69
+ * const channel = new MessageChannel("my-channel");
70
+ *
71
+ * // Queue some operations
72
+ * await channel.sendMessage(payload, callback);
73
+ * channel.receiveMessage(incomingMessage);
74
+ *
75
+ * // Process all queued operations
76
+ * await channel.processTasks();
77
+ * ```
78
+ *
79
+ * @throws Will emit a 'taskError' event if any task fails, but continues processing remaining tasks
80
+ */
58
81
  async processTasks() {
59
82
  while (this.tasks.length > 0) {
60
83
  const item = this.tasks.shift();
61
84
  if (!item) {
62
85
  continue;
63
86
  }
64
- // Use a generic helper function to ensure type safety
65
87
  await this.executeTask(item);
66
88
  }
67
89
  }
68
- async executeTask(item) {
69
- const handler = this.handlers[item.command];
70
- await handler(item.params);
71
- }
72
- static getMessageId(payload) {
73
- return bytesToHex(sha256(payload));
74
- }
75
90
  /**
76
- * Send a message to the SDS channel.
91
+ * Queues a message to be sent on this channel.
77
92
  *
78
- * Increments the lamport timestamp, constructs a `Message` object
79
- * with the given payload, and adds it to the outgoing buffer.
93
+ * The message will be processed sequentially when processTasks() is called.
94
+ * This ensures proper lamport timestamp ordering and causal history tracking.
80
95
  *
81
- * If the callback is successful, the message is also added to
82
- * the bloom filter and message history. In the context of
83
- * Waku, this likely means the message was published via
84
- * light push or relay.
96
+ * @param payload - The message content as a byte array
97
+ * @param callback - Optional callback function called after the message is processed
98
+ * @returns Promise that resolves when the message is queued (not sent)
85
99
  *
86
- * See https://rfc.vac.dev/vac/raw/sds/#send-message
100
+ * @example
101
+ * ```typescript
102
+ * const channel = new MessageChannel("chat-room");
103
+ * const message = new TextEncoder().encode("Hello, world!");
87
104
  *
88
- * @param payload - The payload to send.
89
- * @param callback - A callback function that returns a boolean indicating whether the message was sent successfully.
105
+ * await channel.sendMessage(message, async (processedMessage) => {
106
+ * console.log("Message processed:", processedMessage.messageId);
107
+ * return { success: true };
108
+ * });
109
+ *
110
+ * // Actually send the message
111
+ * await channel.processTasks();
112
+ * ```
90
113
  */
91
114
  async sendMessage(payload, callback) {
92
115
  this.tasks.push({
@@ -97,38 +120,6 @@ export class MessageChannel extends TypedEventEmitter {
97
120
  }
98
121
  });
99
122
  }
100
- async _sendMessage(payload, callback) {
101
- this.lamportTimestamp++;
102
- const messageId = MessageChannel.getMessageId(payload);
103
- const message = {
104
- messageId,
105
- channelId: this.channelId,
106
- lamportTimestamp: this.lamportTimestamp,
107
- causalHistory: this.localHistory
108
- .slice(-this.causalHistorySize)
109
- .map(({ historyEntry }) => historyEntry),
110
- bloomFilter: this.filter.toBytes(),
111
- content: payload
112
- };
113
- this.outgoingBuffer.push(message);
114
- if (callback) {
115
- const { success, retrievalHint } = await callback(message);
116
- if (success) {
117
- this.filter.insert(messageId);
118
- this.localHistory.push({
119
- timestamp: this.lamportTimestamp,
120
- historyEntry: {
121
- messageId,
122
- retrievalHint
123
- }
124
- });
125
- this.timeReceived.set(messageId, Date.now());
126
- this.safeDispatchEvent(MessageChannelEvent.MessageSent, {
127
- detail: message
128
- });
129
- }
130
- }
131
- }
132
123
  /**
133
124
  * Sends a short-lived message without synchronization or reliability requirements.
134
125
  *
@@ -151,32 +142,24 @@ export class MessageChannel extends TypedEventEmitter {
151
142
  }
152
143
  });
153
144
  }
154
- async _sendEphemeralMessage(payload, callback) {
155
- const message = {
156
- messageId: MessageChannel.getMessageId(payload),
157
- channelId: this.channelId,
158
- content: payload,
159
- lamportTimestamp: undefined,
160
- causalHistory: [],
161
- bloomFilter: undefined
162
- };
163
- if (callback) {
164
- await callback(message);
165
- }
166
- }
167
145
  /**
168
- * Process a received SDS message for this channel.
146
+ * Queues a received message for processing.
147
+ *
148
+ * The message will be processed when processTasks() is called, ensuring
149
+ * proper dependency resolution and causal ordering.
150
+ *
151
+ * @param message - The message to receive and process
169
152
  *
170
- * Review the acknowledgement status of messages in the outgoing buffer
171
- * by inspecting the received message's bloom filter and causal history.
172
- * Add the received message to the bloom filter.
173
- * If the local history contains every message in the received message's
174
- * causal history, deliver the message. Otherwise, add the message to the
175
- * incoming buffer.
153
+ * @example
154
+ * ```typescript
155
+ * const channel = new MessageChannel("chat-room");
176
156
  *
177
- * See https://rfc.vac.dev/vac/raw/sds/#receive-message
157
+ * // Receive a message from the network
158
+ * channel.receiveMessage(incomingMessage);
178
159
  *
179
- * @param message - The received SDS message.
160
+ * // Process the received message
161
+ * await channel.processTasks();
162
+ * ```
180
163
  */
181
164
  receiveMessage(message) {
182
165
  this.tasks.push({
@@ -186,62 +169,17 @@ export class MessageChannel extends TypedEventEmitter {
186
169
  }
187
170
  });
188
171
  }
189
- _receiveMessage(message) {
190
- if (message.content &&
191
- message.content.length > 0 &&
192
- this.timeReceived.has(message.messageId)) {
193
- // Received a duplicate message
194
- return;
195
- }
196
- if (!message.lamportTimestamp) {
197
- // Messages with no timestamp are ephemeral messages and should be delivered immediately
198
- this.deliverMessage(message);
199
- return;
200
- }
201
- if (message.content?.length === 0) {
202
- this.safeDispatchEvent(MessageChannelEvent.SyncReceived, {
203
- detail: message
204
- });
205
- }
206
- else {
207
- this.safeDispatchEvent(MessageChannelEvent.MessageReceived, {
208
- detail: message
209
- });
210
- }
211
- // review ack status
212
- this.reviewAckStatus(message);
213
- // add to bloom filter (skip for messages with empty content)
214
- if (message.content?.length && message.content.length > 0) {
215
- this.filter.insert(message.messageId);
216
- }
217
- // verify causal history
218
- const dependenciesMet = message.causalHistory.every((historyEntry) => this.localHistory.some(({ historyEntry: { messageId } }) => messageId === historyEntry.messageId));
219
- if (!dependenciesMet) {
220
- this.incomingBuffer.push(message);
221
- this.timeReceived.set(message.messageId, Date.now());
222
- }
223
- else {
224
- this.deliverMessage(message);
225
- this.safeDispatchEvent(MessageChannelEvent.MessageDelivered, {
226
- detail: {
227
- messageId: message.messageId,
228
- sentOrReceived: "received"
229
- }
230
- });
231
- }
232
- }
233
- // https://rfc.vac.dev/vac/raw/sds/#periodic-incoming-buffer-sweep
234
- // Note that even though this function has side effects, it is not async
235
- // and does not need to be called through the queue.
172
+ /**
173
+ * Processes messages in the incoming buffer, delivering those with satisfied dependencies.
174
+ *
175
+ * @returns Array of history entries for messages still missing dependencies
176
+ */
236
177
  sweepIncomingBuffer() {
237
178
  const { buffer, missing } = this.incomingBuffer.reduce(({ buffer, missing }, message) => {
238
- // Check each message for missing dependencies
239
179
  const missingDependencies = message.causalHistory.filter((messageHistoryEntry) => !this.localHistory.some(({ historyEntry: { messageId } }) => messageId === messageHistoryEntry.messageId));
240
180
  if (missingDependencies.length === 0) {
241
- // Any message with no missing dependencies is delivered
242
- // and removed from the buffer (implicitly by not adding it to the new incoming buffer)
243
181
  this.deliverMessage(message);
244
- this.safeDispatchEvent(MessageChannelEvent.MessageDelivered, {
182
+ this.safeSendEvent(MessageChannelEvent.MessageDelivered, {
245
183
  detail: {
246
184
  messageId: message.messageId,
247
185
  sentOrReceived: "received"
@@ -258,8 +196,6 @@ export class MessageChannel extends TypedEventEmitter {
258
196
  return { buffer, missing };
259
197
  }
260
198
  }
261
- // Any message with missing dependencies stays in the buffer
262
- // and the missing message IDs are returned for processing.
263
199
  missingDependencies.forEach((dependency) => {
264
200
  missing.add(dependency);
265
201
  });
@@ -268,16 +204,14 @@ export class MessageChannel extends TypedEventEmitter {
268
204
  missing
269
205
  };
270
206
  }, { buffer: new Array(), missing: new Set() });
271
- // Update the incoming buffer to only include messages with no missing dependencies
272
207
  this.incomingBuffer = buffer;
273
- this.safeDispatchEvent(MessageChannelEvent.MissedMessages, {
208
+ this.safeSendEvent(MessageChannelEvent.MissedMessages, {
274
209
  detail: Array.from(missing)
275
210
  });
276
211
  return Array.from(missing);
277
212
  }
278
213
  // https://rfc.vac.dev/vac/raw/sds/#periodic-outgoing-buffer-sweep
279
214
  sweepOutgoingBuffer() {
280
- // Partition all messages in the outgoing buffer into unacknowledged and possibly acknowledged messages
281
215
  return this.outgoingBuffer.reduce(({ unacknowledged, possiblyAcknowledged }, message) => {
282
216
  if (this.acknowledgements.has(message.messageId)) {
283
217
  return {
@@ -318,13 +252,136 @@ export class MessageChannel extends TypedEventEmitter {
318
252
  content: emptyMessage
319
253
  };
320
254
  if (callback) {
321
- await callback(message);
322
- this.safeDispatchEvent(MessageChannelEvent.SyncSent, {
255
+ try {
256
+ await callback(message);
257
+ this.safeSendEvent(MessageChannelEvent.SyncSent, {
258
+ detail: message
259
+ });
260
+ return true;
261
+ }
262
+ catch (error) {
263
+ log.error("Callback execution failed in sendSyncMessage:", error);
264
+ throw error;
265
+ }
266
+ }
267
+ return false;
268
+ }
269
+ _receiveMessage(message) {
270
+ const isDuplicate = message.content &&
271
+ message.content.length > 0 &&
272
+ this.timeReceived.has(message.messageId);
273
+ if (isDuplicate) {
274
+ return;
275
+ }
276
+ if (!message.lamportTimestamp) {
277
+ this.deliverMessage(message);
278
+ return;
279
+ }
280
+ if (message.content?.length === 0) {
281
+ this.safeSendEvent(MessageChannelEvent.SyncReceived, {
323
282
  detail: message
324
283
  });
325
- return true;
326
284
  }
327
- return false;
285
+ else {
286
+ this.safeSendEvent(MessageChannelEvent.MessageReceived, {
287
+ detail: message
288
+ });
289
+ }
290
+ this.reviewAckStatus(message);
291
+ if (message.content?.length && message.content.length > 0) {
292
+ this.filter.insert(message.messageId);
293
+ }
294
+ const dependenciesMet = message.causalHistory.every((historyEntry) => this.localHistory.some(({ historyEntry: { messageId } }) => messageId === historyEntry.messageId));
295
+ if (!dependenciesMet) {
296
+ this.incomingBuffer.push(message);
297
+ this.timeReceived.set(message.messageId, Date.now());
298
+ }
299
+ else {
300
+ this.deliverMessage(message);
301
+ this.safeSendEvent(MessageChannelEvent.MessageDelivered, {
302
+ detail: {
303
+ messageId: message.messageId,
304
+ sentOrReceived: "received"
305
+ }
306
+ });
307
+ }
308
+ }
309
+ async executeTask(item) {
310
+ try {
311
+ const handler = this.handlers[item.command];
312
+ await handler(item.params);
313
+ }
314
+ catch (error) {
315
+ log.error(`Task execution failed for command ${item.command}:`, error);
316
+ this.dispatchEvent(new CustomEvent("taskError", {
317
+ detail: { command: item.command, error, params: item.params }
318
+ }));
319
+ }
320
+ }
321
+ safeSendEvent(event, eventInit) {
322
+ try {
323
+ this.dispatchEvent(new CustomEvent(event, eventInit));
324
+ }
325
+ catch (error) {
326
+ log.error(`Failed to dispatch event ${event}:`, error);
327
+ }
328
+ }
329
+ async _sendMessage(payload, callback) {
330
+ this.lamportTimestamp++;
331
+ const messageId = MessageChannel.getMessageId(payload);
332
+ const message = {
333
+ messageId,
334
+ channelId: this.channelId,
335
+ lamportTimestamp: this.lamportTimestamp,
336
+ causalHistory: this.localHistory
337
+ .slice(-this.causalHistorySize)
338
+ .map(({ historyEntry }) => historyEntry),
339
+ bloomFilter: this.filter.toBytes(),
340
+ content: payload
341
+ };
342
+ this.outgoingBuffer.push(message);
343
+ if (callback) {
344
+ try {
345
+ const { success, retrievalHint } = await callback(message);
346
+ if (success) {
347
+ this.filter.insert(messageId);
348
+ this.localHistory.push({
349
+ timestamp: this.lamportTimestamp,
350
+ historyEntry: {
351
+ messageId,
352
+ retrievalHint
353
+ }
354
+ });
355
+ this.timeReceived.set(messageId, Date.now());
356
+ this.safeSendEvent(MessageChannelEvent.MessageSent, {
357
+ detail: message
358
+ });
359
+ }
360
+ }
361
+ catch (error) {
362
+ log.error("Callback execution failed in _sendMessage:", error);
363
+ throw error;
364
+ }
365
+ }
366
+ }
367
+ async _sendEphemeralMessage(payload, callback) {
368
+ const message = {
369
+ messageId: MessageChannel.getMessageId(payload),
370
+ channelId: this.channelId,
371
+ content: payload,
372
+ lamportTimestamp: undefined,
373
+ causalHistory: [],
374
+ bloomFilter: undefined
375
+ };
376
+ if (callback) {
377
+ try {
378
+ await callback(message);
379
+ }
380
+ catch (error) {
381
+ log.error("Callback execution failed in _sendEphemeralMessage:", error);
382
+ throw error;
383
+ }
384
+ }
328
385
  }
329
386
  // See https://rfc.vac.dev/vac/raw/sds/#deliver-message
330
387
  deliverMessage(message, retrievalHint) {
@@ -362,13 +419,12 @@ export class MessageChannel extends TypedEventEmitter {
362
419
  // to determine the acknowledgement status of messages in the outgoing buffer.
363
420
  // See https://rfc.vac.dev/vac/raw/sds/#review-ack-status
364
421
  reviewAckStatus(receivedMessage) {
365
- // the participant MUST mark all messages in the received causal_history as acknowledged.
366
422
  receivedMessage.causalHistory.forEach(({ messageId }) => {
367
423
  this.outgoingBuffer = this.outgoingBuffer.filter(({ messageId: outgoingMessageId }) => {
368
424
  if (outgoingMessageId !== messageId) {
369
425
  return true;
370
426
  }
371
- this.safeDispatchEvent(MessageChannelEvent.MessageAcknowledged, {
427
+ this.safeSendEvent(MessageChannelEvent.MessageAcknowledged, {
372
428
  detail: messageId
373
429
  });
374
430
  return false;
@@ -378,7 +434,6 @@ export class MessageChannel extends TypedEventEmitter {
378
434
  this.filter.insert(messageId);
379
435
  }
380
436
  });
381
- // the participant MUST mark all messages included in the bloom_filter as possibly acknowledged
382
437
  if (!receivedMessage.bloomFilter) {
383
438
  return;
384
439
  }
@@ -393,7 +448,7 @@ export class MessageChannel extends TypedEventEmitter {
393
448
  const count = (this.acknowledgements.get(message.messageId) ?? 0) + 1;
394
449
  if (count < this.acknowledgementCount) {
395
450
  this.acknowledgements.set(message.messageId, count);
396
- this.safeDispatchEvent(MessageChannelEvent.PartialAcknowledgement, {
451
+ this.safeSendEvent(MessageChannelEvent.PartialAcknowledgement, {
397
452
  detail: {
398
453
  messageId: message.messageId,
399
454
  count
@@ -1 +1 @@
1
- {"version":3,"file":"message_channel.js","sourceRoot":"","sources":["../../src/message_channel/message_channel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"message_channel.js","sourceRoot":"","sources":["../../src/message_channel/message_channel.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1 +1 @@
1
- {"name":"@waku/sds","version":"0.0.4-383e0b2.0","description":"Scalable Data Sync implementation for the browser. Based on https://github.com/vacp2p/rfc-index/blob/main/vac/raw/sds.md","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"typesVersions":{"*":{"*":["*","dist/*","dist/*/index"]}},"type":"module","author":"Waku Team","homepage":"https://github.com/waku-org/js-waku/tree/master/packages/scalable-data-sync#readme","repository":{"type":"git","url":"https://github.com/waku-org/js-waku.git"},"bugs":{"url":"https://github.com/waku-org/js-waku/issues"},"license":"MIT OR Apache-2.0","keywords":["waku","decentralized","secure","communication","web3","ethereum","dapps","privacy"],"scripts":{"build":"run-s build:**","build:esm":"tsc","build:bundle":"rollup --config rollup.config.js","fix":"run-s fix:*","fix:lint":"eslint src *.js --fix","check":"run-s check:*","check:lint":"eslint src *.js","check:spelling":"cspell \"{README.md,src/**/*.ts}\"","check:tsc":"tsc -p tsconfig.dev.json","prepublish":"npm run build","reset-hard":"git clean -dfx -e .idea && git reset --hard && npm i && npm run build","test":"NODE_ENV=test run-s test:*","test:node":"NODE_ENV=test TS_NODE_PROJECT=./tsconfig.dev.json mocha"},"engines":{"node":">=20"},"dependencies":{"@libp2p/interface":"2.7.0","@noble/hashes":"^1.7.1","@waku/message-hash":"0.1.20-383e0b2.0","@waku/proto":"0.0.11-383e0b2.0","@waku/utils":"0.0.24-383e0b2.0","chai":"^5.1.2"},"devDependencies":{"@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.2.3","@waku/build-utils":"*","allure-commandline":"^2.27.0","allure-mocha":"^2.9.2","cspell":"^8.6.1","fast-check":"^3.19.0","mocha-multi-reporters":"^1.5.1","npm-run-all":"^4.1.5","rollup":"^4.12.0"},"files":["dist","bundle","src/**/*.ts","!**/*.spec.*","!**/*.json","CHANGELOG.md","LICENSE","README.md"]}
1
+ {"name":"@waku/sds","version":"0.0.4-4c18ca2.0","description":"Scalable Data Sync implementation for the browser. Based on https://github.com/vacp2p/rfc-index/blob/main/vac/raw/sds.md","types":"./dist/index.d.ts","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"typesVersions":{"*":{"*":["*","dist/*","dist/*/index"]}},"type":"module","author":"Waku Team","homepage":"https://github.com/waku-org/js-waku/tree/master/packages/scalable-data-sync#readme","repository":{"type":"git","url":"https://github.com/waku-org/js-waku.git"},"bugs":{"url":"https://github.com/waku-org/js-waku/issues"},"license":"MIT OR Apache-2.0","keywords":["waku","decentralized","secure","communication","web3","ethereum","dapps","privacy"],"scripts":{"build":"run-s build:**","build:esm":"tsc","build:bundle":"rollup --config rollup.config.js","fix":"run-s fix:*","fix:lint":"eslint src *.js --fix","check":"run-s check:*","check:lint":"eslint src *.js","check:spelling":"cspell \"{README.md,src/**/*.ts}\"","check:tsc":"tsc -p tsconfig.dev.json","prepublish":"npm run build","reset-hard":"git clean -dfx -e .idea && git reset --hard && npm i && npm run build","test":"NODE_ENV=test run-s test:*","test:node":"NODE_ENV=test TS_NODE_PROJECT=./tsconfig.dev.json mocha"},"engines":{"node":">=22"},"dependencies":{"@libp2p/interface":"2.10.4","@noble/hashes":"^1.7.1","@waku/proto":"0.0.11-4c18ca2.0","@waku/utils":"0.0.24-4c18ca2.0","chai":"^5.1.2"},"devDependencies":{"@rollup/plugin-commonjs":"^25.0.7","@rollup/plugin-json":"^6.0.0","@rollup/plugin-node-resolve":"^15.2.3","@waku/build-utils":"*","allure-commandline":"^2.27.0","allure-mocha":"^2.9.2","cspell":"^8.6.1","fast-check":"^3.19.0","mocha-multi-reporters":"^1.5.1","npm-run-all":"^4.1.5","rollup":"^4.12.0"},"files":["dist","bundle","src/**/*.ts","!**/*.spec.*","!**/*.json","CHANGELOG.md","LICENSE","README.md"]}
package/src/index.ts CHANGED
@@ -1,5 +1,17 @@
1
1
  import { BloomFilter } from "./bloom_filter/bloom.js";
2
2
 
3
- export * from "./message_channel/index.js";
3
+ export {
4
+ MessageChannel,
5
+ MessageChannelEvent,
6
+ encodeMessage,
7
+ decodeMessage
8
+ } from "./message_channel/index.js";
9
+
10
+ export type {
11
+ Message,
12
+ HistoryEntry,
13
+ ChannelId,
14
+ MessageChannelEvents
15
+ } from "./message_channel/index.js";
4
16
 
5
17
  export { BloomFilter };
@@ -1,4 +1,4 @@
1
- import { Message } from "./events.js";
1
+ import type { Message } from "./events.js";
2
2
 
3
3
  export enum Command {
4
4
  Send = "send",
@@ -28,7 +28,6 @@ export type Task<A extends Command = Command> = {
28
28
  params: ParamsByAction[A];
29
29
  };
30
30
 
31
- // Define a mapping for handlers based on action type
32
31
  export type Handlers = {
33
32
  [A in Command]: (params: ParamsByAction[A]) => Promise<void>;
34
33
  };