@ykurilov/agent-chat-storage-postgres 0.0.0-stage → 0.55.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 (46) hide show
  1. package/CHANGELOG.md +1213 -0
  2. package/LICENSE +21 -0
  3. package/README.md +37 -2
  4. package/dist/index.js +801 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/types/drizzle-chat-storage.d.ts +1604 -0
  7. package/dist/types/index.d.ts +2 -0
  8. package/dist/types/migrate.d.ts +6 -0
  9. package/dist/types/postgres-storage.d.ts +18 -0
  10. package/dist/types/schema.d.ts +1678 -0
  11. package/drizzle/0000_init.sql +32 -0
  12. package/drizzle/0001_chat_reasoning.sql +1 -0
  13. package/drizzle/0002_compactions.sql +16 -0
  14. package/drizzle/0003_branch_selections.sql +10 -0
  15. package/drizzle/0004_chat_title.sql +22 -0
  16. package/drizzle/0005_usage_records.sql +19 -0
  17. package/drizzle/0006_user_model_choices.sql +7 -0
  18. package/drizzle/0007_voice_dialog.sql +7 -0
  19. package/drizzle/0008_memory_notes.sql +11 -0
  20. package/drizzle/0009_memory_optimization.sql +15 -0
  21. package/drizzle/0010_usage_estimated.sql +1 -0
  22. package/drizzle/0011_message_alive_at.sql +1 -0
  23. package/drizzle/0012_spending_limit_states.sql +6 -0
  24. package/drizzle/0013_chat_origin.sql +1 -0
  25. package/drizzle/0014_chat_subject_after_turn.sql +5 -0
  26. package/drizzle/0015_chat_closed.sql +1 -0
  27. package/drizzle/0016_chat_turn_leases.sql +5 -0
  28. package/drizzle/meta/0000_snapshot.json +259 -0
  29. package/drizzle/meta/0001_snapshot.json +265 -0
  30. package/drizzle/meta/0002_snapshot.json +392 -0
  31. package/drizzle/meta/0003_snapshot.json +483 -0
  32. package/drizzle/meta/0004_snapshot.json +489 -0
  33. package/drizzle/meta/0005_snapshot.json +629 -0
  34. package/drizzle/meta/0006_snapshot.json +672 -0
  35. package/drizzle/meta/0007_snapshot.json +709 -0
  36. package/drizzle/meta/0008_snapshot.json +787 -0
  37. package/drizzle/meta/0009_snapshot.json +908 -0
  38. package/drizzle/meta/0010_snapshot.json +915 -0
  39. package/drizzle/meta/0011_snapshot.json +921 -0
  40. package/drizzle/meta/0012_snapshot.json +958 -0
  41. package/drizzle/meta/0013_snapshot.json +964 -0
  42. package/drizzle/meta/0014_snapshot.json +1019 -0
  43. package/drizzle/meta/0015_snapshot.json +1025 -0
  44. package/drizzle/meta/0016_snapshot.json +1056 -0
  45. package/drizzle/meta/_journal.json +125 -0
  46. package/package.json +46 -3
