@massalabs/gossip-sdk 0.0.2-dev.20260220142001 → 0.0.2-dev.20260223065033

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 (73) hide show
  1. package/README.md +26 -3
  2. package/dist/core/SdkEventEmitter.d.ts +2 -0
  3. package/dist/core/SdkEventEmitter.js +2 -0
  4. package/dist/{db.d.ts → db/db.d.ts} +14 -3
  5. package/dist/{db.js → db/db.js} +17 -8
  6. package/dist/db/exec-utils.d.ts +19 -0
  7. package/dist/db/exec-utils.js +48 -0
  8. package/dist/db/generated-ddl.d.ts +1 -0
  9. package/dist/db/generated-ddl.js +31 -0
  10. package/dist/db/index.d.ts +3 -0
  11. package/dist/db/index.js +3 -0
  12. package/dist/db/queries/activeSeekers.d.ts +1 -0
  13. package/dist/{queries → db/queries}/activeSeekers.js +0 -5
  14. package/dist/{queries → db/queries}/messages.d.ts +2 -2
  15. package/dist/{queries → db/queries}/messages.js +3 -3
  16. package/dist/{queries → db/queries}/userProfile.d.ts +1 -1
  17. package/dist/{queries → db/queries}/userProfile.js +1 -1
  18. package/dist/db/schema/_helpers.d.ts +26 -0
  19. package/dist/db/schema/_helpers.js +15 -0
  20. package/dist/db/schema/activeSeekers.d.ts +43 -0
  21. package/dist/db/schema/activeSeekers.js +6 -0
  22. package/dist/db/schema/announcementCursors.d.ts +45 -0
  23. package/dist/db/schema/announcementCursors.js +5 -0
  24. package/dist/db/schema/contacts.d.ts +170 -0
  25. package/dist/db/schema/contacts.js +16 -0
  26. package/dist/db/schema/discussions.d.ts +336 -0
  27. package/dist/db/schema/discussions.js +31 -0
  28. package/dist/db/schema/index.d.ts +8 -0
  29. package/dist/db/schema/index.js +8 -0
  30. package/dist/db/schema/messages.d.ts +309 -0
  31. package/dist/db/schema/messages.js +29 -0
  32. package/dist/db/schema/pendingAnnouncements.d.ts +79 -0
  33. package/dist/db/schema/pendingAnnouncements.js +11 -0
  34. package/dist/db/schema/pendingEncryptedMessages.d.ts +79 -0
  35. package/dist/db/schema/pendingEncryptedMessages.js +11 -0
  36. package/dist/db/schema/userProfile.d.ts +208 -0
  37. package/dist/db/schema/userProfile.js +20 -0
  38. package/dist/{sqlite-worker.js → db/sqlite-worker.js} +2 -30
  39. package/dist/db/sqlite.d.ts +77 -0
  40. package/dist/db/sqlite.js +254 -0
  41. package/dist/gossip.d.ts +1 -41
  42. package/dist/gossip.js +8 -10
  43. package/dist/index.d.ts +3 -3
  44. package/dist/index.js +3 -3
  45. package/dist/services/announcement.js +1 -1
  46. package/dist/services/discussion.js +1 -1
  47. package/dist/services/message.d.ts +1 -1
  48. package/dist/services/message.js +2 -3
  49. package/dist/services/refresh.js +1 -1
  50. package/dist/utils/contacts.d.ts +11 -0
  51. package/dist/utils/contacts.js +30 -2
  52. package/dist/utils/discussions.d.ts +1 -1
  53. package/dist/utils/discussions.js +1 -1
  54. package/dist/utils/validation.js +1 -1
  55. package/package.json +2 -1
  56. package/dist/contacts.d.ts +0 -120
  57. package/dist/contacts.js +0 -160
  58. package/dist/queries/activeSeekers.d.ts +0 -2
  59. package/dist/schema.d.ts +0 -1280
  60. package/dist/schema.js +0 -164
  61. package/dist/sqlite.d.ts +0 -79
  62. package/dist/sqlite.js +0 -448
  63. /package/dist/{queries → db/queries}/announcementCursors.d.ts +0 -0
  64. /package/dist/{queries → db/queries}/announcementCursors.js +0 -0
  65. /package/dist/{queries → db/queries}/contacts.d.ts +0 -0
  66. /package/dist/{queries → db/queries}/contacts.js +0 -0
  67. /package/dist/{queries → db/queries}/discussions.d.ts +0 -0
  68. /package/dist/{queries → db/queries}/discussions.js +0 -0
  69. /package/dist/{queries → db/queries}/index.d.ts +0 -0
  70. /package/dist/{queries → db/queries}/index.js +0 -0
  71. /package/dist/{queries → db/queries}/pendingAnnouncements.d.ts +0 -0
  72. /package/dist/{queries → db/queries}/pendingAnnouncements.js +0 -0
  73. /package/dist/{sqlite-worker.d.ts → db/sqlite-worker.d.ts} +0 -0
