@foundrynorth/flux-schema 1.6.0 → 1.7.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.
package/dist/schema.d.ts CHANGED
@@ -28844,6 +28844,8 @@ export declare const fluxClientAccountsRelations: import("drizzle-orm").Relation
28844
28844
  submissions: import("drizzle-orm").Many<"flux_client_submissions">;
28845
28845
  templates: import("drizzle-orm").Many<"flux_client_submission_templates">;
28846
28846
  productMappings: import("drizzle-orm").Many<"flux_client_product_map">;
28847
+ deliveryMappings: import("drizzle-orm").Many<"flux_property_delivery_map">;
28848
+ productDeliveryCategories: import("drizzle-orm").Many<"flux_product_delivery_category_map">;
28847
28849
  }>;
28848
28850
  export type FluxClientAccount = typeof fluxClientAccounts.$inferSelect;
28849
28851
  export type NewFluxClientAccount = typeof fluxClientAccounts.$inferInsert;
@@ -31121,21 +31123,18 @@ export declare const fluxSemOptimizationLog: import("drizzle-orm/pg-core").PgTab
31121
31123
  export type FluxSemOptimizationLog = typeof fluxSemOptimizationLog.$inferSelect;
31122
31124
  export type NewFluxSemOptimizationLog = typeof fluxSemOptimizationLog.$inferInsert;
31123
31125
  /**
31124
- * flux_sem_preresearch_runsAutomated campaign prep results.
31125
- *
31126
- * Each run captures the full output of the SEM enrichment pipeline:
31127
- * keyword research, SERP analysis, RSA ad copy drafts, account structure,
31128
- * Google Ads Editor CSV, and an executive summary.
31126
+ * flux_sem_change_packsApproved recommendation bundles queued for execution.
31129
31127
  *
31130
- * The latest completed run is linked from flux_sem_campaigns.latest_preresearch_run_id.
31128
+ * Stores the operator-facing work package that bridges AI recommendations
31129
+ * and platform execution outside Flux.
31131
31130
  */