@@ -0,0 +1,1604 @@
1
+ import type { ChatStorage, MemoryMergeGroup } from "@ykurilov/agent-chat-core";
2
+ import type { PgDatabase, PgQueryResultHKT } from "drizzle-orm/pg-core";
3
+ export declare const storageSchema: {
4
+ chats: import("drizzle-orm/pg-core").PgTableWithColumns<{
5
+ name: "chats";
6
+ schema: "agent_chat";
7
+ columns: {
8
+ id: import("drizzle-orm/pg-core").PgColumn<{
9
+ name: "id";
10
+ tableName: "chats";
11
+ dataType: "string";
12
+ columnType: "PgText";
13
+ data: string;
14
+ driverParam: string;
15
+ notNull: true;
16
+ hasDefault: false;
17
+ isPrimaryKey: true;
18
+ isAutoincrement: false;
19
+ hasRuntimeDefault: false;
20
+ enumValues: [string, ...string[]];
21
+ baseColumn: never;
22
+ identity: undefined;
23
+ generated: undefined;
24
+ }, {}, {}>;
25
+ ownerId: import("drizzle-orm/pg-core").PgColumn<{
26
+ name: "owner_id";
27
+ tableName: "chats";
28
+ dataType: "string";
29
+ columnType: "PgText";
30
+ data: string;
31
+ driverParam: string;
32
+ notNull: true;
33
+ hasDefault: false;
34
+ isPrimaryKey: false;
35
+ isAutoincrement: false;
36
+ hasRuntimeDefault: false;
37
+ enumValues: [string, ...string[]];
38
+ baseColumn: never;
39
+ identity: undefined;
40
+ generated: undefined;
41
+ }, {}, {}>;
42
+ modelId: import("drizzle-orm/pg-core").PgColumn<{
43
+ name: "model_id";
44
+ tableName: "chats";
45
+ dataType: "string";
46
+ columnType: "PgText";
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
+ providerId: import("drizzle-orm/pg-core").PgColumn<{
60
+ name: "provider_id";
61
+ tableName: "chats";
62
+ dataType: "string";
63
+ columnType: "PgText";
64
+ data: string;
65
+ driverParam: string;
66
+ notNull: true;
67
+ hasDefault: false;
68
+ isPrimaryKey: false;
69
+ isAutoincrement: false;
70
+ hasRuntimeDefault: false;
71
+ enumValues: [string, ...string[]];
72
+ baseColumn: never;
73
+ identity: undefined;
74
+ generated: undefined;
75
+ }, {}, {}>;
76
+ reasoning: import("drizzle-orm/pg-core").PgColumn<{
77
+ name: "reasoning";
78
+ tableName: "chats";
79
+ dataType: "string";
80
+ columnType: "PgText";
81
+ data: string;
82
+ driverParam: string;
83
+ notNull: false;
84
+ hasDefault: false;
85
+ isPrimaryKey: false;
86
+ isAutoincrement: false;
87
+ hasRuntimeDefault: false;
88
+ enumValues: [string, ...string[]];
89
+ baseColumn: never;
90
+ identity: undefined;
91
+ generated: undefined;
92
+ }, {}, {}>;
93
+ title: import("drizzle-orm/pg-core").PgColumn<{
94
+ name: "title";
95
+ tableName: "chats";
96
+ dataType: "string";
97
+ columnType: "PgText";
98
+ data: string;
99
+ driverParam: string;
100
+ notNull: false;
101
+ hasDefault: false;
102
+ isPrimaryKey: false;
103
+ isAutoincrement: false;
104
+ hasRuntimeDefault: false;
105
+ enumValues: [string, ...string[]];
106
+ baseColumn: never;
107
+ identity: undefined;
108
+ generated: undefined;
109
+ }, {}, {}>;
110
+ origin: import("drizzle-orm/pg-core").PgColumn<{
111
+ name: "origin";
112
+ tableName: "chats";
113
+ dataType: "string";
114
+ columnType: "PgText";
115
+ data: "max" | "telegram" | "vk";
116
+ driverParam: string;
117
+ notNull: false;
118
+ hasDefault: false;
119
+ isPrimaryKey: false;
120
+ isAutoincrement: false;
121
+ hasRuntimeDefault: false;
122
+ enumValues: ["telegram", "vk", "max"];
123
+ baseColumn: never;
124
+ identity: undefined;
125
+ generated: undefined;
126
+ }, {}, {}>;
127
+ subjectKey: import("drizzle-orm/pg-core").PgColumn<{
128
+ name: "subject_key";
129
+ tableName: "chats";
130
+ dataType: "string";
131
+ columnType: "PgText";
132
+ data: string;
133
+ driverParam: string;
134
+ notNull: false;
135
+ hasDefault: false;
136
+ isPrimaryKey: false;
137
+ isAutoincrement: false;
138
+ hasRuntimeDefault: false;
139
+ enumValues: [string, ...string[]];
140
+ baseColumn: never;
141
+ identity: undefined;
142
+ generated: undefined;
143
+ }, {}, {}>;
144
+ subjectData: import("drizzle-orm/pg-core").PgColumn<{
145
+ name: "subject_data";
146
+ tableName: "chats";
147
+ dataType: "json";
148
+ columnType: "PgJson";
149
+ data: Record<string, unknown>;
150
+ driverParam: unknown;
151
+ notNull: false;
152
+ hasDefault: false;
153
+ isPrimaryKey: false;
154
+ isAutoincrement: false;
155
+ hasRuntimeDefault: false;
156
+ enumValues: undefined;
157
+ baseColumn: never;
158
+ identity: undefined;
159
+ generated: undefined;
160
+ }, {}, {
161
+ $type: Record<string, unknown>;
162
+ }>;
163
+ closed: import("drizzle-orm/pg-core").PgColumn<{
164
+ name: "closed";
165
+ tableName: "chats";
166
+ dataType: "json";
167
+ columnType: "PgJson";
168
+ data: import("@ykurilov/agent-chat-core").ChatClosure;
169
+ driverParam: unknown;
170
+ notNull: false;
171
+ hasDefault: false;
172
+ isPrimaryKey: false;
173
+ isAutoincrement: false;
174
+ hasRuntimeDefault: false;
175
+ enumValues: undefined;
176
+ baseColumn: never;
177
+ identity: undefined;
178
+ generated: undefined;
179
+ }, {}, {
180
+ $type: import("@ykurilov/agent-chat-core").ChatClosure;
181
+ }>;
182
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
183
+ name: "created_at";
184
+ tableName: "chats";
185
+ dataType: "string";
186
+ columnType: "PgText";
187
+ data: string;
188
+ driverParam: string;
189
+ notNull: true;
190
+ hasDefault: false;
191
+ isPrimaryKey: false;
192
+ isAutoincrement: false;
193
+ hasRuntimeDefault: false;
194
+ enumValues: [string, ...string[]];
195
+ baseColumn: never;
196
+ identity: undefined;
197
+ generated: undefined;
198
+ }, {}, {}>;
199
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
200
+ name: "updated_at";
201
+ tableName: "chats";
202
+ dataType: "string";
203
+ columnType: "PgText";
204
+ data: string;
205
+ driverParam: string;
206
+ notNull: true;
207
+ hasDefault: false;
208
+ isPrimaryKey: false;
209
+ isAutoincrement: false;
210
+ hasRuntimeDefault: false;
211
+ enumValues: [string, ...string[]];
212
+ baseColumn: never;
213
+ identity: undefined;
214
+ generated: undefined;
215
+ }, {}, {}>;
216
+ };
217
+ dialect: 'pg';
218
+ }>;
219
+ messages: import("drizzle-orm/pg-core").PgTableWithColumns<{
220
+ name: "messages";
221
+ schema: "agent_chat";
222
+ columns: {
223
+ seq: import("drizzle-orm/pg-core").PgColumn<{
224
+ name: "seq";
225
+ tableName: "messages";
226
+ dataType: "number";
227
+ columnType: "PgBigInt53";
228
+ data: number;
229
+ driverParam: string | number;
230
+ notNull: true;
231
+ hasDefault: true;
232
+ isPrimaryKey: false;
233
+ isAutoincrement: false;
234
+ hasRuntimeDefault: false;
235
+ enumValues: undefined;
236
+ baseColumn: never;
237
+ identity: "always";
238
+ generated: undefined;
239
+ }, {}, {}>;
240
+ id: import("drizzle-orm/pg-core").PgColumn<{
241
+ name: "id";
242
+ tableName: "messages";
243
+ dataType: "string";
244
+ columnType: "PgText";
245
+ data: string;
246
+ driverParam: string;
247
+ notNull: true;
248
+ hasDefault: false;
249
+ isPrimaryKey: true;
250
+ isAutoincrement: false;
251
+ hasRuntimeDefault: false;
252
+ enumValues: [string, ...string[]];
253
+ baseColumn: never;
254
+ identity: undefined;
255
+ generated: undefined;
256
+ }, {}, {}>;
257
+ chatId: import("drizzle-orm/pg-core").PgColumn<{
258
+ name: "chat_id";
259
+ tableName: "messages";
260
+ dataType: "string";
261
+ columnType: "PgText";
262
+ data: string;
263
+ driverParam: string;
264
+ notNull: true;
265
+ hasDefault: false;
266
+ isPrimaryKey: false;
267
+ isAutoincrement: false;
268
+ hasRuntimeDefault: false;
269
+ enumValues: [string, ...string[]];
270
+ baseColumn: never;
271
+ identity: undefined;
272
+ generated: undefined;
273
+ }, {}, {}>;
274
+ parentId: import("drizzle-orm/pg-core").PgColumn<{
275
+ name: "parent_id";
276
+ tableName: "messages";
277
+ dataType: "string";
278
+ columnType: "PgText";
279
+ data: string;
280
+ driverParam: string;
281
+ notNull: false;
282
+ hasDefault: false;
283
+ isPrimaryKey: false;
284
+ isAutoincrement: false;
285
+ hasRuntimeDefault: false;
286
+ enumValues: [string, ...string[]];
287
+ baseColumn: never;
288
+ identity: undefined;
289
+ generated: undefined;
290
+ }, {}, {}>;
291
+ role: import("drizzle-orm/pg-core").PgColumn<{
292
+ name: "role";
293
+ tableName: "messages";
294
+ dataType: "string";
295
+ columnType: "PgText";
296
+ data: "assistant" | "user";
297
+ driverParam: string;
298
+ notNull: true;
299
+ hasDefault: false;
300
+ isPrimaryKey: false;
301
+ isAutoincrement: false;
302
+ hasRuntimeDefault: false;
303
+ enumValues: ["user", "assistant"];
304
+ baseColumn: never;
305
+ identity: undefined;
306
+ generated: undefined;
307
+ }, {}, {}>;
308
+ parts: import("drizzle-orm/pg-core").PgColumn<{
309
+ name: "parts";
310
+ tableName: "messages";
311
+ dataType: "json";
312
+ columnType: "PgJson";
313
+ data: import("ai").UIMessagePart<import("ai").UIDataTypes, import("ai").UITools>[];
314
+ driverParam: unknown;
315
+ notNull: true;
316
+ hasDefault: false;
317
+ isPrimaryKey: false;
318
+ isAutoincrement: false;
319
+ hasRuntimeDefault: false;
320
+ enumValues: undefined;
321
+ baseColumn: never;
322
+ identity: undefined;
323
+ generated: undefined;
324
+ }, {}, {
325
+ $type: import("ai").UIMessagePart<import("ai").UIDataTypes, import("ai").UITools>[];
326
+ }>;
327
+ formatVersion: import("drizzle-orm/pg-core").PgColumn<{
328
+ name: "format_version";
329
+ tableName: "messages";
330
+ dataType: "number";
331
+ columnType: "PgInteger";
332
+ data: number;
333
+ driverParam: string | number;
334
+ notNull: true;
335
+ hasDefault: false;
336
+ isPrimaryKey: false;
337
+ isAutoincrement: false;
338
+ hasRuntimeDefault: false;
339
+ enumValues: undefined;
340
+ baseColumn: never;
341
+ identity: undefined;
342
+ generated: undefined;
343
+ }, {}, {}>;
344
+ status: import("drizzle-orm/pg-core").PgColumn<{
345
+ name: "status";
346
+ tableName: "messages";
347
+ dataType: "string";
348
+ columnType: "PgText";
349
+ data: import("@ykurilov/agent-chat-core").AnswerStatus;
350
+ driverParam: string;
351
+ notNull: true;
352
+ hasDefault: false;
353
+ isPrimaryKey: false;
354
+ isAutoincrement: false;
355
+ hasRuntimeDefault: false;
356
+ enumValues: [string, ...string[]];
357
+ baseColumn: never;
358
+ identity: undefined;
359
+ generated: undefined;
360
+ }, {}, {
361
+ $type: import("@ykurilov/agent-chat-core").AnswerStatus;
362
+ }>;
363
+ modelId: import("drizzle-orm/pg-core").PgColumn<{
364
+ name: "model_id";
365
+ tableName: "messages";
366
+ dataType: "string";
367
+ columnType: "PgText";
368
+ data: string;
369
+ driverParam: string;
370
+ notNull: false;
371
+ hasDefault: false;
372
+ isPrimaryKey: false;
373
+ isAutoincrement: false;
374
+ hasRuntimeDefault: false;
375
+ enumValues: [string, ...string[]];
376
+ baseColumn: never;
377
+ identity: undefined;
378
+ generated: undefined;
379
+ }, {}, {}>;
380
+ providerId: import("drizzle-orm/pg-core").PgColumn<{
381
+ name: "provider_id";
382
+ tableName: "messages";
383
+ dataType: "string";
384
+ columnType: "PgText";
385
+ data: string;
386
+ driverParam: string;
387
+ notNull: false;
388
+ hasDefault: false;
389
+ isPrimaryKey: false;
390
+ isAutoincrement: false;
391
+ hasRuntimeDefault: false;
392
+ enumValues: [string, ...string[]];
393
+ baseColumn: never;
394
+ identity: undefined;
395
+ generated: undefined;
396
+ }, {}, {}>;
397
+ usage: import("drizzle-orm/pg-core").PgColumn<{
398
+ name: "usage";
399
+ tableName: "messages";
400
+ dataType: "json";
401
+ columnType: "PgJson";
402
+ data: import("@ykurilov/agent-chat-core").TokenUsage;
403
+ driverParam: unknown;
404
+ notNull: false;
405
+ hasDefault: false;
406
+ isPrimaryKey: false;
407
+ isAutoincrement: false;
408
+ hasRuntimeDefault: false;
409
+ enumValues: undefined;
410
+ baseColumn: never;
411
+ identity: undefined;
412
+ generated: undefined;
413
+ }, {}, {
414
+ $type: import("@ykurilov/agent-chat-core").TokenUsage;
415
+ }>;
416
+ reasoningDurationsMs: import("drizzle-orm/pg-core").PgColumn<{
417
+ name: "reasoning_durations_ms";
418
+ tableName: "messages";
419
+ dataType: "json";
420
+ columnType: "PgJson";
421
+ data: Record<string, number>;
422
+ driverParam: unknown;
423
+ notNull: true;
424
+ hasDefault: false;
425
+ isPrimaryKey: false;
426
+ isAutoincrement: false;
427
+ hasRuntimeDefault: false;
428
+ enumValues: undefined;
429
+ baseColumn: never;
430
+ identity: undefined;
431
+ generated: undefined;
432
+ }, {}, {
433
+ $type: Record<string, number>;
434
+ }>;
435
+ error: import("drizzle-orm/pg-core").PgColumn<{
436
+ name: "error";
437
+ tableName: "messages";
438
+ dataType: "json";
439
+ columnType: "PgJson";
440
+ data: {
441
+ kind: import("@ykurilov/agent-chat-core").ChatErrorKind;
442
+ };
443
+ driverParam: unknown;
444
+ notNull: false;
445
+ hasDefault: false;
446
+ isPrimaryKey: false;
447
+ isAutoincrement: false;
448
+ hasRuntimeDefault: false;
449
+ enumValues: undefined;
450
+ baseColumn: never;
451
+ identity: undefined;
452
+ generated: undefined;
453
+ }, {}, {
454
+ $type: {
455
+ kind: import("@ykurilov/agent-chat-core").ChatErrorKind;
456
+ };
457
+ }>;
458
+ voiceCut: import("drizzle-orm/pg-core").PgColumn<{
459
+ name: "voice_cut";
460
+ tableName: "messages";
461
+ dataType: "json";
462
+ columnType: "PgJson";
463
+ data: import("@ykurilov/agent-chat-core").VoiceCut;
464
+ driverParam: unknown;
465
+ notNull: false;
466
+ hasDefault: false;
467
+ isPrimaryKey: false;
468
+ isAutoincrement: false;
469
+ hasRuntimeDefault: false;
470
+ enumValues: undefined;
471
+ baseColumn: never;
472
+ identity: undefined;
473
+ generated: undefined;
474
+ }, {}, {
475
+ $type: import("@ykurilov/agent-chat-core").VoiceCut;
476
+ }>;
477
+ afterTurn: import("drizzle-orm/pg-core").PgColumn<{
478
+ name: "after_turn";
479
+ tableName: "messages";
480
+ dataType: "string";
481
+ columnType: "PgText";
482
+ data: "done" | "failed" | "pending";
483
+ driverParam: string;
484
+ notNull: false;
485
+ hasDefault: false;
486
+ isPrimaryKey: false;
487
+ isAutoincrement: false;
488
+ hasRuntimeDefault: false;
489
+ enumValues: ["pending", "done", "failed"];
490
+ baseColumn: never;
491
+ identity: undefined;
492
+ generated: undefined;
493
+ }, {}, {}>;
494
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
495
+ name: "created_at";
496
+ tableName: "messages";
497
+ dataType: "string";
498
+ columnType: "PgText";
499
+ data: string;
500
+ driverParam: string;
501
+ notNull: true;
502
+ hasDefault: false;
503
+ isPrimaryKey: false;
504
+ isAutoincrement: false;
505
+ hasRuntimeDefault: false;
506
+ enumValues: [string, ...string[]];
507
+ baseColumn: never;
508
+ identity: undefined;
509
+ generated: undefined;
510
+ }, {}, {}>;
511
+ aliveAt: import("drizzle-orm/pg-core").PgColumn<{
512
+ name: "alive_at";
513
+ tableName: "messages";
514
+ dataType: "string";
515
+ columnType: "PgText";
516
+ data: string;
517
+ driverParam: string;
518
+ notNull: false;
519
+ hasDefault: false;
520
+ isPrimaryKey: false;
521
+ isAutoincrement: false;
522
+ hasRuntimeDefault: false;
523
+ enumValues: [string, ...string[]];
524
+ baseColumn: never;
525
+ identity: undefined;
526
+ generated: undefined;
527
+ }, {}, {}>;
528
+ };
529
+ dialect: 'pg';
530
+ }>;
531
+ compactions: import("drizzle-orm/pg-core").PgTableWithColumns<{
532
+ name: "compactions";
533
+ schema: "agent_chat";
534
+ columns: {
535
+ seq: import("drizzle-orm/pg-core").PgColumn<{
536
+ name: "seq";
537
+ tableName: "compactions";
538
+ dataType: "number";
539
+ columnType: "PgBigInt53";
540
+ data: number;
541
+ driverParam: string | number;
542
+ notNull: true;
543
+ hasDefault: true;
544
+ isPrimaryKey: false;
545
+ isAutoincrement: false;
546
+ hasRuntimeDefault: false;
547
+ enumValues: undefined;
548
+ baseColumn: never;
549
+ identity: "always";
550
+ generated: undefined;
551
+ }, {}, {}>;
552
+ id: import("drizzle-orm/pg-core").PgColumn<{
553
+ name: "id";
554
+ tableName: "compactions";
555
+ dataType: "string";
556
+ columnType: "PgText";
557
+ data: string;
558
+ driverParam: string;
559
+ notNull: true;
560
+ hasDefault: false;
561
+ isPrimaryKey: true;
562
+ isAutoincrement: false;
563
+ hasRuntimeDefault: false;
564
+ enumValues: [string, ...string[]];
565
+ baseColumn: never;
566
+ identity: undefined;
567
+ generated: undefined;
568
+ }, {}, {}>;
569
+ chatId: import("drizzle-orm/pg-core").PgColumn<{
570
+ name: "chat_id";
571
+ tableName: "compactions";
572
+ dataType: "string";
573
+ columnType: "PgText";
574
+ data: string;
575
+ driverParam: string;
576
+ notNull: true;
577
+ hasDefault: false;
578
+ isPrimaryKey: false;
579
+ isAutoincrement: false;
580
+ hasRuntimeDefault: false;
581
+ enumValues: [string, ...string[]];
582
+ baseColumn: never;
583
+ identity: undefined;
584
+ generated: undefined;
585
+ }, {}, {}>;
586
+ fromMessageId: import("drizzle-orm/pg-core").PgColumn<{
587
+ name: "from_message_id";
588
+ tableName: "compactions";
589
+ dataType: "string";
590
+ columnType: "PgText";
591
+ data: string;
592
+ driverParam: string;
593
+ notNull: true;
594
+ hasDefault: false;
595
+ isPrimaryKey: false;
596
+ isAutoincrement: false;
597
+ hasRuntimeDefault: false;
598
+ enumValues: [string, ...string[]];
599
+ baseColumn: never;
600
+ identity: undefined;
601
+ generated: undefined;
602
+ }, {}, {}>;
603
+ throughMessageId: import("drizzle-orm/pg-core").PgColumn<{
604
+ name: "through_message_id";
605
+ tableName: "compactions";
606
+ dataType: "string";
607
+ columnType: "PgText";
608
+ data: string;
609
+ driverParam: string;
610
+ notNull: true;
611
+ hasDefault: false;
612
+ isPrimaryKey: false;
613
+ isAutoincrement: false;
614
+ hasRuntimeDefault: false;
615
+ enumValues: [string, ...string[]];
616
+ baseColumn: never;
617
+ identity: undefined;
618
+ generated: undefined;
619
+ }, {}, {}>;
620
+ summary: import("drizzle-orm/pg-core").PgColumn<{
621
+ name: "summary";
622
+ tableName: "compactions";
623
+ dataType: "string";
624
+ columnType: "PgText";
625
+ data: string;
626
+ driverParam: string;
627
+ notNull: true;
628
+ hasDefault: false;
629
+ isPrimaryKey: false;
630
+ isAutoincrement: false;
631
+ hasRuntimeDefault: false;
632
+ enumValues: [string, ...string[]];
633
+ baseColumn: never;
634
+ identity: undefined;
635
+ generated: undefined;
636
+ }, {}, {}>;
637
+ summaryTokens: import("drizzle-orm/pg-core").PgColumn<{
638
+ name: "summary_tokens";
639
+ tableName: "compactions";
640
+ dataType: "number";
641
+ columnType: "PgInteger";
642
+ data: number;
643
+ driverParam: string | number;
644
+ notNull: true;
645
+ hasDefault: false;
646
+ isPrimaryKey: false;
647
+ isAutoincrement: false;
648
+ hasRuntimeDefault: false;
649
+ enumValues: undefined;
650
+ baseColumn: never;
651
+ identity: undefined;
652
+ generated: undefined;
653
+ }, {}, {}>;
654
+ modelId: import("drizzle-orm/pg-core").PgColumn<{
655
+ name: "model_id";
656
+ tableName: "compactions";
657
+ dataType: "string";
658
+ columnType: "PgText";
659
+ data: string;
660
+ driverParam: string;
661
+ notNull: true;
662
+ hasDefault: false;
663
+ isPrimaryKey: false;
664
+ isAutoincrement: false;
665
+ hasRuntimeDefault: false;
666
+ enumValues: [string, ...string[]];
667
+ baseColumn: never;
668
+ identity: undefined;
669
+ generated: undefined;
670
+ }, {}, {}>;
671
+ providerId: import("drizzle-orm/pg-core").PgColumn<{
672
+ name: "provider_id";
673
+ tableName: "compactions";
674
+ dataType: "string";
675
+ columnType: "PgText";
676
+ data: string;
677
+ driverParam: string;
678
+ notNull: true;
679
+ hasDefault: false;
680
+ isPrimaryKey: false;
681
+ isAutoincrement: false;
682
+ hasRuntimeDefault: false;
683
+ enumValues: [string, ...string[]];
684
+ baseColumn: never;
685
+ identity: undefined;
686
+ generated: undefined;
687
+ }, {}, {}>;
688
+ usage: import("drizzle-orm/pg-core").PgColumn<{
689
+ name: "usage";
690
+ tableName: "compactions";
691
+ dataType: "json";
692
+ columnType: "PgJson";
693
+ data: import("@ykurilov/agent-chat-core").TokenUsage;
694
+ driverParam: unknown;
695
+ notNull: false;
696
+ hasDefault: false;
697
+ isPrimaryKey: false;
698
+ isAutoincrement: false;
699
+ hasRuntimeDefault: false;
700
+ enumValues: undefined;
701
+ baseColumn: never;
702
+ identity: undefined;
703
+ generated: undefined;
704
+ }, {}, {
705
+ $type: import("@ykurilov/agent-chat-core").TokenUsage;
706
+ }>;
707
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
708
+ name: "created_at";
709
+ tableName: "compactions";
710
+ dataType: "string";
711
+ columnType: "PgText";
712
+ data: string;
713
+ driverParam: string;
714
+ notNull: true;
715
+ hasDefault: false;
716
+ isPrimaryKey: false;
717
+ isAutoincrement: false;
718
+ hasRuntimeDefault: false;
719
+ enumValues: [string, ...string[]];
720
+ baseColumn: never;
721
+ identity: undefined;
722
+ generated: undefined;
723
+ }, {}, {}>;
724
+ };
725
+ dialect: 'pg';
726
+ }>;
727
+ branchSelections: import("drizzle-orm/pg-core").PgTableWithColumns<{
728
+ name: "branch_selections";
729
+ schema: "agent_chat";
730
+ columns: {
731
+ seq: import("drizzle-orm/pg-core").PgColumn<{
732
+ name: "seq";
733
+ tableName: "branch_selections";
734
+ dataType: "number";
735
+ columnType: "PgBigInt53";
736
+ data: number;
737
+ driverParam: string | number;
738
+ notNull: true;
739
+ hasDefault: true;
740
+ isPrimaryKey: false;
741
+ isAutoincrement: false;
742
+ hasRuntimeDefault: false;
743
+ enumValues: undefined;
744
+ baseColumn: never;
745
+ identity: "always";
746
+ generated: undefined;
747
+ }, {}, {}>;
748
+ id: import("drizzle-orm/pg-core").PgColumn<{
749
+ name: "id";
750
+ tableName: "branch_selections";
751
+ dataType: "string";
752
+ columnType: "PgText";
753
+ data: string;
754
+ driverParam: string;
755
+ notNull: true;
756
+ hasDefault: false;
757
+ isPrimaryKey: true;
758
+ isAutoincrement: false;
759
+ hasRuntimeDefault: false;
760
+ enumValues: [string, ...string[]];
761
+ baseColumn: never;
762
+ identity: undefined;
763
+ generated: undefined;
764
+ }, {}, {}>;
765
+ chatId: import("drizzle-orm/pg-core").PgColumn<{
766
+ name: "chat_id";
767
+ tableName: "branch_selections";
768
+ dataType: "string";
769
+ columnType: "PgText";
770
+ data: string;
771
+ driverParam: string;
772
+ notNull: true;
773
+ hasDefault: false;
774
+ isPrimaryKey: false;
775
+ isAutoincrement: false;
776
+ hasRuntimeDefault: false;
777
+ enumValues: [string, ...string[]];
778
+ baseColumn: never;
779
+ identity: undefined;
780
+ generated: undefined;
781
+ }, {}, {}>;
782
+ messageId: import("drizzle-orm/pg-core").PgColumn<{
783
+ name: "message_id";
784
+ tableName: "branch_selections";
785
+ dataType: "string";
786
+ columnType: "PgText";
787
+ data: string;
788
+ driverParam: string;
789
+ notNull: true;
790
+ hasDefault: false;
791
+ isPrimaryKey: false;
792
+ isAutoincrement: false;
793
+ hasRuntimeDefault: false;
794
+ enumValues: [string, ...string[]];
795
+ baseColumn: never;
796
+ identity: undefined;
797
+ generated: undefined;
798
+ }, {}, {}>;
799
+ selectedAt: import("drizzle-orm/pg-core").PgColumn<{
800
+ name: "selected_at";
801
+ tableName: "branch_selections";
802
+ dataType: "string";
803
+ columnType: "PgText";
804
+ data: string;
805
+ driverParam: string;
806
+ notNull: true;
807
+ hasDefault: false;
808
+ isPrimaryKey: false;
809
+ isAutoincrement: false;
810
+ hasRuntimeDefault: false;
811
+ enumValues: [string, ...string[]];
812
+ baseColumn: never;
813
+ identity: undefined;
814
+ generated: undefined;
815
+ }, {}, {}>;
816
+ };
817
+ dialect: 'pg';
818
+ }>;
819
+ usageRecords: import("drizzle-orm/pg-core").PgTableWithColumns<{
820
+ name: "usage_records";
821
+ schema: "agent_chat";
822
+ columns: {
823
+ id: import("drizzle-orm/pg-core").PgColumn<{
824
+ name: "id";
825
+ tableName: "usage_records";
826
+ dataType: "string";
827
+ columnType: "PgText";
828
+ data: string;
829
+ driverParam: string;
830
+ notNull: true;
831
+ hasDefault: false;
832
+ isPrimaryKey: true;
833
+ isAutoincrement: false;
834
+ hasRuntimeDefault: false;
835
+ enumValues: [string, ...string[]];
836
+ baseColumn: never;
837
+ identity: undefined;
838
+ generated: undefined;
839
+ }, {}, {}>;
840
+ ownerId: import("drizzle-orm/pg-core").PgColumn<{
841
+ name: "owner_id";
842
+ tableName: "usage_records";
843
+ dataType: "string";
844
+ columnType: "PgText";
845
+ data: string;
846
+ driverParam: string;
847
+ notNull: true;
848
+ hasDefault: false;
849
+ isPrimaryKey: false;
850
+ isAutoincrement: false;
851
+ hasRuntimeDefault: false;
852
+ enumValues: [string, ...string[]];
853
+ baseColumn: never;
854
+ identity: undefined;
855
+ generated: undefined;
856
+ }, {}, {}>;
857
+ chatId: import("drizzle-orm/pg-core").PgColumn<{
858
+ name: "chat_id";
859
+ tableName: "usage_records";
860
+ dataType: "string";
861
+ columnType: "PgText";
862
+ data: string;
863
+ driverParam: string;
864
+ notNull: true;
865
+ hasDefault: false;
866
+ isPrimaryKey: false;
867
+ isAutoincrement: false;
868
+ hasRuntimeDefault: false;
869
+ enumValues: [string, ...string[]];
870
+ baseColumn: never;
871
+ identity: undefined;
872
+ generated: undefined;
873
+ }, {}, {}>;
874
+ messageId: import("drizzle-orm/pg-core").PgColumn<{
875
+ name: "message_id";
876
+ tableName: "usage_records";
877
+ dataType: "string";
878
+ columnType: "PgText";
879
+ data: string;
880
+ driverParam: string;
881
+ notNull: false;
882
+ hasDefault: false;
883
+ isPrimaryKey: false;
884
+ isAutoincrement: false;
885
+ hasRuntimeDefault: false;
886
+ enumValues: [string, ...string[]];
887
+ baseColumn: never;
888
+ identity: undefined;
889
+ generated: undefined;
890
+ }, {}, {}>;
891
+ source: import("drizzle-orm/pg-core").PgColumn<{
892
+ name: "source";
893
+ tableName: "usage_records";
894
+ dataType: "string";
895
+ columnType: "PgText";
896
+ data: import("@ykurilov/agent-chat-core").UsageSource;
897
+ driverParam: string;
898
+ notNull: true;
899
+ hasDefault: false;
900
+ isPrimaryKey: false;
901
+ isAutoincrement: false;
902
+ hasRuntimeDefault: false;
903
+ enumValues: [string, ...string[]];
904
+ baseColumn: never;
905
+ identity: undefined;
906
+ generated: undefined;
907
+ }, {}, {
908
+ $type: import("@ykurilov/agent-chat-core").UsageSource;
909
+ }>;
910
+ modelId: import("drizzle-orm/pg-core").PgColumn<{
911
+ name: "model_id";
912
+ tableName: "usage_records";
913
+ dataType: "string";
914
+ columnType: "PgText";
915
+ data: string;
916
+ driverParam: string;
917
+ notNull: true;
918
+ hasDefault: false;
919
+ isPrimaryKey: false;
920
+ isAutoincrement: false;
921
+ hasRuntimeDefault: false;
922
+ enumValues: [string, ...string[]];
923
+ baseColumn: never;
924
+ identity: undefined;
925
+ generated: undefined;
926
+ }, {}, {}>;
927
+ providerId: import("drizzle-orm/pg-core").PgColumn<{
928
+ name: "provider_id";
929
+ tableName: "usage_records";
930
+ dataType: "string";
931
+ columnType: "PgText";
932
+ data: string;
933
+ driverParam: string;
934
+ notNull: true;
935
+ hasDefault: false;
936
+ isPrimaryKey: false;
937
+ isAutoincrement: false;
938
+ hasRuntimeDefault: false;
939
+ enumValues: [string, ...string[]];
940
+ baseColumn: never;
941
+ identity: undefined;
942
+ generated: undefined;
943
+ }, {}, {}>;
944
+ inputTokens: import("drizzle-orm/pg-core").PgColumn<{
945
+ name: "input_tokens";
946
+ tableName: "usage_records";
947
+ dataType: "number";
948
+ columnType: "PgBigInt53";
949
+ data: number;
950
+ driverParam: string | number;
951
+ notNull: true;
952
+ hasDefault: false;
953
+ isPrimaryKey: false;
954
+ isAutoincrement: false;
955
+ hasRuntimeDefault: false;
956
+ enumValues: undefined;
957
+ baseColumn: never;
958
+ identity: undefined;
959
+ generated: undefined;
960
+ }, {}, {}>;
961
+ cachedInputTokens: import("drizzle-orm/pg-core").PgColumn<{
962
+ name: "cached_input_tokens";
963
+ tableName: "usage_records";
964
+ dataType: "number";
965
+ columnType: "PgBigInt53";
966
+ data: number;
967
+ driverParam: string | number;
968
+ notNull: true;
969
+ hasDefault: false;
970
+ isPrimaryKey: false;
971
+ isAutoincrement: false;
972
+ hasRuntimeDefault: false;
973
+ enumValues: undefined;
974
+ baseColumn: never;
975
+ identity: undefined;
976
+ generated: undefined;
977
+ }, {}, {}>;
978
+ cacheWriteTokens: import("drizzle-orm/pg-core").PgColumn<{
979
+ name: "cache_write_tokens";
980
+ tableName: "usage_records";
981
+ dataType: "number";
982
+ columnType: "PgBigInt53";
983
+ data: number;
984
+ driverParam: string | number;
985
+ notNull: true;
986
+ hasDefault: false;
987
+ isPrimaryKey: false;
988
+ isAutoincrement: false;
989
+ hasRuntimeDefault: false;
990
+ enumValues: undefined;
991
+ baseColumn: never;
992
+ identity: undefined;
993
+ generated: undefined;
994
+ }, {}, {}>;
995
+ outputTokens: import("drizzle-orm/pg-core").PgColumn<{
996
+ name: "output_tokens";
997
+ tableName: "usage_records";
998
+ dataType: "number";
999
+ columnType: "PgBigInt53";
1000
+ data: number;
1001
+ driverParam: string | number;
1002
+ notNull: true;
1003
+ hasDefault: false;
1004
+ isPrimaryKey: false;
1005
+ isAutoincrement: false;
1006
+ hasRuntimeDefault: false;
1007
+ enumValues: undefined;
1008
+ baseColumn: never;
1009
+ identity: undefined;
1010
+ generated: undefined;
1011
+ }, {}, {}>;
1012
+ reasoningTokens: import("drizzle-orm/pg-core").PgColumn<{
1013
+ name: "reasoning_tokens";
1014
+ tableName: "usage_records";
1015
+ dataType: "number";
1016
+ columnType: "PgBigInt53";
1017
+ data: number;
1018
+ driverParam: string | number;
1019
+ notNull: true;
1020
+ hasDefault: false;
1021
+ isPrimaryKey: false;
1022
+ isAutoincrement: false;
1023
+ hasRuntimeDefault: false;
1024
+ enumValues: undefined;
1025
+ baseColumn: never;
1026
+ identity: undefined;
1027
+ generated: undefined;
1028
+ }, {}, {}>;
1029
+ costUsd: import("drizzle-orm/pg-core").PgColumn<{
1030
+ name: "cost_usd";
1031
+ tableName: "usage_records";
1032
+ dataType: "number";
1033
+ columnType: "PgDoublePrecision";
1034
+ data: number;
1035
+ driverParam: string | number;
1036
+ notNull: true;
1037
+ hasDefault: false;
1038
+ isPrimaryKey: false;
1039
+ isAutoincrement: false;
1040
+ hasRuntimeDefault: false;
1041
+ enumValues: undefined;
1042
+ baseColumn: never;
1043
+ identity: undefined;
1044
+ generated: undefined;
1045
+ }, {}, {}>;
1046
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
1047
+ name: "created_at";
1048
+ tableName: "usage_records";
1049
+ dataType: "string";
1050
+ columnType: "PgText";
1051
+ data: string;
1052
+ driverParam: string;
1053
+ notNull: true;
1054
+ hasDefault: false;
1055
+ isPrimaryKey: false;
1056
+ isAutoincrement: false;
1057
+ hasRuntimeDefault: false;
1058
+ enumValues: [string, ...string[]];
1059
+ baseColumn: never;
1060
+ identity: undefined;
1061
+ generated: undefined;
1062
+ }, {}, {}>;
1063
+ estimated: import("drizzle-orm/pg-core").PgColumn<{
1064
+ name: "estimated";
1065
+ tableName: "usage_records";
1066
+ dataType: "boolean";
1067
+ columnType: "PgBoolean";
1068
+ data: boolean;
1069
+ driverParam: boolean;
1070
+ notNull: true;
1071
+ hasDefault: true;
1072
+ isPrimaryKey: false;
1073
+ isAutoincrement: false;
1074
+ hasRuntimeDefault: false;
1075
+ enumValues: undefined;
1076
+ baseColumn: never;
1077
+ identity: undefined;
1078
+ generated: undefined;
1079
+ }, {}, {}>;
1080
+ };
1081
+ dialect: 'pg';
1082
+ }>;
1083
+ userModelChoices: import("drizzle-orm/pg-core").PgTableWithColumns<{
1084
+ name: "user_model_choices";
1085
+ schema: "agent_chat";
1086
+ columns: {
1087
+ ownerId: import("drizzle-orm/pg-core").PgColumn<{
1088
+ name: "owner_id";
1089
+ tableName: "user_model_choices";
1090
+ dataType: "string";
1091
+ columnType: "PgText";
1092
+ data: string;
1093
+ driverParam: string;
1094
+ notNull: true;
1095
+ hasDefault: false;
1096
+ isPrimaryKey: true;
1097
+ isAutoincrement: false;
1098
+ hasRuntimeDefault: false;
1099
+ enumValues: [string, ...string[]];
1100
+ baseColumn: never;
1101
+ identity: undefined;
1102
+ generated: undefined;
1103
+ }, {}, {}>;
1104
+ modelId: import("drizzle-orm/pg-core").PgColumn<{
1105
+ name: "model_id";
1106
+ tableName: "user_model_choices";
1107
+ dataType: "string";
1108
+ columnType: "PgText";
1109
+ data: string;
1110
+ driverParam: string;
1111
+ notNull: true;
1112
+ hasDefault: false;
1113
+ isPrimaryKey: false;
1114
+ isAutoincrement: false;
1115
+ hasRuntimeDefault: false;
1116
+ enumValues: [string, ...string[]];
1117
+ baseColumn: never;
1118
+ identity: undefined;
1119
+ generated: undefined;
1120
+ }, {}, {}>;
1121
+ providerId: import("drizzle-orm/pg-core").PgColumn<{
1122
+ name: "provider_id";
1123
+ tableName: "user_model_choices";
1124
+ dataType: "string";
1125
+ columnType: "PgText";
1126
+ data: string;
1127
+ driverParam: string;
1128
+ notNull: true;
1129
+ hasDefault: false;
1130
+ isPrimaryKey: false;
1131
+ isAutoincrement: false;
1132
+ hasRuntimeDefault: false;
1133
+ enumValues: [string, ...string[]];
1134
+ baseColumn: never;
1135
+ identity: undefined;
1136
+ generated: undefined;
1137
+ }, {}, {}>;
1138
+ reasoning: import("drizzle-orm/pg-core").PgColumn<{
1139
+ name: "reasoning";
1140
+ tableName: "user_model_choices";
1141
+ dataType: "string";
1142
+ columnType: "PgText";
1143
+ data: string;
1144
+ driverParam: string;
1145
+ notNull: false;
1146
+ hasDefault: false;
1147
+ isPrimaryKey: false;
1148
+ isAutoincrement: false;
1149
+ hasRuntimeDefault: false;
1150
+ enumValues: [string, ...string[]];
1151
+ baseColumn: never;
1152
+ identity: undefined;
1153
+ generated: undefined;
1154
+ }, {}, {}>;
1155
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
1156
+ name: "updated_at";
1157
+ tableName: "user_model_choices";
1158
+ dataType: "string";
1159
+ columnType: "PgText";
1160
+ data: string;
1161
+ driverParam: string;
1162
+ notNull: true;
1163
+ hasDefault: false;
1164
+ isPrimaryKey: false;
1165
+ isAutoincrement: false;
1166
+ hasRuntimeDefault: false;
1167
+ enumValues: [string, ...string[]];
1168
+ baseColumn: never;
1169
+ identity: undefined;
1170
+ generated: undefined;
1171
+ }, {}, {}>;
1172
+ };
1173
+ dialect: 'pg';
1174
+ }>;
1175
+ voiceChoices: import("drizzle-orm/pg-core").PgTableWithColumns<{
1176
+ name: "voice_choices";
1177
+ schema: "agent_chat";
1178
+ columns: {
1179
+ ownerId: import("drizzle-orm/pg-core").PgColumn<{
1180
+ name: "owner_id";
1181
+ tableName: "voice_choices";
1182
+ dataType: "string";
1183
+ columnType: "PgText";
1184
+ data: string;
1185
+ driverParam: string;
1186
+ notNull: true;
1187
+ hasDefault: false;
1188
+ isPrimaryKey: true;
1189
+ isAutoincrement: false;
1190
+ hasRuntimeDefault: false;
1191
+ enumValues: [string, ...string[]];
1192
+ baseColumn: never;
1193
+ identity: undefined;
1194
+ generated: undefined;
1195
+ }, {}, {}>;
1196
+ voiceId: import("drizzle-orm/pg-core").PgColumn<{
1197
+ name: "voice_id";
1198
+ tableName: "voice_choices";
1199
+ dataType: "string";
1200
+ columnType: "PgText";
1201
+ data: string;
1202
+ driverParam: string;
1203
+ notNull: true;
1204
+ hasDefault: false;
1205
+ isPrimaryKey: false;
1206
+ isAutoincrement: false;
1207
+ hasRuntimeDefault: false;
1208
+ enumValues: [string, ...string[]];
1209
+ baseColumn: never;
1210
+ identity: undefined;
1211
+ generated: undefined;
1212
+ }, {}, {}>;
1213
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
1214
+ name: "updated_at";
1215
+ tableName: "voice_choices";
1216
+ dataType: "string";
1217
+ columnType: "PgText";
1218
+ data: string;
1219
+ driverParam: string;
1220
+ notNull: true;
1221
+ hasDefault: false;
1222
+ isPrimaryKey: false;
1223
+ isAutoincrement: false;
1224
+ hasRuntimeDefault: false;
1225
+ enumValues: [string, ...string[]];
1226
+ baseColumn: never;
1227
+ identity: undefined;
1228
+ generated: undefined;
1229
+ }, {}, {}>;
1230
+ };
1231
+ dialect: 'pg';
1232
+ }>;
1233
+ spendingLimitStates: import("drizzle-orm/pg-core").PgTableWithColumns<{
1234
+ name: "spending_limit_states";
1235
+ schema: "agent_chat";
1236
+ columns: {
1237
+ key: import("drizzle-orm/pg-core").PgColumn<{
1238
+ name: "key";
1239
+ tableName: "spending_limit_states";
1240
+ dataType: "string";
1241
+ columnType: "PgText";
1242
+ data: string;
1243
+ driverParam: string;
1244
+ notNull: true;
1245
+ hasDefault: false;
1246
+ isPrimaryKey: true;
1247
+ isAutoincrement: false;
1248
+ hasRuntimeDefault: false;
1249
+ enumValues: [string, ...string[]];
1250
+ baseColumn: never;
1251
+ identity: undefined;
1252
+ generated: undefined;
1253
+ }, {}, {}>;
1254
+ value: import("drizzle-orm/pg-core").PgColumn<{
1255
+ name: "value";
1256
+ tableName: "spending_limit_states";
1257
+ dataType: "string";
1258
+ columnType: "PgText";
1259
+ data: string;
1260
+ driverParam: string;
1261
+ notNull: true;
1262
+ hasDefault: false;
1263
+ isPrimaryKey: false;
1264
+ isAutoincrement: false;
1265
+ hasRuntimeDefault: false;
1266
+ enumValues: [string, ...string[]];
1267
+ baseColumn: never;
1268
+ identity: undefined;
1269
+ generated: undefined;
1270
+ }, {}, {}>;
1271
+ version: import("drizzle-orm/pg-core").PgColumn<{
1272
+ name: "version";
1273
+ tableName: "spending_limit_states";
1274
+ dataType: "number";
1275
+ columnType: "PgInteger";
1276
+ data: number;
1277
+ driverParam: string | number;
1278
+ notNull: true;
1279
+ hasDefault: false;
1280
+ isPrimaryKey: false;
1281
+ isAutoincrement: false;
1282
+ hasRuntimeDefault: false;
1283
+ enumValues: undefined;
1284
+ baseColumn: never;
1285
+ identity: undefined;
1286
+ generated: undefined;
1287
+ }, {}, {}>;
1288
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
1289
+ name: "updated_at";
1290
+ tableName: "spending_limit_states";
1291
+ dataType: "string";
1292
+ columnType: "PgText";
1293
+ data: string;
1294
+ driverParam: string;
1295
+ notNull: true;
1296
+ hasDefault: false;
1297
+ isPrimaryKey: false;
1298
+ isAutoincrement: false;
1299
+ hasRuntimeDefault: false;
1300
+ enumValues: [string, ...string[]];
1301
+ baseColumn: never;
1302
+ identity: undefined;
1303
+ generated: undefined;
1304
+ }, {}, {}>;
1305
+ };
1306
+ dialect: 'pg';
1307
+ }>;
1308
+ memoryNotes: import("drizzle-orm/pg-core").PgTableWithColumns<{
1309
+ name: "memory_notes";
1310
+ schema: "agent_chat";
1311
+ columns: {
1312
+ id: import("drizzle-orm/pg-core").PgColumn<{
1313
+ name: "id";
1314
+ tableName: "memory_notes";
1315
+ dataType: "string";
1316
+ columnType: "PgText";
1317
+ data: string;
1318
+ driverParam: string;
1319
+ notNull: true;
1320
+ hasDefault: false;
1321
+ isPrimaryKey: true;
1322
+ isAutoincrement: false;
1323
+ hasRuntimeDefault: false;
1324
+ enumValues: [string, ...string[]];
1325
+ baseColumn: never;
1326
+ identity: undefined;
1327
+ generated: undefined;
1328
+ }, {}, {}>;
1329
+ ownerId: import("drizzle-orm/pg-core").PgColumn<{
1330
+ name: "owner_id";
1331
+ tableName: "memory_notes";
1332
+ dataType: "string";
1333
+ columnType: "PgText";
1334
+ data: string;
1335
+ driverParam: string;
1336
+ notNull: true;
1337
+ hasDefault: false;
1338
+ isPrimaryKey: false;
1339
+ isAutoincrement: false;
1340
+ hasRuntimeDefault: false;
1341
+ enumValues: [string, ...string[]];
1342
+ baseColumn: never;
1343
+ identity: undefined;
1344
+ generated: undefined;
1345
+ }, {}, {}>;
1346
+ categories: import("drizzle-orm/pg-core").PgColumn<{
1347
+ name: "categories";
1348
+ tableName: "memory_notes";
1349
+ dataType: "json";
1350
+ columnType: "PgJsonb";
1351
+ data: string[];
1352
+ driverParam: unknown;
1353
+ notNull: true;
1354
+ hasDefault: false;
1355
+ isPrimaryKey: false;
1356
+ isAutoincrement: false;
1357
+ hasRuntimeDefault: false;
1358
+ enumValues: undefined;
1359
+ baseColumn: never;
1360
+ identity: undefined;
1361
+ generated: undefined;
1362
+ }, {}, {
1363
+ $type: string[];
1364
+ }>;
1365
+ content: import("drizzle-orm/pg-core").PgColumn<{
1366
+ name: "content";
1367
+ tableName: "memory_notes";
1368
+ dataType: "string";
1369
+ columnType: "PgText";
1370
+ data: string;
1371
+ driverParam: string;
1372
+ notNull: true;
1373
+ hasDefault: false;
1374
+ isPrimaryKey: false;
1375
+ isAutoincrement: false;
1376
+ hasRuntimeDefault: false;
1377
+ enumValues: [string, ...string[]];
1378
+ baseColumn: never;
1379
+ identity: undefined;
1380
+ generated: undefined;
1381
+ }, {}, {}>;
1382
+ version: import("drizzle-orm/pg-core").PgColumn<{
1383
+ name: "version";
1384
+ tableName: "memory_notes";
1385
+ dataType: "number";
1386
+ columnType: "PgInteger";
1387
+ data: number;
1388
+ driverParam: string | number;
1389
+ notNull: true;
1390
+ hasDefault: true;
1391
+ isPrimaryKey: false;
1392
+ isAutoincrement: false;
1393
+ hasRuntimeDefault: false;
1394
+ enumValues: undefined;
1395
+ baseColumn: never;
1396
+ identity: undefined;
1397
+ generated: undefined;
1398
+ }, {}, {}>;
1399
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
1400
+ name: "created_at";
1401
+ tableName: "memory_notes";
1402
+ dataType: "date";
1403
+ columnType: "PgTimestamp";
1404
+ data: Date;
1405
+ driverParam: string;
1406
+ notNull: true;
1407
+ hasDefault: false;
1408
+ isPrimaryKey: false;
1409
+ isAutoincrement: false;
1410
+ hasRuntimeDefault: false;
1411
+ enumValues: undefined;
1412
+ baseColumn: never;
1413
+ identity: undefined;
1414
+ generated: undefined;
1415
+ }, {}, {}>;
1416
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
1417
+ name: "updated_at";
1418
+ tableName: "memory_notes";
1419
+ dataType: "date";
1420
+ columnType: "PgTimestamp";
1421
+ data: Date;
1422
+ driverParam: string;
1423
+ notNull: true;
1424
+ hasDefault: false;
1425
+ isPrimaryKey: false;
1426
+ isAutoincrement: false;
1427
+ hasRuntimeDefault: false;
1428
+ enumValues: undefined;
1429
+ baseColumn: never;
1430
+ identity: undefined;
1431
+ generated: undefined;
1432
+ }, {}, {}>;
1433
+ mergedInto: import("drizzle-orm/pg-core").PgColumn<{
1434
+ name: "merged_into";
1435
+ tableName: "memory_notes";
1436
+ dataType: "string";
1437
+ columnType: "PgText";
1438
+ data: string;
1439
+ driverParam: string;
1440
+ notNull: false;
1441
+ hasDefault: false;
1442
+ isPrimaryKey: false;
1443
+ isAutoincrement: false;
1444
+ hasRuntimeDefault: false;
1445
+ enumValues: [string, ...string[]];
1446
+ baseColumn: never;
1447
+ identity: undefined;
1448
+ generated: undefined;
1449
+ }, {}, {}>;
1450
+ };
1451
+ dialect: 'pg';
1452
+ }>;
1453
+ memoryOptimizationRuns: import("drizzle-orm/pg-core").PgTableWithColumns<{
1454
+ name: "memory_optimization_runs";
1455
+ schema: "agent_chat";
1456
+ columns: {
1457
+ id: import("drizzle-orm/pg-core").PgColumn<{
1458
+ name: "id";
1459
+ tableName: "memory_optimization_runs";
1460
+ dataType: "string";
1461
+ columnType: "PgText";
1462
+ data: string;
1463
+ driverParam: string;
1464
+ notNull: true;
1465
+ hasDefault: false;
1466
+ isPrimaryKey: true;
1467
+ isAutoincrement: false;
1468
+ hasRuntimeDefault: false;
1469
+ enumValues: [string, ...string[]];
1470
+ baseColumn: never;
1471
+ identity: undefined;
1472
+ generated: undefined;
1473
+ }, {}, {}>;
1474
+ ownerId: import("drizzle-orm/pg-core").PgColumn<{
1475
+ name: "owner_id";
1476
+ tableName: "memory_optimization_runs";
1477
+ dataType: "string";
1478
+ columnType: "PgText";
1479
+ data: string;
1480
+ driverParam: string;
1481
+ notNull: true;
1482
+ hasDefault: false;
1483
+ isPrimaryKey: false;
1484
+ isAutoincrement: false;
1485
+ hasRuntimeDefault: false;
1486
+ enumValues: [string, ...string[]];
1487
+ baseColumn: never;
1488
+ identity: undefined;
1489
+ generated: undefined;
1490
+ }, {}, {}>;
1491
+ startedAt: import("drizzle-orm/pg-core").PgColumn<{
1492
+ name: "started_at";
1493
+ tableName: "memory_optimization_runs";
1494
+ dataType: "date";
1495
+ columnType: "PgTimestamp";
1496
+ data: Date;
1497
+ driverParam: string;
1498
+ notNull: true;
1499
+ hasDefault: false;
1500
+ isPrimaryKey: false;
1501
+ isAutoincrement: false;
1502
+ hasRuntimeDefault: false;
1503
+ enumValues: undefined;
1504
+ baseColumn: never;
1505
+ identity: undefined;
1506
+ generated: undefined;
1507
+ }, {}, {}>;
1508
+ finishedAt: import("drizzle-orm/pg-core").PgColumn<{
1509
+ name: "finished_at";
1510
+ tableName: "memory_optimization_runs";
1511
+ dataType: "date";
1512
+ columnType: "PgTimestamp";
1513
+ data: Date;
1514
+ driverParam: string;
1515
+ notNull: false;
1516
+ hasDefault: false;
1517
+ isPrimaryKey: false;
1518
+ isAutoincrement: false;
1519
+ hasRuntimeDefault: false;
1520
+ enumValues: undefined;
1521
+ baseColumn: never;
1522
+ identity: undefined;
1523
+ generated: undefined;
1524
+ }, {}, {}>;
1525
+ status: import("drizzle-orm/pg-core").PgColumn<{
1526
+ name: "status";
1527
+ tableName: "memory_optimization_runs";
1528
+ dataType: "string";
1529
+ columnType: "PgText";
1530
+ data: import("@ykurilov/agent-chat-core").MemoryOptimizationStatus;
1531
+ driverParam: string;
1532
+ notNull: true;
1533
+ hasDefault: false;
1534
+ isPrimaryKey: false;
1535
+ isAutoincrement: false;
1536
+ hasRuntimeDefault: false;
1537
+ enumValues: [string, ...string[]];
1538
+ baseColumn: never;
1539
+ identity: undefined;
1540
+ generated: undefined;
1541
+ }, {}, {
1542
+ $type: import("@ykurilov/agent-chat-core").MemoryOptimizationStatus;
1543
+ }>;
1544
+ groups: import("drizzle-orm/pg-core").PgColumn<{
1545
+ name: "groups";
1546
+ tableName: "memory_optimization_runs";
1547
+ dataType: "json";
1548
+ columnType: "PgJsonb";
1549
+ data: MemoryMergeGroup[];
1550
+ driverParam: unknown;
1551
+ notNull: true;
1552
+ hasDefault: true;
1553
+ isPrimaryKey: false;
1554
+ isAutoincrement: false;
1555
+ hasRuntimeDefault: false;
1556
+ enumValues: undefined;
1557
+ baseColumn: never;
1558
+ identity: undefined;
1559
+ generated: undefined;
1560
+ }, {}, {
1561
+ $type: MemoryMergeGroup[];
1562
+ }>;
1563
+ error: import("drizzle-orm/pg-core").PgColumn<{
1564
+ name: "error";
1565
+ tableName: "memory_optimization_runs";
1566
+ dataType: "string";
1567
+ columnType: "PgText";
1568
+ data: string;
1569
+ driverParam: string;
1570
+ notNull: false;
1571
+ hasDefault: false;
1572
+ isPrimaryKey: false;
1573
+ isAutoincrement: false;
1574
+ hasRuntimeDefault: false;
1575
+ enumValues: [string, ...string[]];
1576
+ baseColumn: never;
1577
+ identity: undefined;
1578
+ generated: undefined;
1579
+ }, {}, {}>;
1580
+ usageRecordId: import("drizzle-orm/pg-core").PgColumn<{
1581
+ name: "usage_record_id";
1582
+ tableName: "memory_optimization_runs";
1583
+ dataType: "string";
1584
+ columnType: "PgText";
1585
+ data: string;
1586
+ driverParam: string;
1587
+ notNull: false;
1588
+ hasDefault: false;
1589
+ isPrimaryKey: false;
1590
+ isAutoincrement: false;
1591
+ hasRuntimeDefault: false;
1592
+ enumValues: [string, ...string[]];
1593
+ baseColumn: never;
1594
+ identity: undefined;
1595
+ generated: undefined;
1596
+ }, {}, {}>;
1597
+ };
1598
+ dialect: 'pg';
1599
+ }>;
1600
+ };
1601
+ /** Любая база Drizzle для PostgreSQL: `pg` в проде, pglite в тестах. Схема должна быть уже создана. */
1602
+ export type ChatDatabase = PgDatabase<PgQueryResultHKT, typeof storageSchema>;
1603
+ /** Запросы хранилища; соединением и миграциями занимается вызывающий. */
1604
+ export declare function createDrizzleChatStorage(db: ChatDatabase): ChatStorage;