@@ -0,0 +1,309 @@
1
+ import type { MessageType, MessageDirection, MessageStatus } from '../db';
2
+ export declare const messages: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
3
+ name: "messages";
4
+ schema: undefined;
5
+ columns: {
6
+ id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
7
+ name: "id";
8
+ tableName: "messages";
9
+ dataType: "number";
10
+ columnType: "SQLiteInteger";
11
+ data: number;
12
+ driverParam: number;
13
+ notNull: true;
14
+ hasDefault: true;
15
+ isPrimaryKey: true;
16
+ isAutoincrement: false;
17
+ hasRuntimeDefault: false;
18
+ enumValues: undefined;
19
+ baseColumn: never;
20
+ identity: undefined;
21
+ generated: undefined;
22
+ }, {}, {}>;
23
+ ownerUserId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
24
+ name: "ownerUserId";
25
+ tableName: "messages";
26
+ dataType: "string";
27
+ columnType: "SQLiteText";
28
+ data: string;
29
+ driverParam: string;
30
+ notNull: true;
31
+ hasDefault: false;
32
+ isPrimaryKey: false;
33
+ isAutoincrement: false;
34
+ hasRuntimeDefault: false;
35
+ enumValues: [string, ...string[]];
36
+ baseColumn: never;
37
+ identity: undefined;
38
+ generated: undefined;
39
+ }, {}, {
40
+ length: number | undefined;
41
+ }>;
42
+ contactUserId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
43
+ name: "contactUserId";
44
+ tableName: "messages";
45
+ dataType: "string";
46
+ columnType: "SQLiteText";
47
+ data: string;
48
+ driverParam: string;
49
+ notNull: true;
50
+ hasDefault: false;
51
+ isPrimaryKey: false;
52
+ isAutoincrement: false;
53
+ hasRuntimeDefault: false;
54
+ enumValues: [string, ...string[]];
55
+ baseColumn: never;
56
+ identity: undefined;
57
+ generated: undefined;
58
+ }, {}, {
59
+ length: number | undefined;
60
+ }>;
61
+ messageId: import("drizzle-orm/sqlite-core").SQLiteColumn<{
62
+ name: "messageId";
63
+ tableName: "messages";
64
+ dataType: "custom";
65
+ columnType: "SQLiteCustomColumn";
66
+ data: Uint8Array<ArrayBufferLike>;
67
+ driverParam: Uint8Array<ArrayBufferLike>;
68
+ notNull: false;
69
+ hasDefault: false;
70
+ isPrimaryKey: false;
71
+ isAutoincrement: false;
72
+ hasRuntimeDefault: false;
73
+ enumValues: undefined;
74
+ baseColumn: never;
75
+ identity: undefined;
76
+ generated: undefined;
77
+ }, {}, {
78
+ sqliteColumnBuilderBrand: "SQLiteCustomColumnBuilderBrand";
79
+ }>;
80
+ content: import("drizzle-orm/sqlite-core").SQLiteColumn<{
81
+ name: "content";
82
+ tableName: "messages";
83
+ dataType: "string";
84
+ columnType: "SQLiteText";
85
+ data: string;
86
+ driverParam: string;
87
+ notNull: true;
88
+ hasDefault: false;
89
+ isPrimaryKey: false;
90
+ isAutoincrement: false;
91
+ hasRuntimeDefault: false;
92
+ enumValues: [string, ...string[]];
93
+ baseColumn: never;
94
+ identity: undefined;
95
+ generated: undefined;
96
+ }, {}, {
97
+ length: number | undefined;
98
+ }>;
99
+ serializedContent: import("drizzle-orm/sqlite-core").SQLiteColumn<{
100
+ name: "serializedContent";
101
+ tableName: "messages";
102
+ dataType: "custom";
103
+ columnType: "SQLiteCustomColumn";
104
+ data: Uint8Array<ArrayBufferLike>;
105
+ driverParam: Uint8Array<ArrayBufferLike>;
106
+ notNull: false;
107
+ hasDefault: false;
108
+ isPrimaryKey: false;
109
+ isAutoincrement: false;
110
+ hasRuntimeDefault: false;
111
+ enumValues: undefined;
112
+ baseColumn: never;
113
+ identity: undefined;
114
+ generated: undefined;
115
+ }, {}, {
116
+ sqliteColumnBuilderBrand: "SQLiteCustomColumnBuilderBrand";
117
+ }>;
118
+ type: import("drizzle-orm/sqlite-core").SQLiteColumn<{
119
+ name: "type";
120
+ tableName: "messages";
121
+ dataType: "string";
122
+ columnType: "SQLiteText";
123
+ data: MessageType;
124
+ driverParam: string;
125
+ notNull: true;
126
+ hasDefault: false;
127
+ isPrimaryKey: false;
128
+ isAutoincrement: false;
129
+ hasRuntimeDefault: false;
130
+ enumValues: [string, ...string[]];
131
+ baseColumn: never;
132
+ identity: undefined;
133
+ generated: undefined;
134
+ }, {}, {
135
+ length: number | undefined;
136
+ $type: MessageType;
137
+ }>;
138
+ direction: import("drizzle-orm/sqlite-core").SQLiteColumn<{
139
+ name: "direction";
140
+ tableName: "messages";
141
+ dataType: "string";
142
+ columnType: "SQLiteText";
143
+ data: MessageDirection;
144
+ driverParam: string;
145
+ notNull: true;
146
+ hasDefault: false;
147
+ isPrimaryKey: false;
148
+ isAutoincrement: false;
149
+ hasRuntimeDefault: false;
150
+ enumValues: [string, ...string[]];
151
+ baseColumn: never;
152
+ identity: undefined;
153
+ generated: undefined;
154
+ }, {}, {
155
+ length: number | undefined;
156
+ $type: MessageDirection;
157
+ }>;
158
+ status: import("drizzle-orm/sqlite-core").SQLiteColumn<{
159
+ name: "status";
160
+ tableName: "messages";
161
+ dataType: "string";
162
+ columnType: "SQLiteText";
163
+ data: MessageStatus;
164
+ driverParam: string;
165
+ notNull: true;
166
+ hasDefault: false;
167
+ isPrimaryKey: false;
168
+ isAutoincrement: false;
169
+ hasRuntimeDefault: false;
170
+ enumValues: [string, ...string[]];
171
+ baseColumn: never;
172
+ identity: undefined;
173
+ generated: undefined;
174
+ }, {}, {
175
+ length: number | undefined;
176
+ $type: MessageStatus;
177
+ }>;
178
+ timestamp: import("drizzle-orm/sqlite-core").SQLiteColumn<{
179
+ name: "timestamp";
180
+ tableName: "messages";
181
+ dataType: "date";
182
+ columnType: "SQLiteTimestamp";
183
+ data: Date;
184
+ driverParam: number;
185
+ notNull: true;
186
+ hasDefault: false;
187
+ isPrimaryKey: false;
188
+ isAutoincrement: false;
189
+ hasRuntimeDefault: false;
190
+ enumValues: undefined;
191
+ baseColumn: never;
192
+ identity: undefined;
193
+ generated: undefined;
194
+ }, {}, {}>;
195
+ metadata: import("drizzle-orm/sqlite-core").SQLiteColumn<{
196
+ name: "metadata";
197
+ tableName: "messages";
198
+ dataType: "string";
199
+ columnType: "SQLiteText";
200
+ data: string;
201
+ driverParam: string;
202
+ notNull: false;
203
+ hasDefault: false;
204
+ isPrimaryKey: false;
205
+ isAutoincrement: false;
206
+ hasRuntimeDefault: false;
207
+ enumValues: [string, ...string[]];
208
+ baseColumn: never;
209
+ identity: undefined;
210
+ generated: undefined;
211
+ }, {}, {
212
+ length: number | undefined;
213
+ }>;
214
+ seeker: import("drizzle-orm/sqlite-core").SQLiteColumn<{
215
+ name: "seeker";
216
+ tableName: "messages";
217
+ dataType: "custom";
218
+ columnType: "SQLiteCustomColumn";
219
+ data: Uint8Array<ArrayBufferLike>;
220
+ driverParam: Uint8Array<ArrayBufferLike>;
221
+ notNull: false;
222
+ hasDefault: false;
223
+ isPrimaryKey: false;
224
+ isAutoincrement: false;
225
+ hasRuntimeDefault: false;
226
+ enumValues: undefined;
227
+ baseColumn: never;
228
+ identity: undefined;
229
+ generated: undefined;
230
+ }, {}, {
231
+ sqliteColumnBuilderBrand: "SQLiteCustomColumnBuilderBrand";
232
+ }>;
233
+ replyTo: import("drizzle-orm/sqlite-core").SQLiteColumn<{
234
+ name: "replyTo";
235
+ tableName: "messages";
236
+ dataType: "string";
237
+ columnType: "SQLiteText";
238
+ data: string;
239
+ driverParam: string;
240
+ notNull: false;
241
+ hasDefault: false;
242
+ isPrimaryKey: false;
243
+ isAutoincrement: false;
244
+ hasRuntimeDefault: false;
245
+ enumValues: [string, ...string[]];
246
+ baseColumn: never;
247
+ identity: undefined;
248
+ generated: undefined;
249
+ }, {}, {
250
+ length: number | undefined;
251
+ }>;
252
+ forwardOf: import("drizzle-orm/sqlite-core").SQLiteColumn<{
253
+ name: "forwardOf";
254
+ tableName: "messages";
255
+ dataType: "string";
256
+ columnType: "SQLiteText";
257
+ data: string;
258
+ driverParam: string;
259
+ notNull: false;
260
+ hasDefault: false;
261
+ isPrimaryKey: false;
262
+ isAutoincrement: false;
263
+ hasRuntimeDefault: false;
264
+ enumValues: [string, ...string[]];
265
+ baseColumn: never;
266
+ identity: undefined;
267
+ generated: undefined;
268
+ }, {}, {
269
+ length: number | undefined;
270
+ }>;
271
+ encryptedMessage: import("drizzle-orm/sqlite-core").SQLiteColumn<{
272
+ name: "encryptedMessage";
273
+ tableName: "messages";
274
+ dataType: "custom";
275
+ columnType: "SQLiteCustomColumn";
276
+ data: Uint8Array<ArrayBufferLike>;
277
+ driverParam: Uint8Array<ArrayBufferLike>;
278
+ notNull: false;
279
+ hasDefault: false;
280
+ isPrimaryKey: false;
281
+ isAutoincrement: false;
282
+ hasRuntimeDefault: false;
283
+ enumValues: undefined;
284
+ baseColumn: never;
285
+ identity: undefined;
286
+ generated: undefined;
287
+ }, {}, {
288
+ sqliteColumnBuilderBrand: "SQLiteCustomColumnBuilderBrand";
289
+ }>;
290
+ whenToSend: import("drizzle-orm/sqlite-core").SQLiteColumn<{
291
+ name: "whenToSend";
292
+ tableName: "messages";
293
+ dataType: "date";
294
+ columnType: "SQLiteTimestamp";
295
+ data: Date;
296
+ driverParam: number;
297
+ notNull: false;
298
+ hasDefault: false;
299
+ isPrimaryKey: false;
300
+ isAutoincrement: false;
301
+ hasRuntimeDefault: false;
302
+ enumValues: undefined;
303
+ baseColumn: never;
304
+ identity: undefined;
305
+ generated: undefined;
306
+ }, {}, {}>;
307
+ };
308
+ dialect: "sqlite";
309
+ }>;
@@ -0,0 +1,29 @@
1
+ import { sqliteTable, text, integer, index } from 'drizzle-orm/sqlite-core';
2
+ import { bytes } from './_helpers';
3
+ export const messages = sqliteTable('messages', {
4
+ id: integer('id').primaryKey({ autoIncrement: true }),
5
+ ownerUserId: text('ownerUserId').notNull(),
6
+ contactUserId: text('contactUserId').notNull(),
7
+ messageId: bytes('messageId'),
8
+ content: text('content').notNull(),
9
+ serializedContent: bytes('serializedContent'),
10
+ type: text('type').$type().notNull(),
11
+ direction: text('direction').$type().notNull(),
12
+ status: text('status').$type().notNull(),
13
+ timestamp: integer('timestamp', { mode: 'timestamp_ms' }).notNull(),
14
+ metadata: text('metadata'),
15
+ seeker: bytes('seeker'),
16
+ replyTo: text('replyTo'),
17
+ forwardOf: text('forwardOf'),
18
+ encryptedMessage: bytes('encryptedMessage'),
19
+ whenToSend: integer('whenToSend', { mode: 'timestamp_ms' }),
20
+ }, table => [
21
+ index('messages_owner_contact_idx').on(table.ownerUserId, table.contactUserId),
22
+ index('messages_owner_status_idx').on(table.ownerUserId, table.status),
23
+ index('messages_owner_contact_status_idx').on(table.ownerUserId, table.contactUserId, table.status),
24
+ index('messages_owner_seeker_idx').on(table.ownerUserId, table.seeker),
25
+ index('messages_owner_contact_dir_idx').on(table.ownerUserId, table.contactUserId, table.direction),
26
+ index('messages_owner_dir_status_idx').on(table.ownerUserId, table.direction, table.status),
27
+ index('messages_timestamp_idx').on(table.timestamp),
28
+ index('messages_owner_contact_msgid_idx').on(table.ownerUserId, table.contactUserId, table.messageId),
29
+ ]);
@@ -0,0 +1,79 @@
1
+ export declare const pendingAnnouncements: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
2
+ name: "pendingAnnouncements";
3
+ schema: undefined;
4
+ columns: {
5
+ id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
6
+ name: "id";
7
+ tableName: "pendingAnnouncements";
8
+ dataType: "number";
9
+ columnType: "SQLiteInteger";
10
+ data: number;
11
+ driverParam: number;
12
+ notNull: true;
13
+ hasDefault: true;
14
+ isPrimaryKey: true;
15
+ isAutoincrement: false;
16
+ hasRuntimeDefault: false;
17
+ enumValues: undefined;
18
+ baseColumn: never;
19
+ identity: undefined;
20
+ generated: undefined;
21
+ }, {}, {}>;
22
+ announcement: import("drizzle-orm/sqlite-core").SQLiteColumn<{
23
+ name: "announcement";
24
+ tableName: "pendingAnnouncements";
25
+ dataType: "custom";
26
+ columnType: "SQLiteCustomColumn";
27
+ data: Uint8Array<ArrayBufferLike>;
28
+ driverParam: Uint8Array<ArrayBufferLike>;
29
+ notNull: true;
30
+ hasDefault: false;
31
+ isPrimaryKey: false;
32
+ isAutoincrement: false;
33
+ hasRuntimeDefault: false;
34
+ enumValues: undefined;
35
+ baseColumn: never;
36
+ identity: undefined;
37
+ generated: undefined;
38
+ }, {}, {
39
+ sqliteColumnBuilderBrand: "SQLiteCustomColumnBuilderBrand";
40
+ }>;
41
+ fetchedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
42
+ name: "fetchedAt";
43
+ tableName: "pendingAnnouncements";
44
+ dataType: "date";
45
+ columnType: "SQLiteTimestamp";
46
+ data: Date;
47
+ driverParam: number;
48
+ notNull: true;
49
+ hasDefault: false;
50
+ isPrimaryKey: false;
51
+ isAutoincrement: false;
52
+ hasRuntimeDefault: false;
53
+ enumValues: undefined;
54
+ baseColumn: never;
55
+ identity: undefined;
56
+ generated: undefined;
57
+ }, {}, {}>;
58
+ counter: import("drizzle-orm/sqlite-core").SQLiteColumn<{
59
+ name: "counter";
60
+ tableName: "pendingAnnouncements";
61
+ dataType: "string";
62
+ columnType: "SQLiteText";
63
+ data: string;
64
+ driverParam: string;
65
+ notNull: false;
66
+ hasDefault: false;
67
+ isPrimaryKey: false;
68
+ isAutoincrement: false;
69
+ hasRuntimeDefault: false;
70
+ enumValues: [string, ...string[]];
71
+ baseColumn: never;
72
+ identity: undefined;
73
+ generated: undefined;
74
+ }, {}, {
75
+ length: number | undefined;
76
+ }>;
77
+ };
78
+ dialect: "sqlite";
79
+ }>;
@@ -0,0 +1,11 @@
1
+ import { sqliteTable, text, integer, index, uniqueIndex, } from 'drizzle-orm/sqlite-core';
2
+ import { bytes } from './_helpers';
3
+ export const pendingAnnouncements = sqliteTable('pendingAnnouncements', {
4
+ id: integer('id').primaryKey({ autoIncrement: true }),
5
+ announcement: bytes('announcement').notNull(),
6
+ fetchedAt: integer('fetchedAt', { mode: 'timestamp_ms' }).notNull(),
7
+ counter: text('counter'),
8
+ }, table => [
9
+ uniqueIndex('pending_announcements_announcement_idx').on(table.announcement),
10
+ index('pending_announcements_fetchedAt_idx').on(table.fetchedAt),
11
+ ]);
@@ -0,0 +1,79 @@
1
+ export declare const pendingEncryptedMessages: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
2
+ name: "pendingEncryptedMessages";
3
+ schema: undefined;
4
+ columns: {
5
+ id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
6
+ name: "id";
7
+ tableName: "pendingEncryptedMessages";
8
+ dataType: "number";
9
+ columnType: "SQLiteInteger";
10
+ data: number;
11
+ driverParam: number;
12
+ notNull: true;
13
+ hasDefault: true;
14
+ isPrimaryKey: true;
15
+ isAutoincrement: false;
16
+ hasRuntimeDefault: false;
17
+ enumValues: undefined;
18
+ baseColumn: never;
19
+ identity: undefined;
20
+ generated: undefined;
21
+ }, {}, {}>;
22
+ seeker: import("drizzle-orm/sqlite-core").SQLiteColumn<{
23
+ name: "seeker";
24
+ tableName: "pendingEncryptedMessages";
25
+ dataType: "custom";
26
+ columnType: "SQLiteCustomColumn";
27
+ data: Uint8Array<ArrayBufferLike>;
28
+ driverParam: Uint8Array<ArrayBufferLike>;
29
+ notNull: true;
30
+ hasDefault: false;
31
+ isPrimaryKey: false;
32
+ isAutoincrement: false;
33
+ hasRuntimeDefault: false;
34
+ enumValues: undefined;
35
+ baseColumn: never;
36
+ identity: undefined;
37
+ generated: undefined;
38
+ }, {}, {
39
+ sqliteColumnBuilderBrand: "SQLiteCustomColumnBuilderBrand";
40
+ }>;
41
+ ciphertext: import("drizzle-orm/sqlite-core").SQLiteColumn<{
42
+ name: "ciphertext";
43
+ tableName: "pendingEncryptedMessages";
44
+ dataType: "custom";
45
+ columnType: "SQLiteCustomColumn";
46
+ data: Uint8Array<ArrayBufferLike>;
47
+ driverParam: Uint8Array<ArrayBufferLike>;
48
+ notNull: true;
49
+ hasDefault: false;
50
+ isPrimaryKey: false;
51
+ isAutoincrement: false;
52
+ hasRuntimeDefault: false;
53
+ enumValues: undefined;
54
+ baseColumn: never;
55
+ identity: undefined;
56
+ generated: undefined;
57
+ }, {}, {
58
+ sqliteColumnBuilderBrand: "SQLiteCustomColumnBuilderBrand";
59
+ }>;
60
+ fetchedAt: import("drizzle-orm/sqlite-core").SQLiteColumn<{
61
+ name: "fetchedAt";
62
+ tableName: "pendingEncryptedMessages";
63
+ dataType: "date";
64
+ columnType: "SQLiteTimestamp";
65
+ data: Date;
66
+ driverParam: number;
67
+ notNull: true;
68
+ hasDefault: false;
69
+ isPrimaryKey: false;
70
+ isAutoincrement: false;
71
+ hasRuntimeDefault: false;
72
+ enumValues: undefined;
73
+ baseColumn: never;
74
+ identity: undefined;
75
+ generated: undefined;
76
+ }, {}, {}>;
77
+ };
78
+ dialect: "sqlite";
79
+ }>;
@@ -0,0 +1,11 @@
1
+ import { sqliteTable, integer, index } from 'drizzle-orm/sqlite-core';
2
+ import { bytes } from './_helpers';
3
+ export const pendingEncryptedMessages = sqliteTable('pendingEncryptedMessages', {
4
+ id: integer('id').primaryKey({ autoIncrement: true }),
5
+ seeker: bytes('seeker').notNull(),
6
+ ciphertext: bytes('ciphertext').notNull(),
7
+ fetchedAt: integer('fetchedAt', { mode: 'timestamp_ms' }).notNull(),
8
+ }, table => [
9
+ index('pending_encrypted_seeker_idx').on(table.seeker),
10
+ index('pending_encrypted_fetchedAt_idx').on(table.fetchedAt),
11
+ ]);