31132
- export declare const fluxSemPreresearchRuns: import("drizzle-orm/pg-core").PgTableWithColumns<{
31133
- name: "flux_sem_preresearch_runs";
31131
+ export declare const fluxSemChangePacks: import("drizzle-orm/pg-core").PgTableWithColumns<{
31132
+ name: "flux_sem_change_packs";
31134
31133
  schema: undefined;
31135
31134
  columns: {
31136
31135
  id: import("drizzle-orm/pg-core").PgColumn<{
31137
31136
  name: "id";
31138
- tableName: "flux_sem_preresearch_runs";
31137
+ tableName: "flux_sem_change_packs";
31139
31138
  dataType: "string";
31140
31139
  columnType: "PgText";
31141
31140
  data: string;
@@ -31152,7 +31151,41 @@ export declare const fluxSemPreresearchRuns: import("drizzle-orm/pg-core").PgTab
31152
31151
  }, {}, {}>;
31153
31152
  semCampaignId: import("drizzle-orm/pg-core").PgColumn<{
31154
31153
  name: "sem_campaign_id";
31155
- tableName: "flux_sem_preresearch_runs";
31154
+ tableName: "flux_sem_change_packs";
31155
+ dataType: "string";
31156
+ columnType: "PgText";
31157
+ data: string;
31158
+ driverParam: string;
31159
+ notNull: true;
31160
+ hasDefault: false;
31161
+ isPrimaryKey: false;
31162
+ isAutoincrement: false;
31163
+ hasRuntimeDefault: false;
31164
+ enumValues: [string, ...string[]];
31165
+ baseColumn: never;
31166
+ identity: undefined;
31167
+ generated: undefined;
31168
+ }, {}, {}>;
31169
+ title: import("drizzle-orm/pg-core").PgColumn<{
31170
+ name: "title";
31171
+ tableName: "flux_sem_change_packs";
31172
+ dataType: "string";
31173
+ columnType: "PgText";
31174
+ data: string;
31175
+ driverParam: string;
31176
+ notNull: true;
31177
+ hasDefault: false;
31178
+ isPrimaryKey: false;
31179
+ isAutoincrement: false;
31180
+ hasRuntimeDefault: false;
31181
+ enumValues: [string, ...string[]];
31182
+ baseColumn: never;
31183
+ identity: undefined;
31184
+ generated: undefined;
31185
+ }, {}, {}>;
31186
+ category: import("drizzle-orm/pg-core").PgColumn<{
31187
+ name: "category";
31188
+ tableName: "flux_sem_change_packs";
31156
31189
  dataType: "string";
31157
31190
  columnType: "PgText";
31158
31191
  data: string;
@@ -31167,9 +31200,26 @@ export declare const fluxSemPreresearchRuns: import("drizzle-orm/pg-core").PgTab
31167
31200
  identity: undefined;
31168
31201
  generated: undefined;
31169
31202
  }, {}, {}>;
31203
+ priority: import("drizzle-orm/pg-core").PgColumn<{
31204
+ name: "priority";
31205
+ tableName: "flux_sem_change_packs";
31206
+ dataType: "string";
31207
+ columnType: "PgText";
31208
+ data: string;
31209
+ driverParam: string;
31210
+ notNull: true;
31211
+ hasDefault: true;
31212
+ isPrimaryKey: false;
31213
+ isAutoincrement: false;
31214
+ hasRuntimeDefault: false;
31215
+ enumValues: [string, ...string[]];
31216
+ baseColumn: never;
31217
+ identity: undefined;
31218
+ generated: undefined;
31219
+ }, {}, {}>;
31170
31220
  status: import("drizzle-orm/pg-core").PgColumn<{
31171
31221
  name: "status";
31172
- tableName: "flux_sem_preresearch_runs";
31222
+ tableName: "flux_sem_change_packs";
31173
31223
  dataType: "string";
31174
31224
  columnType: "PgText";
31175
31225
  data: string;
@@ -31184,9 +31234,26 @@ export declare const fluxSemPreresearchRuns: import("drizzle-orm/pg-core").PgTab
31184
31234
  identity: undefined;
31185
31235
  generated: undefined;
31186
31236
  }, {}, {}>;
31187
- triggeredBy: import("drizzle-orm/pg-core").PgColumn<{
31188
- name: "triggered_by";
31189
- tableName: "flux_sem_preresearch_runs";
31237
+ source: import("drizzle-orm/pg-core").PgColumn<{
31238
+ name: "source";
31239
+ tableName: "flux_sem_change_packs";
31240
+ dataType: "string";
31241
+ columnType: "PgText";
31242
+ data: string;
31243
+ driverParam: string;
31244
+ notNull: true;
31245
+ hasDefault: true;
31246
+ isPrimaryKey: false;
31247
+ isAutoincrement: false;
31248
+ hasRuntimeDefault: false;
31249
+ enumValues: [string, ...string[]];
31250
+ baseColumn: never;
31251
+ identity: undefined;
31252
+ generated: undefined;
31253
+ }, {}, {}>;
31254
+ recommendationKey: import("drizzle-orm/pg-core").PgColumn<{
31255
+ name: "recommendation_key";
31256
+ tableName: "flux_sem_change_packs";
31190
31257
  dataType: "string";
31191
31258
  columnType: "PgText";
31192
31259
  data: string;
@@ -31201,60 +31268,60 @@ export declare const fluxSemPreresearchRuns: import("drizzle-orm/pg-core").PgTab
31201
31268
  identity: undefined;
31202
31269
  generated: undefined;
31203
31270
  }, {}, {}>;
31204
- keywordResearch: import("drizzle-orm/pg-core").PgColumn<{
31205
- name: "keyword_research";
31206
- tableName: "flux_sem_preresearch_runs";
31207
- dataType: "json";
31208
- columnType: "PgJsonb";
31209
- data: unknown;
31210
- driverParam: unknown;
31271
+ summary: import("drizzle-orm/pg-core").PgColumn<{
31272
+ name: "summary";
31273
+ tableName: "flux_sem_change_packs";
31274
+ dataType: "string";
31275
+ columnType: "PgText";
31276
+ data: string;
31277
+ driverParam: string;
31211
31278
  notNull: false;
31212
31279
  hasDefault: false;
31213
31280
  isPrimaryKey: false;
31214
31281
  isAutoincrement: false;
31215
31282
  hasRuntimeDefault: false;
31216
- enumValues: undefined;
31283
+ enumValues: [string, ...string[]];
31217
31284
  baseColumn: never;
31218
31285
  identity: undefined;
31219
31286
  generated: undefined;
31220
31287
  }, {}, {}>;
31221
- keywordCount: import("drizzle-orm/pg-core").PgColumn<{
31222
- name: "keyword_count";
31223
- tableName: "flux_sem_preresearch_runs";
31224
- dataType: "number";
31225
- columnType: "PgInteger";
31226
- data: number;
31227
- driverParam: string | number;
31288
+ rationale: import("drizzle-orm/pg-core").PgColumn<{
31289
+ name: "rationale";
31290
+ tableName: "flux_sem_change_packs";
31291
+ dataType: "string";
31292
+ columnType: "PgText";
31293
+ data: string;
31294
+ driverParam: string;
31228
31295
  notNull: false;
31229
31296
  hasDefault: false;
31230
31297
  isPrimaryKey: false;
31231
31298
  isAutoincrement: false;
31232
31299
  hasRuntimeDefault: false;
31233
- enumValues: undefined;
31300
+ enumValues: [string, ...string[]];
31234
31301
  baseColumn: never;
31235
31302
  identity: undefined;
31236
31303
  generated: undefined;
31237
31304
  }, {}, {}>;
31238
- serpAnalysis: import("drizzle-orm/pg-core").PgColumn<{
31239
- name: "serp_analysis";
31240
- tableName: "flux_sem_preresearch_runs";
31241
- dataType: "json";
31242
- columnType: "PgJsonb";
31243
- data: unknown;
31244
- driverParam: unknown;
31305
+ expectedImpact: import("drizzle-orm/pg-core").PgColumn<{
31306
+ name: "expected_impact";
31307
+ tableName: "flux_sem_change_packs";
31308
+ dataType: "string";
31309
+ columnType: "PgText";
31310
+ data: string;
31311
+ driverParam: string;
31245
31312
  notNull: false;
31246
31313
  hasDefault: false;
31247
31314
  isPrimaryKey: false;
31248
31315
  isAutoincrement: false;
31249
31316
  hasRuntimeDefault: false;
31250
- enumValues: undefined;
31317
+ enumValues: [string, ...string[]];
31251
31318
  baseColumn: never;
31252
31319
  identity: undefined;
31253
31320
  generated: undefined;
31254
31321
  }, {}, {}>;
31255
- adCopyDrafts: import("drizzle-orm/pg-core").PgColumn<{
31256
- name: "ad_copy_drafts";
31257
- tableName: "flux_sem_preresearch_runs";
31322
+ exportPayload: import("drizzle-orm/pg-core").PgColumn<{
31323
+ name: "export_payload";
31324
+ tableName: "flux_sem_change_packs";
31258
31325
  dataType: "json";
31259
31326
  columnType: "PgJsonb";
31260
31327
  data: unknown;
@@ -31269,9 +31336,9 @@ export declare const fluxSemPreresearchRuns: import("drizzle-orm/pg-core").PgTab
31269
31336
  identity: undefined;
31270
31337
  generated: undefined;
31271
31338
  }, {}, {}>;
31272
- accountStructure: import("drizzle-orm/pg-core").PgColumn<{
31273
- name: "account_structure";
31274
- tableName: "flux_sem_preresearch_runs";
31339
+ approvalContext: import("drizzle-orm/pg-core").PgColumn<{
31340
+ name: "approval_context";
31341
+ tableName: "flux_sem_change_packs";
31275
31342
  dataType: "json";
31276
31343
  columnType: "PgJsonb";
31277
31344
  data: unknown;
@@ -31286,9 +31353,9 @@ export declare const fluxSemPreresearchRuns: import("drizzle-orm/pg-core").PgTab
31286
31353
  identity: undefined;
31287
31354
  generated: undefined;
31288
31355
  }, {}, {}>;
31289
- googleAdsCsv: import("drizzle-orm/pg-core").PgColumn<{
31290
- name: "google_ads_csv";
31291
- tableName: "flux_sem_preresearch_runs";
31356
+ executionNotes: import("drizzle-orm/pg-core").PgColumn<{
31357
+ name: "execution_notes";
31358
+ tableName: "flux_sem_change_packs";
31292
31359
  dataType: "string";
31293
31360
  columnType: "PgText";
31294
31361
  data: string;
@@ -31303,14 +31370,14 @@ export declare const fluxSemPreresearchRuns: import("drizzle-orm/pg-core").PgTab
31303
31370
  identity: undefined;
31304
31371
  generated: undefined;
31305
31372
  }, {}, {}>;
31306
- executiveSummary: import("drizzle-orm/pg-core").PgColumn<{
31307
- name: "executive_summary";
31308
- tableName: "flux_sem_preresearch_runs";
31373
+ createdBy: import("drizzle-orm/pg-core").PgColumn<{
31374
+ name: "created_by";
31375
+ tableName: "flux_sem_change_packs";
31309
31376
  dataType: "string";
31310
31377
  columnType: "PgText";
31311
31378
  data: string;
31312
31379
  driverParam: string;
31313
- notNull: false;
31380
+ notNull: true;
31314
31381
  hasDefault: false;
31315
31382
  isPrimaryKey: false;
31316
31383
  isAutoincrement: false;
@@ -31320,9 +31387,9 @@ export declare const fluxSemPreresearchRuns: import("drizzle-orm/pg-core").PgTab
31320
31387
  identity: undefined;
31321
31388
  generated: undefined;
31322
31389
  }, {}, {}>;
31323
- error: import("drizzle-orm/pg-core").PgColumn<{
31324
- name: "error";
31325
- tableName: "flux_sem_preresearch_runs";
31390
+ approvedBy: import("drizzle-orm/pg-core").PgColumn<{
31391
+ name: "approved_by";
31392
+ tableName: "flux_sem_change_packs";
31326
31393
  dataType: "string";
31327
31394
  columnType: "PgText";
31328
31395
  data: string;
@@ -31337,9 +31404,9 @@ export declare const fluxSemPreresearchRuns: import("drizzle-orm/pg-core").PgTab
31337
31404
  identity: undefined;
31338
31405
  generated: undefined;
31339
31406
  }, {}, {}>;
31340
- startedAt: import("drizzle-orm/pg-core").PgColumn<{
31341
- name: "started_at";
31342
- tableName: "flux_sem_preresearch_runs";
31407
+ approvedAt: import("drizzle-orm/pg-core").PgColumn<{
31408
+ name: "approved_at";
31409
+ tableName: "flux_sem_change_packs";
31343
31410
  dataType: "date";
31344
31411
  columnType: "PgTimestamp";
31345
31412
  data: Date;
@@ -31354,9 +31421,26 @@ export declare const fluxSemPreresearchRuns: import("drizzle-orm/pg-core").PgTab
31354
31421
  identity: undefined;
31355
31422
  generated: undefined;
31356
31423
  }, {}, {}>;
31357
- completedAt: import("drizzle-orm/pg-core").PgColumn<{
31358
- name: "completed_at";
31359
- tableName: "flux_sem_preresearch_runs";
31424
+ executedBy: import("drizzle-orm/pg-core").PgColumn<{
31425
+ name: "executed_by";
31426
+ tableName: "flux_sem_change_packs";
31427
+ dataType: "string";
31428
+ columnType: "PgText";
31429
+ data: string;
31430
+ driverParam: string;
31431
+ notNull: false;
31432
+ hasDefault: false;
31433
+ isPrimaryKey: false;
31434
+ isAutoincrement: false;
31435
+ hasRuntimeDefault: false;
31436
+ enumValues: [string, ...string[]];
31437
+ baseColumn: never;
31438
+ identity: undefined;
31439
+ generated: undefined;
31440
+ }, {}, {}>;
31441
+ executedAt: import("drizzle-orm/pg-core").PgColumn<{
31442
+ name: "executed_at";
31443
+ tableName: "flux_sem_change_packs";
31360
31444
  dataType: "date";
31361
31445
  columnType: "PgTimestamp";
31362
31446
  data: Date;
@@ -31373,7 +31457,24 @@ export declare const fluxSemPreresearchRuns: import("drizzle-orm/pg-core").PgTab
31373
31457
  }, {}, {}>;
31374
31458
  createdAt: import("drizzle-orm/pg-core").PgColumn<{
31375
31459
  name: "created_at";
31376
- tableName: "flux_sem_preresearch_runs";
31460
+ tableName: "flux_sem_change_packs";
31461
+ dataType: "date";
31462
+ columnType: "PgTimestamp";
31463
+ data: Date;
31464
+ driverParam: string;
31465
+ notNull: true;
31466
+ hasDefault: true;
31467
+ isPrimaryKey: false;
31468
+ isAutoincrement: false;
31469
+ hasRuntimeDefault: false;
31470
+ enumValues: undefined;
31471
+ baseColumn: never;
31472
+ identity: undefined;
31473
+ generated: undefined;
31474
+ }, {}, {}>;
31475
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
31476
+ name: "updated_at";
31477
+ tableName: "flux_sem_change_packs";
31377
31478
  dataType: "date";
31378
31479
  columnType: "PgTimestamp";
31379
31480
  data: Date;
@@ -31391,7 +31492,631 @@ export declare const fluxSemPreresearchRuns: import("drizzle-orm/pg-core").PgTab
31391
31492
  };
31392
31493
  dialect: "pg";
31393
31494
  }>;
31394
- export type FluxSemPreresearchRun = typeof fluxSemPreresearchRuns.$inferSelect;
31395
- export type NewFluxSemPreresearchRun = typeof fluxSemPreresearchRuns.$inferInsert;
31495
+ export type FluxSemChangePack = typeof fluxSemChangePacks.$inferSelect;
31496
+ export type NewFluxSemChangePack = typeof fluxSemChangePacks.$inferInsert;
31497
+ /**
31498
+ * flux_sem_preresearch_runs — Automated campaign prep results.
31499
+ *
31500
+ * Each run captures the full output of the SEM enrichment pipeline:
31501
+ * keyword research, SERP analysis, RSA ad copy drafts, account structure,
31502
+ * Google Ads Editor CSV, and an executive summary.
31503
+ *
31504
+ * The latest completed run is linked from flux_sem_campaigns.latest_preresearch_run_id.
31505
+ */
31506
+ export declare const fluxSemPreresearchRuns: import("drizzle-orm/pg-core").PgTableWithColumns<{
31507
+ name: "flux_sem_preresearch_runs";
31508
+ schema: undefined;
31509
+ columns: {
31510
+ id: import("drizzle-orm/pg-core").PgColumn<{
31511
+ name: "id";
31512
+ tableName: "flux_sem_preresearch_runs";
31513
+ dataType: "string";
31514
+ columnType: "PgText";
31515
+ data: string;
31516
+ driverParam: string;
31517
+ notNull: true;
31518
+ hasDefault: true;
31519
+ isPrimaryKey: true;
31520
+ isAutoincrement: false;
31521
+ hasRuntimeDefault: false;
31522
+ enumValues: [string, ...string[]];
31523
+ baseColumn: never;
31524
+ identity: undefined;
31525
+ generated: undefined;
31526
+ }, {}, {}>;
31527
+ semCampaignId: import("drizzle-orm/pg-core").PgColumn<{
31528
+ name: "sem_campaign_id";
31529
+ tableName: "flux_sem_preresearch_runs";
31530
+ dataType: "string";
31531
+ columnType: "PgText";
31532
+ data: string;
31533
+ driverParam: string;
31534
+ notNull: true;
31535
+ hasDefault: false;
31536
+ isPrimaryKey: false;
31537
+ isAutoincrement: false;
31538
+ hasRuntimeDefault: false;
31539
+ enumValues: [string, ...string[]];
31540
+ baseColumn: never;
31541
+ identity: undefined;
31542
+ generated: undefined;
31543
+ }, {}, {}>;
31544
+ status: import("drizzle-orm/pg-core").PgColumn<{
31545
+ name: "status";
31546
+ tableName: "flux_sem_preresearch_runs";
31547
+ dataType: "string";
31548
+ columnType: "PgText";
31549
+ data: string;
31550
+ driverParam: string;
31551
+ notNull: true;
31552
+ hasDefault: true;
31553
+ isPrimaryKey: false;
31554
+ isAutoincrement: false;
31555
+ hasRuntimeDefault: false;
31556
+ enumValues: [string, ...string[]];
31557
+ baseColumn: never;
31558
+ identity: undefined;
31559
+ generated: undefined;
31560
+ }, {}, {}>;
31561
+ triggeredBy: import("drizzle-orm/pg-core").PgColumn<{
31562
+ name: "triggered_by";
31563
+ tableName: "flux_sem_preresearch_runs";
31564
+ dataType: "string";
31565
+ columnType: "PgText";
31566
+ data: string;
31567
+ driverParam: string;
31568
+ notNull: false;
31569
+ hasDefault: false;
31570
+ isPrimaryKey: false;
31571
+ isAutoincrement: false;
31572
+ hasRuntimeDefault: false;
31573
+ enumValues: [string, ...string[]];
31574
+ baseColumn: never;
31575
+ identity: undefined;
31576
+ generated: undefined;
31577
+ }, {}, {}>;
31578
+ keywordResearch: import("drizzle-orm/pg-core").PgColumn<{
31579
+ name: "keyword_research";
31580
+ tableName: "flux_sem_preresearch_runs";
31581
+ dataType: "json";
31582
+ columnType: "PgJsonb";
31583
+ data: unknown;
31584
+ driverParam: unknown;
31585
+ notNull: false;
31586
+ hasDefault: false;
31587
+ isPrimaryKey: false;
31588
+ isAutoincrement: false;
31589
+ hasRuntimeDefault: false;
31590
+ enumValues: undefined;
31591
+ baseColumn: never;
31592
+ identity: undefined;
31593
+ generated: undefined;
31594
+ }, {}, {}>;
31595
+ keywordCount: import("drizzle-orm/pg-core").PgColumn<{
31596
+ name: "keyword_count";
31597
+ tableName: "flux_sem_preresearch_runs";
31598
+ dataType: "number";
31599
+ columnType: "PgInteger";
31600
+ data: number;
31601
+ driverParam: string | number;
31602
+ notNull: false;
31603
+ hasDefault: false;
31604
+ isPrimaryKey: false;
31605
+ isAutoincrement: false;
31606
+ hasRuntimeDefault: false;
31607
+ enumValues: undefined;
31608
+ baseColumn: never;
31609
+ identity: undefined;
31610
+ generated: undefined;
31611
+ }, {}, {}>;
31612
+ serpAnalysis: import("drizzle-orm/pg-core").PgColumn<{
31613
+ name: "serp_analysis";
31614
+ tableName: "flux_sem_preresearch_runs";
31615
+ dataType: "json";
31616
+ columnType: "PgJsonb";
31617
+ data: unknown;
31618
+ driverParam: unknown;
31619
+ notNull: false;
31620
+ hasDefault: false;
31621
+ isPrimaryKey: false;
31622
+ isAutoincrement: false;
31623
+ hasRuntimeDefault: false;
31624
+ enumValues: undefined;
31625
+ baseColumn: never;
31626
+ identity: undefined;
31627
+ generated: undefined;
31628
+ }, {}, {}>;
31629
+ adCopyDrafts: import("drizzle-orm/pg-core").PgColumn<{
31630
+ name: "ad_copy_drafts";
31631
+ tableName: "flux_sem_preresearch_runs";
31632
+ dataType: "json";
31633
+ columnType: "PgJsonb";
31634
+ data: unknown;
31635
+ driverParam: unknown;
31636
+ notNull: false;
31637
+ hasDefault: false;
31638
+ isPrimaryKey: false;
31639
+ isAutoincrement: false;
31640
+ hasRuntimeDefault: false;
31641
+ enumValues: undefined;
31642
+ baseColumn: never;
31643
+ identity: undefined;
31644
+ generated: undefined;
31645
+ }, {}, {}>;
31646
+ accountStructure: import("drizzle-orm/pg-core").PgColumn<{
31647
+ name: "account_structure";
31648
+ tableName: "flux_sem_preresearch_runs";
31649
+ dataType: "json";
31650
+ columnType: "PgJsonb";
31651
+ data: unknown;
31652
+ driverParam: unknown;
31653
+ notNull: false;
31654
+ hasDefault: false;
31655
+ isPrimaryKey: false;
31656
+ isAutoincrement: false;
31657
+ hasRuntimeDefault: false;
31658
+ enumValues: undefined;
31659
+ baseColumn: never;
31660
+ identity: undefined;
31661
+ generated: undefined;
31662
+ }, {}, {}>;
31663
+ googleAdsCsv: import("drizzle-orm/pg-core").PgColumn<{
31664
+ name: "google_ads_csv";
31665
+ tableName: "flux_sem_preresearch_runs";
31666
+ dataType: "string";
31667
+ columnType: "PgText";
31668
+ data: string;
31669
+ driverParam: string;
31670
+ notNull: false;
31671
+ hasDefault: false;
31672
+ isPrimaryKey: false;
31673
+ isAutoincrement: false;
31674
+ hasRuntimeDefault: false;
31675
+ enumValues: [string, ...string[]];
31676
+ baseColumn: never;
31677
+ identity: undefined;
31678
+ generated: undefined;
31679
+ }, {}, {}>;
31680
+ executiveSummary: import("drizzle-orm/pg-core").PgColumn<{
31681
+ name: "executive_summary";
31682
+ tableName: "flux_sem_preresearch_runs";
31683
+ dataType: "string";
31684
+ columnType: "PgText";
31685
+ data: string;
31686
+ driverParam: string;
31687
+ notNull: false;
31688
+ hasDefault: false;
31689
+ isPrimaryKey: false;
31690
+ isAutoincrement: false;
31691
+ hasRuntimeDefault: false;
31692
+ enumValues: [string, ...string[]];
31693
+ baseColumn: never;
31694
+ identity: undefined;
31695
+ generated: undefined;
31696
+ }, {}, {}>;
31697
+ error: import("drizzle-orm/pg-core").PgColumn<{
31698
+ name: "error";
31699
+ tableName: "flux_sem_preresearch_runs";
31700
+ dataType: "string";
31701
+ columnType: "PgText";
31702
+ data: string;
31703
+ driverParam: string;
31704
+ notNull: false;
31705
+ hasDefault: false;
31706
+ isPrimaryKey: false;
31707
+ isAutoincrement: false;
31708
+ hasRuntimeDefault: false;
31709
+ enumValues: [string, ...string[]];
31710
+ baseColumn: never;
31711
+ identity: undefined;
31712
+ generated: undefined;
31713
+ }, {}, {}>;
31714
+ startedAt: import("drizzle-orm/pg-core").PgColumn<{
31715
+ name: "started_at";
31716
+ tableName: "flux_sem_preresearch_runs";
31717
+ dataType: "date";
31718
+ columnType: "PgTimestamp";
31719
+ data: Date;
31720
+ driverParam: string;
31721
+ notNull: false;
31722
+ hasDefault: false;
31723
+ isPrimaryKey: false;
31724
+ isAutoincrement: false;
31725
+ hasRuntimeDefault: false;
31726
+ enumValues: undefined;
31727
+ baseColumn: never;
31728
+ identity: undefined;
31729
+ generated: undefined;
31730
+ }, {}, {}>;
31731
+ completedAt: import("drizzle-orm/pg-core").PgColumn<{
31732
+ name: "completed_at";
31733
+ tableName: "flux_sem_preresearch_runs";
31734
+ dataType: "date";
31735
+ columnType: "PgTimestamp";
31736
+ data: Date;
31737
+ driverParam: string;
31738
+ notNull: false;
31739
+ hasDefault: false;
31740
+ isPrimaryKey: false;
31741
+ isAutoincrement: false;
31742
+ hasRuntimeDefault: false;
31743
+ enumValues: undefined;
31744
+ baseColumn: never;
31745
+ identity: undefined;
31746
+ generated: undefined;
31747
+ }, {}, {}>;
31748
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
31749
+ name: "created_at";
31750
+ tableName: "flux_sem_preresearch_runs";
31751
+ dataType: "date";
31752
+ columnType: "PgTimestamp";
31753
+ data: Date;
31754
+ driverParam: string;
31755
+ notNull: true;
31756
+ hasDefault: true;
31757
+ isPrimaryKey: false;
31758
+ isAutoincrement: false;
31759
+ hasRuntimeDefault: false;
31760
+ enumValues: undefined;
31761
+ baseColumn: never;
31762
+ identity: undefined;
31763
+ generated: undefined;
31764
+ }, {}, {}>;
31765
+ };
31766
+ dialect: "pg";
31767
+ }>;
31768
+ export type FluxSemPreresearchRun = typeof fluxSemPreresearchRuns.$inferSelect;
31769
+ export type NewFluxSemPreresearchRun = typeof fluxSemPreresearchRuns.$inferInsert;
31770
+ /**
31771
+ * flux_property_delivery_map — Links portal properties to TapClicks identifiers.
31772
+ *
31773
+ * Each row defines a matching rule that connects a client portal property
31774
+ * (flux_client_accounts child) to TapClicks delivery data. Multiple rules
31775
+ * can exist per property (e.g. one for advertiser match, one for campaign
31776
+ * pattern). The bridge service evaluates these rules when aggregating
31777
+ * delivery for a property.
31778
+ *
31779
+ * Multi-tenant: works for any portfolio client, not just Dominium.
31780
+ */
31781
+ export declare const fluxPropertyDeliveryMap: import("drizzle-orm/pg-core").PgTableWithColumns<{
31782
+ name: "flux_property_delivery_map";
31783
+ schema: undefined;
31784
+ columns: {
31785
+ id: import("drizzle-orm/pg-core").PgColumn<{
31786
+ name: "id";
31787
+ tableName: "flux_property_delivery_map";
31788
+ dataType: "string";
31789
+ columnType: "PgText";
31790
+ data: string;
31791
+ driverParam: string;
31792
+ notNull: true;
31793
+ hasDefault: true;
31794
+ isPrimaryKey: true;
31795
+ isAutoincrement: false;
31796
+ hasRuntimeDefault: false;
31797
+ enumValues: [string, ...string[]];
31798
+ baseColumn: never;
31799
+ identity: undefined;
31800
+ generated: undefined;
31801
+ }, {}, {}>;
31802
+ propertyAccountId: import("drizzle-orm/pg-core").PgColumn<{
31803
+ name: "property_account_id";
31804
+ tableName: "flux_property_delivery_map";
31805
+ dataType: "string";
31806
+ columnType: "PgText";
31807
+ data: string;
31808
+ driverParam: string;
31809
+ notNull: true;
31810
+ hasDefault: false;
31811
+ isPrimaryKey: false;
31812
+ isAutoincrement: false;
31813
+ hasRuntimeDefault: false;
31814
+ enumValues: [string, ...string[]];
31815
+ baseColumn: never;
31816
+ identity: undefined;
31817
+ generated: undefined;
31818
+ }, {}, {}>;
31819
+ matchType: import("drizzle-orm/pg-core").PgColumn<{
31820
+ name: "match_type";
31821
+ tableName: "flux_property_delivery_map";
31822
+ dataType: "string";
31823
+ columnType: "PgText";
31824
+ data: string;
31825
+ driverParam: string;
31826
+ notNull: true;
31827
+ hasDefault: false;
31828
+ isPrimaryKey: false;
31829
+ isAutoincrement: false;
31830
+ hasRuntimeDefault: false;
31831
+ enumValues: [string, ...string[]];
31832
+ baseColumn: never;
31833
+ identity: undefined;
31834
+ generated: undefined;
31835
+ }, {}, {}>;
31836
+ matchValue: import("drizzle-orm/pg-core").PgColumn<{
31837
+ name: "match_value";
31838
+ tableName: "flux_property_delivery_map";
31839
+ dataType: "string";
31840
+ columnType: "PgText";
31841
+ data: string;
31842
+ driverParam: string;
31843
+ notNull: true;
31844
+ hasDefault: false;
31845
+ isPrimaryKey: false;
31846
+ isAutoincrement: false;
31847
+ hasRuntimeDefault: false;
31848
+ enumValues: [string, ...string[]];
31849
+ baseColumn: never;
31850
+ identity: undefined;
31851
+ generated: undefined;
31852
+ }, {}, {}>;
31853
+ tapclicksClientId: import("drizzle-orm/pg-core").PgColumn<{
31854
+ name: "tapclicks_client_id";
31855
+ tableName: "flux_property_delivery_map";
31856
+ dataType: "string";
31857
+ columnType: "PgText";
31858
+ data: string;
31859
+ driverParam: string;
31860
+ notNull: false;
31861
+ hasDefault: false;
31862
+ isPrimaryKey: false;
31863
+ isAutoincrement: false;
31864
+ hasRuntimeDefault: false;
31865
+ enumValues: [string, ...string[]];
31866
+ baseColumn: never;
31867
+ identity: undefined;
31868
+ generated: undefined;
31869
+ }, {}, {}>;
31870
+ platform: import("drizzle-orm/pg-core").PgColumn<{
31871
+ name: "platform";
31872
+ tableName: "flux_property_delivery_map";
31873
+ dataType: "string";
31874
+ columnType: "PgText";
31875
+ data: string;
31876
+ driverParam: string;
31877
+ notNull: false;
31878
+ hasDefault: false;
31879
+ isPrimaryKey: false;
31880
+ isAutoincrement: false;
31881
+ hasRuntimeDefault: false;
31882
+ enumValues: [string, ...string[]];
31883
+ baseColumn: never;
31884
+ identity: undefined;
31885
+ generated: undefined;
31886
+ }, {}, {}>;
31887
+ isActive: import("drizzle-orm/pg-core").PgColumn<{
31888
+ name: "is_active";
31889
+ tableName: "flux_property_delivery_map";
31890
+ dataType: "boolean";
31891
+ columnType: "PgBoolean";
31892
+ data: boolean;
31893
+ driverParam: boolean;
31894
+ notNull: true;
31895
+ hasDefault: true;
31896
+ isPrimaryKey: false;
31897
+ isAutoincrement: false;
31898
+ hasRuntimeDefault: false;
31899
+ enumValues: undefined;
31900
+ baseColumn: never;
31901
+ identity: undefined;
31902
+ generated: undefined;
31903
+ }, {}, {}>;
31904
+ confidence: import("drizzle-orm/pg-core").PgColumn<{
31905
+ name: "confidence";
31906
+ tableName: "flux_property_delivery_map";
31907
+ dataType: "string";
31908
+ columnType: "PgText";
31909
+ data: string;
31910
+ driverParam: string;
31911
+ notNull: false;
31912
+ hasDefault: false;
31913
+ isPrimaryKey: false;
31914
+ isAutoincrement: false;
31915
+ hasRuntimeDefault: false;
31916
+ enumValues: [string, ...string[]];
31917
+ baseColumn: never;
31918
+ identity: undefined;
31919
+ generated: undefined;
31920
+ }, {}, {}>;
31921
+ notes: import("drizzle-orm/pg-core").PgColumn<{
31922
+ name: "notes";
31923
+ tableName: "flux_property_delivery_map";
31924
+ dataType: "string";
31925
+ columnType: "PgText";
31926
+ data: string;
31927
+ driverParam: string;
31928
+ notNull: false;
31929
+ hasDefault: false;
31930
+ isPrimaryKey: false;
31931
+ isAutoincrement: false;
31932
+ hasRuntimeDefault: false;
31933
+ enumValues: [string, ...string[]];
31934
+ baseColumn: never;
31935
+ identity: undefined;
31936
+ generated: undefined;
31937
+ }, {}, {}>;
31938
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
31939
+ name: "created_at";
31940
+ tableName: "flux_property_delivery_map";
31941
+ dataType: "date";
31942
+ columnType: "PgTimestamp";
31943
+ data: Date;
31944
+ driverParam: string;
31945
+ notNull: true;
31946
+ hasDefault: true;
31947
+ isPrimaryKey: false;
31948
+ isAutoincrement: false;
31949
+ hasRuntimeDefault: false;
31950
+ enumValues: undefined;
31951
+ baseColumn: never;
31952
+ identity: undefined;
31953
+ generated: undefined;
31954
+ }, {}, {}>;
31955
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
31956
+ name: "updated_at";
31957
+ tableName: "flux_property_delivery_map";
31958
+ dataType: "date";
31959
+ columnType: "PgTimestamp";
31960
+ data: Date;
31961
+ driverParam: string;
31962
+ notNull: true;
31963
+ hasDefault: true;
31964
+ isPrimaryKey: false;
31965
+ isAutoincrement: false;
31966
+ hasRuntimeDefault: false;
31967
+ enumValues: undefined;
31968
+ baseColumn: never;
31969
+ identity: undefined;
31970
+ generated: undefined;
31971
+ }, {}, {}>;
31972
+ };
31973
+ dialect: "pg";
31974
+ }>;
31975
+ export declare const fluxPropertyDeliveryMapRelations: import("drizzle-orm").Relations<"flux_property_delivery_map", {
31976
+ propertyAccount: import("drizzle-orm").One<"flux_client_accounts", true>;
31977
+ }>;
31978
+ export type FluxPropertyDeliveryMap = typeof fluxPropertyDeliveryMap.$inferSelect;
31979
+ export type NewFluxPropertyDeliveryMap = typeof fluxPropertyDeliveryMap.$inferInsert;
31980
+ /**
31981
+ * flux_product_delivery_category_map — Maps portal product categories to
31982
+ * TapClicks platforms / service patterns.
31983
+ *
31984
+ * A property's "SEM-PPC" budget should compare against Google Ads delivery,
31985
+ * not Facebook. This table provides that second dimension of matching.
31986
+ *
31987
+ * Rows with NULL account_id are global defaults. Account-specific rows
31988
+ * override the defaults for that client.
31989
+ */
31990
+ export declare const fluxProductDeliveryCategoryMap: import("drizzle-orm/pg-core").PgTableWithColumns<{
31991
+ name: "flux_product_delivery_category_map";
31992
+ schema: undefined;
31993
+ columns: {
31994
+ id: import("drizzle-orm/pg-core").PgColumn<{
31995
+ name: "id";
31996
+ tableName: "flux_product_delivery_category_map";
31997
+ dataType: "string";
31998
+ columnType: "PgText";
31999
+ data: string;
32000
+ driverParam: string;
32001
+ notNull: true;
32002
+ hasDefault: true;
32003
+ isPrimaryKey: true;
32004
+ isAutoincrement: false;
32005
+ hasRuntimeDefault: false;
32006
+ enumValues: [string, ...string[]];
32007
+ baseColumn: never;
32008
+ identity: undefined;
32009
+ generated: undefined;
32010
+ }, {}, {}>;
32011
+ accountId: import("drizzle-orm/pg-core").PgColumn<{
32012
+ name: "account_id";
32013
+ tableName: "flux_product_delivery_category_map";
32014
+ dataType: "string";
32015
+ columnType: "PgText";
32016
+ data: string;
32017
+ driverParam: string;
32018
+ notNull: false;
32019
+ hasDefault: false;
32020
+ isPrimaryKey: false;
32021
+ isAutoincrement: false;
32022
+ hasRuntimeDefault: false;
32023
+ enumValues: [string, ...string[]];
32024
+ baseColumn: never;
32025
+ identity: undefined;
32026
+ generated: undefined;
32027
+ }, {}, {}>;
32028
+ productCategory: import("drizzle-orm/pg-core").PgColumn<{
32029
+ name: "product_category";
32030
+ tableName: "flux_product_delivery_category_map";
32031
+ dataType: "string";
32032
+ columnType: "PgText";
32033
+ data: string;
32034
+ driverParam: string;
32035
+ notNull: true;
32036
+ hasDefault: false;
32037
+ isPrimaryKey: false;
32038
+ isAutoincrement: false;
32039
+ hasRuntimeDefault: false;
32040
+ enumValues: [string, ...string[]];
32041
+ baseColumn: never;
32042
+ identity: undefined;
32043
+ generated: undefined;
32044
+ }, {}, {}>;
32045
+ platform: import("drizzle-orm/pg-core").PgColumn<{
32046
+ name: "platform";
32047
+ tableName: "flux_product_delivery_category_map";
32048
+ dataType: "string";
32049
+ columnType: "PgText";
32050
+ data: string;
32051
+ driverParam: string;
32052
+ notNull: false;
32053
+ hasDefault: false;
32054
+ isPrimaryKey: false;
32055
+ isAutoincrement: false;
32056
+ hasRuntimeDefault: false;
32057
+ enumValues: [string, ...string[]];
32058
+ baseColumn: never;
32059
+ identity: undefined;
32060
+ generated: undefined;
32061
+ }, {}, {}>;
32062
+ serviceNamePattern: import("drizzle-orm/pg-core").PgColumn<{
32063
+ name: "service_name_pattern";
32064
+ tableName: "flux_product_delivery_category_map";
32065
+ dataType: "string";
32066
+ columnType: "PgText";
32067
+ data: string;
32068
+ driverParam: string;
32069
+ notNull: false;
32070
+ hasDefault: false;
32071
+ isPrimaryKey: false;
32072
+ isAutoincrement: false;
32073
+ hasRuntimeDefault: false;
32074
+ enumValues: [string, ...string[]];
32075
+ baseColumn: never;
32076
+ identity: undefined;
32077
+ generated: undefined;
32078
+ }, {}, {}>;
32079
+ campaignPattern: import("drizzle-orm/pg-core").PgColumn<{
32080
+ name: "campaign_pattern";
32081
+ tableName: "flux_product_delivery_category_map";
32082
+ dataType: "string";
32083
+ columnType: "PgText";
32084
+ data: string;
32085
+ driverParam: string;
32086
+ notNull: false;
32087
+ hasDefault: false;
32088
+ isPrimaryKey: false;
32089
+ isAutoincrement: false;
32090
+ hasRuntimeDefault: false;
32091
+ enumValues: [string, ...string[]];
32092
+ baseColumn: never;
32093
+ identity: undefined;
32094
+ generated: undefined;
32095
+ }, {}, {}>;
32096
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
32097
+ name: "created_at";
32098
+ tableName: "flux_product_delivery_category_map";
32099
+ dataType: "date";
32100
+ columnType: "PgTimestamp";
32101
+ data: Date;
32102
+ driverParam: string;
32103
+ notNull: true;
32104
+ hasDefault: true;
32105
+ isPrimaryKey: false;
32106
+ isAutoincrement: false;
32107
+ hasRuntimeDefault: false;
32108
+ enumValues: undefined;
32109
+ baseColumn: never;
32110
+ identity: undefined;
32111
+ generated: undefined;
32112
+ }, {}, {}>;
32113
+ };
32114
+ dialect: "pg";
32115
+ }>;
32116
+ export declare const fluxProductDeliveryCategoryMapRelations: import("drizzle-orm").Relations<"flux_product_delivery_category_map", {
32117
+ account: import("drizzle-orm").One<"flux_client_accounts", false>;
32118
+ }>;
32119
+ export type FluxProductDeliveryCategoryMap = typeof fluxProductDeliveryCategoryMap.$inferSelect;
32120
+ export type NewFluxProductDeliveryCategoryMap = typeof fluxProductDeliveryCategoryMap.$inferInsert;
31396
32121
  export {};
31397
32122
  //# sourceMappingURL=schema.d.ts.map