@pgflow/core 0.0.21 → 0.0.23

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.
@@ -0,0 +1,700 @@
1
+ export type Json = string | number | boolean | null | {
2
+ [key: string]: Json | undefined;
3
+ } | Json[];
4
+ export type Database = {
5
+ pgflow: {
6
+ Tables: {
7
+ deps: {
8
+ Row: {
9
+ dep_slug: string;
10
+ flow_slug: string;
11
+ step_slug: string;
12
+ };
13
+ Insert: {
14
+ dep_slug: string;
15
+ flow_slug: string;
16
+ step_slug: string;
17
+ };
18
+ Update: {
19
+ dep_slug?: string;
20
+ flow_slug?: string;
21
+ step_slug?: string;
22
+ };
23
+ Relationships: [
24
+ {
25
+ foreignKeyName: "deps_flow_slug_dep_slug_fkey";
26
+ columns: ["flow_slug", "dep_slug"];
27
+ isOneToOne: false;
28
+ referencedRelation: "steps";
29
+ referencedColumns: ["flow_slug", "step_slug"];
30
+ },
31
+ {
32
+ foreignKeyName: "deps_flow_slug_fkey";
33
+ columns: ["flow_slug"];
34
+ isOneToOne: false;
35
+ referencedRelation: "flows";
36
+ referencedColumns: ["flow_slug"];
37
+ },
38
+ {
39
+ foreignKeyName: "deps_flow_slug_step_slug_fkey";
40
+ columns: ["flow_slug", "step_slug"];
41
+ isOneToOne: false;
42
+ referencedRelation: "steps";
43
+ referencedColumns: ["flow_slug", "step_slug"];
44
+ }
45
+ ];
46
+ };
47
+ flows: {
48
+ Row: {
49
+ flow_slug: string;
50
+ opt_base_delay: number;
51
+ opt_max_attempts: number;
52
+ opt_timeout: number;
53
+ };
54
+ Insert: {
55
+ flow_slug: string;
56
+ opt_base_delay?: number;
57
+ opt_max_attempts?: number;
58
+ opt_timeout?: number;
59
+ };
60
+ Update: {
61
+ flow_slug?: string;
62
+ opt_base_delay?: number;
63
+ opt_max_attempts?: number;
64
+ opt_timeout?: number;
65
+ };
66
+ Relationships: [];
67
+ };
68
+ runs: {
69
+ Row: {
70
+ flow_slug: string;
71
+ input: Json;
72
+ output: Json | null;
73
+ remaining_steps: number;
74
+ run_id: string;
75
+ status: string;
76
+ };
77
+ Insert: {
78
+ flow_slug: string;
79
+ input: Json;
80
+ output?: Json | null;
81
+ remaining_steps?: number;
82
+ run_id?: string;
83
+ status?: string;
84
+ };
85
+ Update: {
86
+ flow_slug?: string;
87
+ input?: Json;
88
+ output?: Json | null;
89
+ remaining_steps?: number;
90
+ run_id?: string;
91
+ status?: string;
92
+ };
93
+ Relationships: [
94
+ {
95
+ foreignKeyName: "runs_flow_slug_fkey";
96
+ columns: ["flow_slug"];
97
+ isOneToOne: false;
98
+ referencedRelation: "flows";
99
+ referencedColumns: ["flow_slug"];
100
+ }
101
+ ];
102
+ };
103
+ step_states: {
104
+ Row: {
105
+ flow_slug: string;
106
+ remaining_deps: number;
107
+ remaining_tasks: number;
108
+ run_id: string;
109
+ status: string;
110
+ step_slug: string;
111
+ };
112
+ Insert: {
113
+ flow_slug: string;
114
+ remaining_deps?: number;
115
+ remaining_tasks?: number;
116
+ run_id: string;
117
+ status?: string;
118
+ step_slug: string;
119
+ };
120
+ Update: {
121
+ flow_slug?: string;
122
+ remaining_deps?: number;
123
+ remaining_tasks?: number;
124
+ run_id?: string;
125
+ status?: string;
126
+ step_slug?: string;
127
+ };
128
+ Relationships: [
129
+ {
130
+ foreignKeyName: "step_states_flow_slug_fkey";
131
+ columns: ["flow_slug"];
132
+ isOneToOne: false;
133
+ referencedRelation: "flows";
134
+ referencedColumns: ["flow_slug"];
135
+ },
136
+ {
137
+ foreignKeyName: "step_states_flow_slug_step_slug_fkey";
138
+ columns: ["flow_slug", "step_slug"];
139
+ isOneToOne: false;
140
+ referencedRelation: "steps";
141
+ referencedColumns: ["flow_slug", "step_slug"];
142
+ },
143
+ {
144
+ foreignKeyName: "step_states_run_id_fkey";
145
+ columns: ["run_id"];
146
+ isOneToOne: false;
147
+ referencedRelation: "runs";
148
+ referencedColumns: ["run_id"];
149
+ }
150
+ ];
151
+ };
152
+ step_tasks: {
153
+ Row: {
154
+ attempts_count: number;
155
+ error_message: string | null;
156
+ flow_slug: string;
157
+ message_id: number | null;
158
+ output: Json | null;
159
+ run_id: string;
160
+ status: string;
161
+ step_slug: string;
162
+ task_index: number;
163
+ };
164
+ Insert: {
165
+ attempts_count?: number;
166
+ error_message?: string | null;
167
+ flow_slug: string;
168
+ message_id?: number | null;
169
+ output?: Json | null;
170
+ run_id: string;
171
+ status?: string;
172
+ step_slug: string;
173
+ task_index?: number;
174
+ };
175
+ Update: {
176
+ attempts_count?: number;
177
+ error_message?: string | null;
178
+ flow_slug?: string;
179
+ message_id?: number | null;
180
+ output?: Json | null;
181
+ run_id?: string;
182
+ status?: string;
183
+ step_slug?: string;
184
+ task_index?: number;
185
+ };
186
+ Relationships: [
187
+ {
188
+ foreignKeyName: "step_tasks_flow_slug_fkey";
189
+ columns: ["flow_slug"];
190
+ isOneToOne: false;
191
+ referencedRelation: "flows";
192
+ referencedColumns: ["flow_slug"];
193
+ },
194
+ {
195
+ foreignKeyName: "step_tasks_run_id_fkey";
196
+ columns: ["run_id"];
197
+ isOneToOne: false;
198
+ referencedRelation: "runs";
199
+ referencedColumns: ["run_id"];
200
+ },
201
+ {
202
+ foreignKeyName: "step_tasks_run_id_step_slug_fkey";
203
+ columns: ["run_id", "step_slug"];
204
+ isOneToOne: false;
205
+ referencedRelation: "step_states";
206
+ referencedColumns: ["run_id", "step_slug"];
207
+ }
208
+ ];
209
+ };
210
+ steps: {
211
+ Row: {
212
+ deps_count: number;
213
+ flow_slug: string;
214
+ opt_base_delay: number | null;
215
+ opt_max_attempts: number | null;
216
+ opt_timeout: number | null;
217
+ step_slug: string;
218
+ step_type: string;
219
+ };
220
+ Insert: {
221
+ deps_count?: number;
222
+ flow_slug: string;
223
+ opt_base_delay?: number | null;
224
+ opt_max_attempts?: number | null;
225
+ opt_timeout?: number | null;
226
+ step_slug: string;
227
+ step_type?: string;
228
+ };
229
+ Update: {
230
+ deps_count?: number;
231
+ flow_slug?: string;
232
+ opt_base_delay?: number | null;
233
+ opt_max_attempts?: number | null;
234
+ opt_timeout?: number | null;
235
+ step_slug?: string;
236
+ step_type?: string;
237
+ };
238
+ Relationships: [
239
+ {
240
+ foreignKeyName: "steps_flow_slug_fkey";
241
+ columns: ["flow_slug"];
242
+ isOneToOne: false;
243
+ referencedRelation: "flows";
244
+ referencedColumns: ["flow_slug"];
245
+ }
246
+ ];
247
+ };
248
+ };
249
+ Views: {
250
+ [_ in never]: never;
251
+ };
252
+ Functions: {
253
+ add_step: {
254
+ Args: {
255
+ flow_slug: string;
256
+ step_slug: string;
257
+ deps_slugs: string[];
258
+ max_attempts?: number;
259
+ base_delay?: number;
260
+ timeout?: number;
261
+ };
262
+ Returns: {
263
+ deps_count: number;
264
+ flow_slug: string;
265
+ opt_base_delay: number | null;
266
+ opt_max_attempts: number | null;
267
+ opt_timeout: number | null;
268
+ step_slug: string;
269
+ step_type: string;
270
+ };
271
+ } | {
272
+ Args: {
273
+ flow_slug: string;
274
+ step_slug: string;
275
+ max_attempts?: number;
276
+ base_delay?: number;
277
+ timeout?: number;
278
+ };
279
+ Returns: {
280
+ deps_count: number;
281
+ flow_slug: string;
282
+ opt_base_delay: number | null;
283
+ opt_max_attempts: number | null;
284
+ opt_timeout: number | null;
285
+ step_slug: string;
286
+ step_type: string;
287
+ };
288
+ };
289
+ calculate_retry_delay: {
290
+ Args: {
291
+ base_delay: number;
292
+ attempts_count: number;
293
+ };
294
+ Returns: number;
295
+ };
296
+ complete_task: {
297
+ Args: {
298
+ run_id: string;
299
+ step_slug: string;
300
+ task_index: number;
301
+ output: Json;
302
+ };
303
+ Returns: {
304
+ attempts_count: number;
305
+ error_message: string | null;
306
+ flow_slug: string;
307
+ message_id: number | null;
308
+ output: Json | null;
309
+ run_id: string;
310
+ status: string;
311
+ step_slug: string;
312
+ task_index: number;
313
+ }[];
314
+ };
315
+ create_flow: {
316
+ Args: {
317
+ flow_slug: string;
318
+ max_attempts?: number;
319
+ base_delay?: number;
320
+ timeout?: number;
321
+ };
322
+ Returns: {
323
+ flow_slug: string;
324
+ opt_base_delay: number;
325
+ opt_max_attempts: number;
326
+ opt_timeout: number;
327
+ };
328
+ };
329
+ fail_task: {
330
+ Args: {
331
+ run_id: string;
332
+ step_slug: string;
333
+ task_index: number;
334
+ error_message: string;
335
+ };
336
+ Returns: {
337
+ attempts_count: number;
338
+ error_message: string | null;
339
+ flow_slug: string;
340
+ message_id: number | null;
341
+ output: Json | null;
342
+ run_id: string;
343
+ status: string;
344
+ step_slug: string;
345
+ task_index: number;
346
+ }[];
347
+ };
348
+ is_valid_slug: {
349
+ Args: {
350
+ slug: string;
351
+ };
352
+ Returns: boolean;
353
+ };
354
+ maybe_complete_run: {
355
+ Args: {
356
+ run_id: string;
357
+ };
358
+ Returns: undefined;
359
+ };
360
+ poll_for_tasks: {
361
+ Args: {
362
+ queue_name: string;
363
+ vt: number;
364
+ qty: number;
365
+ max_poll_seconds?: number;
366
+ poll_interval_ms?: number;
367
+ };
368
+ Returns: Database["pgflow"]["CompositeTypes"]["step_task_record"][];
369
+ };
370
+ read_with_poll: {
371
+ Args: {
372
+ queue_name: string;
373
+ vt: number;
374
+ qty: number;
375
+ max_poll_seconds?: number;
376
+ poll_interval_ms?: number;
377
+ conditional?: Json;
378
+ };
379
+ Returns: Database["pgmq"]["CompositeTypes"]["message_record"][];
380
+ };
381
+ start_flow: {
382
+ Args: {
383
+ flow_slug: string;
384
+ input: Json;
385
+ };
386
+ Returns: {
387
+ flow_slug: string;
388
+ input: Json;
389
+ output: Json | null;
390
+ remaining_steps: number;
391
+ run_id: string;
392
+ status: string;
393
+ }[];
394
+ };
395
+ start_ready_steps: {
396
+ Args: {
397
+ run_id: string;
398
+ };
399
+ Returns: undefined;
400
+ };
401
+ };
402
+ Enums: {
403
+ [_ in never]: never;
404
+ };
405
+ CompositeTypes: {
406
+ step_task_record: {
407
+ flow_slug: string | null;
408
+ run_id: string | null;
409
+ step_slug: string | null;
410
+ input: Json | null;
411
+ msg_id: number | null;
412
+ };
413
+ };
414
+ };
415
+ pgmq: {
416
+ Tables: {
417
+ meta: {
418
+ Row: {
419
+ created_at: string;
420
+ is_partitioned: boolean;
421
+ is_unlogged: boolean;
422
+ queue_name: string;
423
+ };
424
+ Insert: {
425
+ created_at?: string;
426
+ is_partitioned: boolean;
427
+ is_unlogged: boolean;
428
+ queue_name: string;
429
+ };
430
+ Update: {
431
+ created_at?: string;
432
+ is_partitioned?: boolean;
433
+ is_unlogged?: boolean;
434
+ queue_name?: string;
435
+ };
436
+ Relationships: [];
437
+ };
438
+ };
439
+ Views: {
440
+ [_ in never]: never;
441
+ };
442
+ Functions: {
443
+ _belongs_to_pgmq: {
444
+ Args: {
445
+ table_name: string;
446
+ };
447
+ Returns: boolean;
448
+ };
449
+ _ensure_pg_partman_installed: {
450
+ Args: Record<PropertyKey, never>;
451
+ Returns: undefined;
452
+ };
453
+ _get_partition_col: {
454
+ Args: {
455
+ partition_interval: string;
456
+ };
457
+ Returns: string;
458
+ };
459
+ _get_pg_partman_major_version: {
460
+ Args: Record<PropertyKey, never>;
461
+ Returns: number;
462
+ };
463
+ _get_pg_partman_schema: {
464
+ Args: Record<PropertyKey, never>;
465
+ Returns: string;
466
+ };
467
+ archive: {
468
+ Args: {
469
+ queue_name: string;
470
+ msg_id: number;
471
+ };
472
+ Returns: boolean;
473
+ } | {
474
+ Args: {
475
+ queue_name: string;
476
+ msg_ids: number[];
477
+ };
478
+ Returns: number[];
479
+ };
480
+ convert_archive_partitioned: {
481
+ Args: {
482
+ table_name: string;
483
+ partition_interval?: string;
484
+ retention_interval?: string;
485
+ leading_partition?: number;
486
+ };
487
+ Returns: undefined;
488
+ };
489
+ create: {
490
+ Args: {
491
+ queue_name: string;
492
+ };
493
+ Returns: undefined;
494
+ };
495
+ create_non_partitioned: {
496
+ Args: {
497
+ queue_name: string;
498
+ };
499
+ Returns: undefined;
500
+ };
501
+ create_partitioned: {
502
+ Args: {
503
+ queue_name: string;
504
+ partition_interval?: string;
505
+ retention_interval?: string;
506
+ };
507
+ Returns: undefined;
508
+ };
509
+ create_unlogged: {
510
+ Args: {
511
+ queue_name: string;
512
+ };
513
+ Returns: undefined;
514
+ };
515
+ delete: {
516
+ Args: {
517
+ queue_name: string;
518
+ msg_id: number;
519
+ };
520
+ Returns: boolean;
521
+ } | {
522
+ Args: {
523
+ queue_name: string;
524
+ msg_ids: number[];
525
+ };
526
+ Returns: number[];
527
+ };
528
+ detach_archive: {
529
+ Args: {
530
+ queue_name: string;
531
+ };
532
+ Returns: undefined;
533
+ };
534
+ drop_queue: {
535
+ Args: {
536
+ queue_name: string;
537
+ partitioned?: boolean;
538
+ };
539
+ Returns: boolean;
540
+ };
541
+ format_table_name: {
542
+ Args: {
543
+ queue_name: string;
544
+ prefix: string;
545
+ };
546
+ Returns: string;
547
+ };
548
+ list_queues: {
549
+ Args: Record<PropertyKey, never>;
550
+ Returns: Database["pgmq"]["CompositeTypes"]["queue_record"][];
551
+ };
552
+ metrics: {
553
+ Args: {
554
+ queue_name: string;
555
+ };
556
+ Returns: Database["pgmq"]["CompositeTypes"]["metrics_result"];
557
+ };
558
+ metrics_all: {
559
+ Args: Record<PropertyKey, never>;
560
+ Returns: Database["pgmq"]["CompositeTypes"]["metrics_result"][];
561
+ };
562
+ pop: {
563
+ Args: {
564
+ queue_name: string;
565
+ };
566
+ Returns: Database["pgmq"]["CompositeTypes"]["message_record"][];
567
+ };
568
+ purge_queue: {
569
+ Args: {
570
+ queue_name: string;
571
+ };
572
+ Returns: number;
573
+ };
574
+ read: {
575
+ Args: {
576
+ queue_name: string;
577
+ vt: number;
578
+ qty: number;
579
+ };
580
+ Returns: Database["pgmq"]["CompositeTypes"]["message_record"][];
581
+ };
582
+ read_with_poll: {
583
+ Args: {
584
+ queue_name: string;
585
+ vt: number;
586
+ qty: number;
587
+ max_poll_seconds?: number;
588
+ poll_interval_ms?: number;
589
+ };
590
+ Returns: Database["pgmq"]["CompositeTypes"]["message_record"][];
591
+ };
592
+ send: {
593
+ Args: {
594
+ queue_name: string;
595
+ msg: Json;
596
+ delay?: number;
597
+ };
598
+ Returns: number[];
599
+ };
600
+ send_batch: {
601
+ Args: {
602
+ queue_name: string;
603
+ msgs: Json[];
604
+ delay?: number;
605
+ };
606
+ Returns: number[];
607
+ };
608
+ set_vt: {
609
+ Args: {
610
+ queue_name: string;
611
+ msg_id: number;
612
+ vt: number;
613
+ };
614
+ Returns: Database["pgmq"]["CompositeTypes"]["message_record"][];
615
+ };
616
+ validate_queue_name: {
617
+ Args: {
618
+ queue_name: string;
619
+ };
620
+ Returns: undefined;
621
+ };
622
+ };
623
+ Enums: {
624
+ [_ in never]: never;
625
+ };
626
+ CompositeTypes: {
627
+ message_record: {
628
+ msg_id: number | null;
629
+ read_ct: number | null;
630
+ enqueued_at: string | null;
631
+ vt: string | null;
632
+ message: Json | null;
633
+ };
634
+ metrics_result: {
635
+ queue_name: string | null;
636
+ queue_length: number | null;
637
+ newest_msg_age_sec: number | null;
638
+ oldest_msg_age_sec: number | null;
639
+ total_messages: number | null;
640
+ scrape_time: string | null;
641
+ };
642
+ queue_record: {
643
+ queue_name: string | null;
644
+ is_partitioned: boolean | null;
645
+ is_unlogged: boolean | null;
646
+ created_at: string | null;
647
+ };
648
+ };
649
+ };
650
+ };
651
+ type PublicSchema = Database[Extract<keyof Database, "public">];
652
+ export type Tables<PublicTableNameOrOptions extends keyof (PublicSchema["Tables"] & PublicSchema["Views"]) | {
653
+ schema: keyof Database;
654
+ }, TableName extends PublicTableNameOrOptions extends {
655
+ schema: keyof Database;
656
+ } ? keyof (Database[PublicTableNameOrOptions["schema"]]["Tables"] & Database[PublicTableNameOrOptions["schema"]]["Views"]) : never = never> = PublicTableNameOrOptions extends {
657
+ schema: keyof Database;
658
+ } ? (Database[PublicTableNameOrOptions["schema"]]["Tables"] & Database[PublicTableNameOrOptions["schema"]]["Views"])[TableName] extends {
659
+ Row: infer R;
660
+ } ? R : never : PublicTableNameOrOptions extends keyof (PublicSchema["Tables"] & PublicSchema["Views"]) ? (PublicSchema["Tables"] & PublicSchema["Views"])[PublicTableNameOrOptions] extends {
661
+ Row: infer R;
662
+ } ? R : never : never;
663
+ export type TablesInsert<PublicTableNameOrOptions extends keyof PublicSchema["Tables"] | {
664
+ schema: keyof Database;
665
+ }, TableName extends PublicTableNameOrOptions extends {
666
+ schema: keyof Database;
667
+ } ? keyof Database[PublicTableNameOrOptions["schema"]]["Tables"] : never = never> = PublicTableNameOrOptions extends {
668
+ schema: keyof Database;
669
+ } ? Database[PublicTableNameOrOptions["schema"]]["Tables"][TableName] extends {
670
+ Insert: infer I;
671
+ } ? I : never : PublicTableNameOrOptions extends keyof PublicSchema["Tables"] ? PublicSchema["Tables"][PublicTableNameOrOptions] extends {
672
+ Insert: infer I;
673
+ } ? I : never : never;
674
+ export type TablesUpdate<PublicTableNameOrOptions extends keyof PublicSchema["Tables"] | {
675
+ schema: keyof Database;
676
+ }, TableName extends PublicTableNameOrOptions extends {
677
+ schema: keyof Database;
678
+ } ? keyof Database[PublicTableNameOrOptions["schema"]]["Tables"] : never = never> = PublicTableNameOrOptions extends {
679
+ schema: keyof Database;
680
+ } ? Database[PublicTableNameOrOptions["schema"]]["Tables"][TableName] extends {
681
+ Update: infer U;
682
+ } ? U : never : PublicTableNameOrOptions extends keyof PublicSchema["Tables"] ? PublicSchema["Tables"][PublicTableNameOrOptions] extends {
683
+ Update: infer U;
684
+ } ? U : never : never;
685
+ export type Enums<PublicEnumNameOrOptions extends keyof PublicSchema["Enums"] | {
686
+ schema: keyof Database;
687
+ }, EnumName extends PublicEnumNameOrOptions extends {
688
+ schema: keyof Database;
689
+ } ? keyof Database[PublicEnumNameOrOptions["schema"]]["Enums"] : never = never> = PublicEnumNameOrOptions extends {
690
+ schema: keyof Database;
691
+ } ? Database[PublicEnumNameOrOptions["schema"]]["Enums"][EnumName] : PublicEnumNameOrOptions extends keyof PublicSchema["Enums"] ? PublicSchema["Enums"][PublicEnumNameOrOptions] : never;
692
+ export type CompositeTypes<PublicCompositeTypeNameOrOptions extends keyof PublicSchema["CompositeTypes"] | {
693
+ schema: keyof Database;
694
+ }, CompositeTypeName extends PublicCompositeTypeNameOrOptions extends {
695
+ schema: keyof Database;
696
+ } ? keyof Database[PublicCompositeTypeNameOrOptions["schema"]]["CompositeTypes"] : never = never> = PublicCompositeTypeNameOrOptions extends {
697
+ schema: keyof Database;
698
+ } ? Database[PublicCompositeTypeNameOrOptions["schema"]]["CompositeTypes"][CompositeTypeName] : PublicCompositeTypeNameOrOptions extends keyof PublicSchema["CompositeTypes"] ? PublicSchema["CompositeTypes"][PublicCompositeTypeNameOrOptions] : never;
699
+ export {};
700
+ //# sourceMappingURL=database-types.d.ts.map