@memberjunction/core-entities 5.32.0 → 5.34.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.
@@ -1793,6 +1793,68 @@ export declare const MJAIAgentRunSchema: z.ZodObject<{
1793
1793
  RootLastRunID?: string;
1794
1794
  }>;
1795
1795
  export type MJAIAgentRunEntityType = z.infer<typeof MJAIAgentRunSchema>;
1796
+ /**
1797
+ * zod schema definition for the entity MJ: AI Agent Search Scopes
1798
+ */
1799
+ export declare const MJAIAgentSearchScopeSchema: z.ZodObject<{
1800
+ ID: z.ZodString;
1801
+ AgentID: z.ZodString;
1802
+ SearchScopeID: z.ZodString;
1803
+ Phase: z.ZodUnion<[z.ZodLiteral<"AgentInvoked">, z.ZodLiteral<"Both">, z.ZodLiteral<"PreExecution">]>;
1804
+ Status: z.ZodUnion<[z.ZodLiteral<"Active">, z.ZodLiteral<"Inactive">]>;
1805
+ StartAt: z.ZodNullable<z.ZodDate>;
1806
+ EndAt: z.ZodNullable<z.ZodDate>;
1807
+ Priority: z.ZodNumber;
1808
+ MaxResults: z.ZodNullable<z.ZodNumber>;
1809
+ MinScore: z.ZodNullable<z.ZodNumber>;
1810
+ QueryTemplateID: z.ZodNullable<z.ZodString>;
1811
+ FusionWeightsOverride: z.ZodNullable<z.ZodString>;
1812
+ IsDefault: z.ZodBoolean;
1813
+ __mj_CreatedAt: z.ZodDate;
1814
+ __mj_UpdatedAt: z.ZodDate;
1815
+ Agent: z.ZodNullable<z.ZodString>;
1816
+ SearchScope: z.ZodString;
1817
+ QueryTemplate: z.ZodNullable<z.ZodString>;
1818
+ }, "strip", z.ZodTypeAny, {
1819
+ ID?: string;
1820
+ __mj_CreatedAt?: Date;
1821
+ __mj_UpdatedAt?: Date;
1822
+ Status?: "Active" | "Inactive";
1823
+ AgentID?: string;
1824
+ Agent?: string;
1825
+ Priority?: number;
1826
+ IsDefault?: boolean;
1827
+ SearchScopeID?: string;
1828
+ Phase?: "Both" | "AgentInvoked" | "PreExecution";
1829
+ StartAt?: Date;
1830
+ EndAt?: Date;
1831
+ MaxResults?: number;
1832
+ MinScore?: number;
1833
+ QueryTemplateID?: string;
1834
+ FusionWeightsOverride?: string;
1835
+ SearchScope?: string;
1836
+ QueryTemplate?: string;
1837
+ }, {
1838
+ ID?: string;
1839
+ __mj_CreatedAt?: Date;
1840
+ __mj_UpdatedAt?: Date;
1841
+ Status?: "Active" | "Inactive";
1842
+ AgentID?: string;
1843
+ Agent?: string;
1844
+ Priority?: number;
1845
+ IsDefault?: boolean;
1846
+ SearchScopeID?: string;
1847
+ Phase?: "Both" | "AgentInvoked" | "PreExecution";
1848
+ StartAt?: Date;
1849
+ EndAt?: Date;
1850
+ MaxResults?: number;
1851
+ MinScore?: number;
1852
+ QueryTemplateID?: string;
1853
+ FusionWeightsOverride?: string;
1854
+ SearchScope?: string;
1855
+ QueryTemplate?: string;
1856
+ }>;
1857
+ export type MJAIAgentSearchScopeEntityType = z.infer<typeof MJAIAgentSearchScopeSchema>;
1796
1858
  /**
1797
1859
  * zod schema definition for the entity MJ: AI Agent Step Paths
1798
1860
  */
@@ -2050,6 +2112,7 @@ export declare const MJAIAgentSchema: z.ZodObject<{
2050
2112
  CategoryID: z.ZodNullable<z.ZodString>;
2051
2113
  AllowEphemeralClientTools: z.ZodBoolean;
2052
2114
  DefaultStorageAccountID: z.ZodNullable<z.ZodString>;
2115
+ SearchScopeAccess: z.ZodUnion<[z.ZodLiteral<"All">, z.ZodLiteral<"Assigned">, z.ZodLiteral<"None">]>;
2053
2116
  Parent: z.ZodNullable<z.ZodString>;
2054
2117
  ContextCompressionPrompt: z.ZodNullable<z.ZodString>;
2055
2118
  Type: z.ZodNullable<z.ZodString>;
@@ -2129,6 +2192,7 @@ export declare const MJAIAgentSchema: z.ZodObject<{
2129
2192
  AutoArchiveEnabled?: boolean;
2130
2193
  RerankerConfiguration?: string;
2131
2194
  AllowEphemeralClientTools?: boolean;
2195
+ SearchScopeAccess?: "None" | "All" | "Assigned";
2132
2196
  ContextCompressionPrompt?: string;
2133
2197
  DefaultArtifactType?: string;
2134
2198
  OwnerUser?: string;
@@ -2203,6 +2267,7 @@ export declare const MJAIAgentSchema: z.ZodObject<{
2203
2267
  AutoArchiveEnabled?: boolean;
2204
2268
  RerankerConfiguration?: string;
2205
2269
  AllowEphemeralClientTools?: boolean;
2270
+ SearchScopeAccess?: "None" | "All" | "Assigned";
2206
2271
  ContextCompressionPrompt?: string;
2207
2272
  DefaultArtifactType?: string;
2208
2273
  OwnerUser?: string;
@@ -3600,7 +3665,7 @@ export declare const MJAIResultCacheSchema: z.ZodObject<{
3600
3665
  VendorID: z.ZodNullable<z.ZodString>;
3601
3666
  AgentID: z.ZodNullable<z.ZodString>;
3602
3667
  ConfigurationID: z.ZodNullable<z.ZodString>;
3603
- PromptEmbedding: z.ZodNullable<z.ZodNumber>;
3668
+ PromptEmbedding: z.ZodNullable<z.ZodString>;
3604
3669
  PromptRunID: z.ZodNullable<z.ZodString>;
3605
3670
  AIPrompt: z.ZodString;
3606
3671
  AIModel: z.ZodString;
@@ -3628,7 +3693,7 @@ export declare const MJAIResultCacheSchema: z.ZodObject<{
3628
3693
  PromptText?: string;
3629
3694
  ResultText?: string;
3630
3695
  ExpiredOn?: Date;
3631
- PromptEmbedding?: number;
3696
+ PromptEmbedding?: string;
3632
3697
  AIPrompt?: string;
3633
3698
  }, {
3634
3699
  ID?: string;
@@ -3650,7 +3715,7 @@ export declare const MJAIResultCacheSchema: z.ZodObject<{
3650
3715
  PromptText?: string;
3651
3716
  ResultText?: string;
3652
3717
  ExpiredOn?: Date;
3653
- PromptEmbedding?: number;
3718
+ PromptEmbedding?: string;
3654
3719
  AIPrompt?: string;
3655
3720
  }>;
3656
3721
  export type MJAIResultCacheEntityType = z.infer<typeof MJAIResultCacheSchema>;
@@ -8906,10 +8971,11 @@ export declare const MJEntityFieldSchema: z.ZodObject<{
8906
8971
  JSONType: z.ZodNullable<z.ZodString>;
8907
8972
  JSONTypeIsArray: z.ZodBoolean;
8908
8973
  JSONTypeDefinition: z.ZodNullable<z.ZodString>;
8909
- UserSearchPredicateAPI: z.ZodString;
8974
+ UserSearchPredicateAPI: z.ZodUnion<[z.ZodLiteral<"BeginsWith">, z.ZodLiteral<"Contains">, z.ZodLiteral<"EndsWith">, z.ZodLiteral<"Exact">]>;
8910
8975
  AutoUpdateUserSearchPredicate: z.ZodBoolean;
8911
8976
  AutoUpdateFullTextSearch: z.ZodBoolean;
8912
8977
  AutoUpdateExtendedType: z.ZodBoolean;
8978
+ IsComputed: z.ZodBoolean;
8913
8979
  FieldCodeName: z.ZodNullable<z.ZodString>;
8914
8980
  Entity: z.ZodString;
8915
8981
  SchemaName: z.ZodString;
@@ -8990,9 +9056,10 @@ export declare const MJEntityFieldSchema: z.ZodObject<{
8990
9056
  JSONType?: string;
8991
9057
  JSONTypeIsArray?: boolean;
8992
9058
  JSONTypeDefinition?: string;
8993
- UserSearchPredicateAPI?: string;
9059
+ UserSearchPredicateAPI?: "Exact" | "BeginsWith" | "Contains" | "EndsWith";
8994
9060
  AutoUpdateUserSearchPredicate?: boolean;
8995
9061
  AutoUpdateExtendedType?: boolean;
9062
+ IsComputed?: boolean;
8996
9063
  FieldCodeName?: string;
8997
9064
  RelatedEntity?: string;
8998
9065
  RelatedEntitySchemaName?: string;
@@ -9067,9 +9134,10 @@ export declare const MJEntityFieldSchema: z.ZodObject<{
9067
9134
  JSONType?: string;
9068
9135
  JSONTypeIsArray?: boolean;
9069
9136
  JSONTypeDefinition?: string;
9070
- UserSearchPredicateAPI?: string;
9137
+ UserSearchPredicateAPI?: "Exact" | "BeginsWith" | "Contains" | "EndsWith";
9071
9138
  AutoUpdateUserSearchPredicate?: boolean;
9072
9139
  AutoUpdateExtendedType?: boolean;
9140
+ IsComputed?: boolean;
9073
9141
  FieldCodeName?: string;
9074
9142
  RelatedEntity?: string;
9075
9143
  RelatedEntitySchemaName?: string;
@@ -10265,10 +10333,10 @@ export declare const MJKnowledgeHubSavedSearchSchema: z.ZodObject<{
10265
10333
  __mj_UpdatedAt?: Date;
10266
10334
  Name?: string;
10267
10335
  UserID?: string;
10336
+ MaxResults?: number;
10337
+ MinScore?: number;
10268
10338
  Query?: string;
10269
10339
  Filters?: string;
10270
- MinScore?: number;
10271
- MaxResults?: number;
10272
10340
  NotifyOnNewResults?: boolean;
10273
10341
  }, {
10274
10342
  ID?: string;
@@ -10277,10 +10345,10 @@ export declare const MJKnowledgeHubSavedSearchSchema: z.ZodObject<{
10277
10345
  __mj_UpdatedAt?: Date;
10278
10346
  Name?: string;
10279
10347
  UserID?: string;
10348
+ MaxResults?: number;
10349
+ MinScore?: number;
10280
10350
  Query?: string;
10281
10351
  Filters?: string;
10282
- MinScore?: number;
10283
- MaxResults?: number;
10284
10352
  NotifyOnNewResults?: boolean;
10285
10353
  }>;
10286
10354
  export type MJKnowledgeHubSavedSearchEntityType = z.infer<typeof MJKnowledgeHubSavedSearchSchema>;
@@ -11823,11 +11891,11 @@ export declare const MJQueryFieldSchema: z.ZodObject<{
11823
11891
  DetectionMethod?: "Manual" | "AI";
11824
11892
  QueryID?: string;
11825
11893
  Query?: string;
11894
+ IsComputed?: boolean;
11826
11895
  AutoDetectConfidenceScore?: number;
11827
11896
  SQLBaseType?: string;
11828
11897
  SQLFullType?: string;
11829
11898
  SourceEntityID?: string;
11830
- IsComputed?: boolean;
11831
11899
  ComputationDescription?: string;
11832
11900
  IsSummary?: boolean;
11833
11901
  SummaryDescription?: string;
@@ -11843,11 +11911,11 @@ export declare const MJQueryFieldSchema: z.ZodObject<{
11843
11911
  DetectionMethod?: "Manual" | "AI";
11844
11912
  QueryID?: string;
11845
11913
  Query?: string;
11914
+ IsComputed?: boolean;
11846
11915
  AutoDetectConfidenceScore?: number;
11847
11916
  SQLBaseType?: string;
11848
11917
  SQLFullType?: string;
11849
11918
  SourceEntityID?: string;
11850
- IsComputed?: boolean;
11851
11919
  ComputationDescription?: string;
11852
11920
  IsSummary?: boolean;
11853
11921
  SummaryDescription?: string;
@@ -13217,6 +13285,8 @@ export declare const MJScheduledJobSchema: z.ZodObject<{
13217
13285
  Description?: string;
13218
13286
  Status?: "Active" | "Disabled" | "Pending" | "Expired" | "Paused";
13219
13287
  Configuration?: string;
13288
+ StartAt?: Date;
13289
+ EndAt?: Date;
13220
13290
  OwnerUserID?: string;
13221
13291
  OwnerUser?: string;
13222
13292
  CronExpression?: string;
@@ -13224,8 +13294,6 @@ export declare const MJScheduledJobSchema: z.ZodObject<{
13224
13294
  LockedByInstance?: string;
13225
13295
  Timezone?: string;
13226
13296
  JobTypeID?: string;
13227
- StartAt?: Date;
13228
- EndAt?: Date;
13229
13297
  LastRunAt?: Date;
13230
13298
  NextRunAt?: Date;
13231
13299
  RunCount?: number;
@@ -13249,6 +13317,8 @@ export declare const MJScheduledJobSchema: z.ZodObject<{
13249
13317
  Description?: string;
13250
13318
  Status?: "Active" | "Disabled" | "Pending" | "Expired" | "Paused";
13251
13319
  Configuration?: string;
13320
+ StartAt?: Date;
13321
+ EndAt?: Date;
13252
13322
  OwnerUserID?: string;
13253
13323
  OwnerUser?: string;
13254
13324
  CronExpression?: string;
@@ -13256,8 +13326,6 @@ export declare const MJScheduledJobSchema: z.ZodObject<{
13256
13326
  LockedByInstance?: string;
13257
13327
  Timezone?: string;
13258
13328
  JobTypeID?: string;
13259
- StartAt?: Date;
13260
- EndAt?: Date;
13261
13329
  LastRunAt?: Date;
13262
13330
  NextRunAt?: Date;
13263
13331
  RunCount?: number;
@@ -13313,6 +13381,65 @@ export declare const MJSchemaInfoSchema: z.ZodObject<{
13313
13381
  EntityNameSuffix?: string;
13314
13382
  }>;
13315
13383
  export type MJSchemaInfoEntityType = z.infer<typeof MJSchemaInfoSchema>;
13384
+ /**
13385
+ * zod schema definition for the entity MJ: Search Execution Logs
13386
+ */
13387
+ export declare const MJSearchExecutionLogSchema: z.ZodObject<{
13388
+ ID: z.ZodString;
13389
+ SearchScopeID: z.ZodNullable<z.ZodString>;
13390
+ UserID: z.ZodNullable<z.ZodString>;
13391
+ AIAgentID: z.ZodNullable<z.ZodString>;
13392
+ Query: z.ZodString;
13393
+ TotalDurationMs: z.ZodNumber;
13394
+ ResultCount: z.ZodNumber;
13395
+ RerankerName: z.ZodNullable<z.ZodString>;
13396
+ RerankerCostCents: z.ZodNullable<z.ZodNumber>;
13397
+ Status: z.ZodUnion<[z.ZodLiteral<"Failure">, z.ZodLiteral<"Forbidden">, z.ZodLiteral<"Success">]>;
13398
+ FailureReason: z.ZodNullable<z.ZodString>;
13399
+ ProvidersJSON: z.ZodNullable<z.ZodString>;
13400
+ __mj_CreatedAt: z.ZodDate;
13401
+ __mj_UpdatedAt: z.ZodDate;
13402
+ SearchScope: z.ZodNullable<z.ZodString>;
13403
+ User: z.ZodNullable<z.ZodString>;
13404
+ AIAgent: z.ZodNullable<z.ZodString>;
13405
+ }, "strip", z.ZodTypeAny, {
13406
+ ID?: string;
13407
+ User?: string;
13408
+ __mj_CreatedAt?: Date;
13409
+ __mj_UpdatedAt?: Date;
13410
+ Status?: "Success" | "Failure" | "Forbidden";
13411
+ UserID?: string;
13412
+ SearchScopeID?: string;
13413
+ SearchScope?: string;
13414
+ Query?: string;
13415
+ AIAgentID?: string;
13416
+ TotalDurationMs?: number;
13417
+ ResultCount?: number;
13418
+ RerankerName?: string;
13419
+ RerankerCostCents?: number;
13420
+ FailureReason?: string;
13421
+ ProvidersJSON?: string;
13422
+ AIAgent?: string;
13423
+ }, {
13424
+ ID?: string;
13425
+ User?: string;
13426
+ __mj_CreatedAt?: Date;
13427
+ __mj_UpdatedAt?: Date;
13428
+ Status?: "Success" | "Failure" | "Forbidden";
13429
+ UserID?: string;
13430
+ SearchScopeID?: string;
13431
+ SearchScope?: string;
13432
+ Query?: string;
13433
+ AIAgentID?: string;
13434
+ TotalDurationMs?: number;
13435
+ ResultCount?: number;
13436
+ RerankerName?: string;
13437
+ RerankerCostCents?: number;
13438
+ FailureReason?: string;
13439
+ ProvidersJSON?: string;
13440
+ AIAgent?: string;
13441
+ }>;
13442
+ export type MJSearchExecutionLogEntityType = z.infer<typeof MJSearchExecutionLogSchema>;
13316
13443
  /**
13317
13444
  * zod schema definition for the entity MJ: Search Providers
13318
13445
  */
@@ -13369,6 +13496,290 @@ export declare const MJSearchProviderSchema: z.ZodObject<{
13369
13496
  ProviderConfig?: string;
13370
13497
  }>;
13371
13498
  export type MJSearchProviderEntityType = z.infer<typeof MJSearchProviderSchema>;
13499
+ /**
13500
+ * zod schema definition for the entity MJ: Search Scope Entities
13501
+ */
13502
+ export declare const MJSearchScopeEntitySchema: z.ZodObject<{
13503
+ ID: z.ZodString;
13504
+ SearchScopeID: z.ZodString;
13505
+ EntityID: z.ZodString;
13506
+ ExtraFilter: z.ZodNullable<z.ZodString>;
13507
+ UserSearchString: z.ZodNullable<z.ZodString>;
13508
+ __mj_CreatedAt: z.ZodDate;
13509
+ __mj_UpdatedAt: z.ZodDate;
13510
+ SearchScope: z.ZodString;
13511
+ Entity: z.ZodString;
13512
+ }, "strip", z.ZodTypeAny, {
13513
+ ID?: string;
13514
+ EntityID?: string;
13515
+ __mj_CreatedAt?: Date;
13516
+ __mj_UpdatedAt?: Date;
13517
+ Entity?: string;
13518
+ ExtraFilter?: string;
13519
+ SearchScopeID?: string;
13520
+ SearchScope?: string;
13521
+ UserSearchString?: string;
13522
+ }, {
13523
+ ID?: string;
13524
+ EntityID?: string;
13525
+ __mj_CreatedAt?: Date;
13526
+ __mj_UpdatedAt?: Date;
13527
+ Entity?: string;
13528
+ ExtraFilter?: string;
13529
+ SearchScopeID?: string;
13530
+ SearchScope?: string;
13531
+ UserSearchString?: string;
13532
+ }>;
13533
+ export type MJSearchScopeEntityEntityType = z.infer<typeof MJSearchScopeEntitySchema>;
13534
+ /**
13535
+ * zod schema definition for the entity MJ: Search Scope External Indexes
13536
+ */
13537
+ export declare const MJSearchScopeExternalIndexSchema: z.ZodObject<{
13538
+ ID: z.ZodString;
13539
+ SearchScopeID: z.ZodString;
13540
+ IndexType: z.ZodUnion<[z.ZodLiteral<"AzureAISearch">, z.ZodLiteral<"Elasticsearch">, z.ZodLiteral<"OpenSearch">, z.ZodLiteral<"Other">, z.ZodLiteral<"Typesense">, z.ZodLiteral<"Vector">]>;
13541
+ VectorIndexID: z.ZodNullable<z.ZodString>;
13542
+ ExternalIndexName: z.ZodNullable<z.ZodString>;
13543
+ ExternalIndexConfig: z.ZodNullable<z.ZodString>;
13544
+ MetadataFilter: z.ZodNullable<z.ZodString>;
13545
+ __mj_CreatedAt: z.ZodDate;
13546
+ __mj_UpdatedAt: z.ZodDate;
13547
+ SearchScope: z.ZodString;
13548
+ VectorIndex: z.ZodNullable<z.ZodString>;
13549
+ }, "strip", z.ZodTypeAny, {
13550
+ ID?: string;
13551
+ __mj_CreatedAt?: Date;
13552
+ __mj_UpdatedAt?: Date;
13553
+ SearchScopeID?: string;
13554
+ SearchScope?: string;
13555
+ VectorIndexID?: string;
13556
+ VectorIndex?: string;
13557
+ IndexType?: "Other" | "Vector" | "AzureAISearch" | "Elasticsearch" | "OpenSearch" | "Typesense";
13558
+ ExternalIndexName?: string;
13559
+ ExternalIndexConfig?: string;
13560
+ MetadataFilter?: string;
13561
+ }, {
13562
+ ID?: string;
13563
+ __mj_CreatedAt?: Date;
13564
+ __mj_UpdatedAt?: Date;
13565
+ SearchScopeID?: string;
13566
+ SearchScope?: string;
13567
+ VectorIndexID?: string;
13568
+ VectorIndex?: string;
13569
+ IndexType?: "Other" | "Vector" | "AzureAISearch" | "Elasticsearch" | "OpenSearch" | "Typesense";
13570
+ ExternalIndexName?: string;
13571
+ ExternalIndexConfig?: string;
13572
+ MetadataFilter?: string;
13573
+ }>;
13574
+ export type MJSearchScopeExternalIndexEntityType = z.infer<typeof MJSearchScopeExternalIndexSchema>;
13575
+ /**
13576
+ * zod schema definition for the entity MJ: Search Scope Permissions
13577
+ */
13578
+ export declare const MJSearchScopePermissionSchema: z.ZodObject<{
13579
+ ID: z.ZodString;
13580
+ SearchScopeID: z.ZodString;
13581
+ UserID: z.ZodNullable<z.ZodString>;
13582
+ RoleID: z.ZodNullable<z.ZodString>;
13583
+ PermissionLevel: z.ZodUnion<[z.ZodLiteral<"Manage">, z.ZodLiteral<"None">, z.ZodLiteral<"Read">, z.ZodLiteral<"Search">]>;
13584
+ __mj_CreatedAt: z.ZodDate;
13585
+ __mj_UpdatedAt: z.ZodDate;
13586
+ SearchScope: z.ZodString;
13587
+ User: z.ZodNullable<z.ZodString>;
13588
+ Role: z.ZodNullable<z.ZodString>;
13589
+ }, "strip", z.ZodTypeAny, {
13590
+ ID?: string;
13591
+ Role?: string;
13592
+ User?: string;
13593
+ __mj_CreatedAt?: Date;
13594
+ __mj_UpdatedAt?: Date;
13595
+ UserID?: string;
13596
+ RoleID?: string;
13597
+ SearchScopeID?: string;
13598
+ SearchScope?: string;
13599
+ PermissionLevel?: "None" | "Search" | "Read" | "Manage";
13600
+ }, {
13601
+ ID?: string;
13602
+ Role?: string;
13603
+ User?: string;
13604
+ __mj_CreatedAt?: Date;
13605
+ __mj_UpdatedAt?: Date;
13606
+ UserID?: string;
13607
+ RoleID?: string;
13608
+ SearchScopeID?: string;
13609
+ SearchScope?: string;
13610
+ PermissionLevel?: "None" | "Search" | "Read" | "Manage";
13611
+ }>;
13612
+ export type MJSearchScopePermissionEntityType = z.infer<typeof MJSearchScopePermissionSchema>;
13613
+ /**
13614
+ * zod schema definition for the entity MJ: Search Scope Providers
13615
+ */
13616
+ export declare const MJSearchScopeProviderSchema: z.ZodObject<{
13617
+ ID: z.ZodString;
13618
+ SearchScopeID: z.ZodString;
13619
+ SearchProviderID: z.ZodString;
13620
+ Enabled: z.ZodBoolean;
13621
+ MaxResultsOverride: z.ZodNullable<z.ZodNumber>;
13622
+ ProviderConfigOverride: z.ZodNullable<z.ZodString>;
13623
+ QueryTransformTemplateID: z.ZodNullable<z.ZodString>;
13624
+ __mj_CreatedAt: z.ZodDate;
13625
+ __mj_UpdatedAt: z.ZodDate;
13626
+ SearchScope: z.ZodString;
13627
+ SearchProvider: z.ZodString;
13628
+ QueryTransformTemplate: z.ZodNullable<z.ZodString>;
13629
+ }, "strip", z.ZodTypeAny, {
13630
+ ID?: string;
13631
+ __mj_CreatedAt?: Date;
13632
+ __mj_UpdatedAt?: Date;
13633
+ SearchScopeID?: string;
13634
+ SearchScope?: string;
13635
+ MaxResultsOverride?: number;
13636
+ SearchProviderID?: string;
13637
+ Enabled?: boolean;
13638
+ ProviderConfigOverride?: string;
13639
+ QueryTransformTemplateID?: string;
13640
+ SearchProvider?: string;
13641
+ QueryTransformTemplate?: string;
13642
+ }, {
13643
+ ID?: string;
13644
+ __mj_CreatedAt?: Date;
13645
+ __mj_UpdatedAt?: Date;
13646
+ SearchScopeID?: string;
13647
+ SearchScope?: string;
13648
+ MaxResultsOverride?: number;
13649
+ SearchProviderID?: string;
13650
+ Enabled?: boolean;
13651
+ ProviderConfigOverride?: string;
13652
+ QueryTransformTemplateID?: string;
13653
+ SearchProvider?: string;
13654
+ QueryTransformTemplate?: string;
13655
+ }>;
13656
+ export type MJSearchScopeProviderEntityType = z.infer<typeof MJSearchScopeProviderSchema>;
13657
+ /**
13658
+ * zod schema definition for the entity MJ: Search Scope Storage Accounts
13659
+ */
13660
+ export declare const MJSearchScopeStorageAccountSchema: z.ZodObject<{
13661
+ ID: z.ZodString;
13662
+ SearchScopeID: z.ZodString;
13663
+ FileStorageAccountID: z.ZodString;
13664
+ FolderPath: z.ZodNullable<z.ZodString>;
13665
+ __mj_CreatedAt: z.ZodDate;
13666
+ __mj_UpdatedAt: z.ZodDate;
13667
+ SearchScope: z.ZodString;
13668
+ FileStorageAccount: z.ZodString;
13669
+ }, "strip", z.ZodTypeAny, {
13670
+ ID?: string;
13671
+ __mj_CreatedAt?: Date;
13672
+ __mj_UpdatedAt?: Date;
13673
+ SearchScopeID?: string;
13674
+ SearchScope?: string;
13675
+ FileStorageAccountID?: string;
13676
+ FileStorageAccount?: string;
13677
+ FolderPath?: string;
13678
+ }, {
13679
+ ID?: string;
13680
+ __mj_CreatedAt?: Date;
13681
+ __mj_UpdatedAt?: Date;
13682
+ SearchScopeID?: string;
13683
+ SearchScope?: string;
13684
+ FileStorageAccountID?: string;
13685
+ FileStorageAccount?: string;
13686
+ FolderPath?: string;
13687
+ }>;
13688
+ export type MJSearchScopeStorageAccountEntityType = z.infer<typeof MJSearchScopeStorageAccountSchema>;
13689
+ /**
13690
+ * zod schema definition for the entity MJ: Search Scope Test Queries
13691
+ */
13692
+ export declare const MJSearchScopeTestQuerySchema: z.ZodObject<{
13693
+ ID: z.ZodString;
13694
+ SearchScopeID: z.ZodString;
13695
+ Label: z.ZodString;
13696
+ Query: z.ZodString;
13697
+ ExpectedTopResultEntity: z.ZodNullable<z.ZodString>;
13698
+ ExpectedTopResultRecordID: z.ZodNullable<z.ZodString>;
13699
+ Notes: z.ZodNullable<z.ZodString>;
13700
+ __mj_CreatedAt: z.ZodDate;
13701
+ __mj_UpdatedAt: z.ZodDate;
13702
+ SearchScope: z.ZodString;
13703
+ }, "strip", z.ZodTypeAny, {
13704
+ ID?: string;
13705
+ __mj_CreatedAt?: Date;
13706
+ __mj_UpdatedAt?: Date;
13707
+ Label?: string;
13708
+ SearchScopeID?: string;
13709
+ SearchScope?: string;
13710
+ Notes?: string;
13711
+ Query?: string;
13712
+ ExpectedTopResultEntity?: string;
13713
+ ExpectedTopResultRecordID?: string;
13714
+ }, {
13715
+ ID?: string;
13716
+ __mj_CreatedAt?: Date;
13717
+ __mj_UpdatedAt?: Date;
13718
+ Label?: string;
13719
+ SearchScopeID?: string;
13720
+ SearchScope?: string;
13721
+ Notes?: string;
13722
+ Query?: string;
13723
+ ExpectedTopResultEntity?: string;
13724
+ ExpectedTopResultRecordID?: string;
13725
+ }>;
13726
+ export type MJSearchScopeTestQueryEntityType = z.infer<typeof MJSearchScopeTestQuerySchema>;
13727
+ /**
13728
+ * zod schema definition for the entity MJ: Search Scopes
13729
+ */
13730
+ export declare const MJSearchScopeSchema: z.ZodObject<{
13731
+ ID: z.ZodString;
13732
+ Name: z.ZodString;
13733
+ Description: z.ZodNullable<z.ZodString>;
13734
+ Icon: z.ZodNullable<z.ZodString>;
13735
+ IsGlobal: z.ZodBoolean;
13736
+ IsDefault: z.ZodBoolean;
13737
+ OwnerUserID: z.ZodNullable<z.ZodString>;
13738
+ Status: z.ZodUnion<[z.ZodLiteral<"Active">, z.ZodLiteral<"Inactive">]>;
13739
+ StartAt: z.ZodNullable<z.ZodDate>;
13740
+ EndAt: z.ZodNullable<z.ZodDate>;
13741
+ ScopeConfig: z.ZodNullable<z.ZodString>;
13742
+ SearchContextConfig: z.ZodNullable<z.ZodString>;
13743
+ RerankerBudgetCents: z.ZodNullable<z.ZodNumber>;
13744
+ __mj_CreatedAt: z.ZodDate;
13745
+ __mj_UpdatedAt: z.ZodDate;
13746
+ OwnerUser: z.ZodNullable<z.ZodString>;
13747
+ }, "strip", z.ZodTypeAny, {
13748
+ ID?: string;
13749
+ __mj_CreatedAt?: Date;
13750
+ __mj_UpdatedAt?: Date;
13751
+ Name?: string;
13752
+ Description?: string;
13753
+ Status?: "Active" | "Inactive";
13754
+ IsDefault?: boolean;
13755
+ Icon?: string;
13756
+ StartAt?: Date;
13757
+ EndAt?: Date;
13758
+ OwnerUserID?: string;
13759
+ ScopeConfig?: string;
13760
+ OwnerUser?: string;
13761
+ IsGlobal?: boolean;
13762
+ SearchContextConfig?: string;
13763
+ RerankerBudgetCents?: number;
13764
+ }, {
13765
+ ID?: string;
13766
+ __mj_CreatedAt?: Date;
13767
+ __mj_UpdatedAt?: Date;
13768
+ Name?: string;
13769
+ Description?: string;
13770
+ Status?: "Active" | "Inactive";
13771
+ IsDefault?: boolean;
13772
+ Icon?: string;
13773
+ StartAt?: Date;
13774
+ EndAt?: Date;
13775
+ OwnerUserID?: string;
13776
+ ScopeConfig?: string;
13777
+ OwnerUser?: string;
13778
+ IsGlobal?: boolean;
13779
+ SearchContextConfig?: string;
13780
+ RerankerBudgetCents?: number;
13781
+ }>;
13782
+ export type MJSearchScopeEntityType = z.infer<typeof MJSearchScopeSchema>;
13372
13783
  /**
13373
13784
  * zod schema definition for the entity MJ: Skills
13374
13785
  */
@@ -13770,8 +14181,8 @@ export declare const MJTagSchema: z.ZodObject<{
13770
14181
  EmbeddingVector?: string;
13771
14182
  EmbeddingModelID?: string;
13772
14183
  EmbeddingModel?: string;
13773
- MergedIntoTagID?: string;
13774
14184
  IsGlobal?: boolean;
14185
+ MergedIntoTagID?: string;
13775
14186
  AllowAutoGrow?: boolean;
13776
14187
  IsFrozen?: boolean;
13777
14188
  MaxChildren?: number;
@@ -13794,8 +14205,8 @@ export declare const MJTagSchema: z.ZodObject<{
13794
14205
  EmbeddingVector?: string;
13795
14206
  EmbeddingModelID?: string;
13796
14207
  EmbeddingModel?: string;
13797
- MergedIntoTagID?: string;
13798
14208
  IsGlobal?: boolean;
14209
+ MergedIntoTagID?: string;
13799
14210
  AllowAutoGrow?: boolean;
13800
14211
  IsFrozen?: boolean;
13801
14212
  MaxChildren?: number;
@@ -14850,11 +15261,11 @@ export declare const MJUserNotificationPreferenceSchema: z.ZodObject<{
14850
15261
  __mj_CreatedAt?: Date;
14851
15262
  __mj_UpdatedAt?: Date;
14852
15263
  UserID?: string;
15264
+ Enabled?: boolean;
14853
15265
  NotificationTypeID?: string;
14854
15266
  InAppEnabled?: boolean;
14855
15267
  EmailEnabled?: boolean;
14856
15268
  SMSEnabled?: boolean;
14857
- Enabled?: boolean;
14858
15269
  NotificationType?: string;
14859
15270
  }, {
14860
15271
  ID?: string;
@@ -14862,11 +15273,11 @@ export declare const MJUserNotificationPreferenceSchema: z.ZodObject<{
14862
15273
  __mj_CreatedAt?: Date;
14863
15274
  __mj_UpdatedAt?: Date;
14864
15275
  UserID?: string;
15276
+ Enabled?: boolean;
14865
15277
  NotificationTypeID?: string;
14866
15278
  InAppEnabled?: boolean;
14867
15279
  EmailEnabled?: boolean;
14868
15280
  SMSEnabled?: boolean;
14869
- Enabled?: boolean;
14870
15281
  NotificationType?: string;
14871
15282
  }>;
14872
15283
  export type MJUserNotificationPreferenceEntityType = z.infer<typeof MJUserNotificationPreferenceSchema>;
@@ -21229,6 +21640,181 @@ each time the agent processes a prompt step.
21229
21640
  */
21230
21641
  get RootLastRunID(): string | null;
21231
21642
  }
21643
+ /**
21644
+ * MJ: AI Agent Search Scopes - strongly typed entity sub-class
21645
+ * * Schema: __mj
21646
+ * * Base Table: AIAgentSearchScope
21647
+ * * Base View: vwAIAgentSearchScopes
21648
+ * * @description Many-to-many between agents and search scopes, with phase and scheduling control. Drives both pre-execution RAG and agent-invoked scoped search.
21649
+ * * Primary Key: ID
21650
+ * @extends {BaseEntity}
21651
+ * @class
21652
+ * @public
21653
+ */
21654
+ export declare class MJAIAgentSearchScopeEntity extends BaseEntity<MJAIAgentSearchScopeEntityType> {
21655
+ /**
21656
+ * Loads the MJ: AI Agent Search Scopes record from the database
21657
+ * @param ID: string - primary key value to load the MJ: AI Agent Search Scopes record.
21658
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
21659
+ * @returns {Promise<boolean>} - true if successful, false otherwise
21660
+ * @public
21661
+ * @async
21662
+ * @memberof MJAIAgentSearchScopeEntity
21663
+ * @method
21664
+ * @override
21665
+ */
21666
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
21667
+ /**
21668
+ * * Field Name: ID
21669
+ * * Display Name: ID
21670
+ * * SQL Data Type: uniqueidentifier
21671
+ * * Default Value: newsequentialid()
21672
+ */
21673
+ get ID(): string;
21674
+ set ID(value: string);
21675
+ /**
21676
+ * * Field Name: AgentID
21677
+ * * Display Name: Agent
21678
+ * * SQL Data Type: uniqueidentifier
21679
+ * * Related Entity/Foreign Key: MJ: AI Agents (vwAIAgents.ID)
21680
+ */
21681
+ get AgentID(): string;
21682
+ set AgentID(value: string);
21683
+ /**
21684
+ * * Field Name: SearchScopeID
21685
+ * * Display Name: Search Scope
21686
+ * * SQL Data Type: uniqueidentifier
21687
+ * * Related Entity/Foreign Key: MJ: Search Scopes (vwSearchScopes.ID)
21688
+ */
21689
+ get SearchScopeID(): string;
21690
+ set SearchScopeID(value: string);
21691
+ /**
21692
+ * * Field Name: Phase
21693
+ * * Display Name: Execution Phase
21694
+ * * SQL Data Type: nvarchar(20)
21695
+ * * Default Value: Both
21696
+ * * Value List Type: List
21697
+ * * Possible Values
21698
+ * * AgentInvoked
21699
+ * * Both
21700
+ * * PreExecution
21701
+ * * Description: When this scope is used: PreExecution (injected as retrieved context before the agent runs), AgentInvoked (callable via the scoped search Action), or Both.
21702
+ */
21703
+ get Phase(): 'AgentInvoked' | 'Both' | 'PreExecution';
21704
+ set Phase(value: 'AgentInvoked' | 'Both' | 'PreExecution');
21705
+ /**
21706
+ * * Field Name: Status
21707
+ * * Display Name: Status
21708
+ * * SQL Data Type: nvarchar(20)
21709
+ * * Default Value: Active
21710
+ * * Value List Type: List
21711
+ * * Possible Values
21712
+ * * Active
21713
+ * * Inactive
21714
+ * * Description: Lifecycle status. Only Active rows are considered at runtime.
21715
+ */
21716
+ get Status(): 'Active' | 'Inactive';
21717
+ set Status(value: 'Active' | 'Inactive');
21718
+ /**
21719
+ * * Field Name: StartAt
21720
+ * * Display Name: Start At
21721
+ * * SQL Data Type: datetimeoffset
21722
+ * * Description: Time-windowed activation for this agent-scope assignment. NULL = immediately active.
21723
+ */
21724
+ get StartAt(): Date | null;
21725
+ set StartAt(value: Date | null);
21726
+ /**
21727
+ * * Field Name: EndAt
21728
+ * * Display Name: End At
21729
+ * * SQL Data Type: datetimeoffset
21730
+ * * Description: Time-windowed deactivation for this agent-scope assignment. NULL = no expiry.
21731
+ */
21732
+ get EndAt(): Date | null;
21733
+ set EndAt(value: Date | null);
21734
+ /**
21735
+ * * Field Name: Priority
21736
+ * * Display Name: Priority
21737
+ * * SQL Data Type: int
21738
+ * * Default Value: 100
21739
+ * * Description: Ordering within Phase. Lower = higher priority. Used for pre-execution ordering and as default preference for agent-invoked scope selection.
21740
+ */
21741
+ get Priority(): number;
21742
+ set Priority(value: number);
21743
+ /**
21744
+ * * Field Name: MaxResults
21745
+ * * Display Name: Max Results
21746
+ * * SQL Data Type: int
21747
+ * * Description: Override max results for this scope when used by this agent. NULL = use scope/engine default.
21748
+ */
21749
+ get MaxResults(): number | null;
21750
+ set MaxResults(value: number | null);
21751
+ /**
21752
+ * * Field Name: MinScore
21753
+ * * Display Name: Minimum Score
21754
+ * * SQL Data Type: decimal(5, 4)
21755
+ * * Description: Override min score threshold (0.0000–1.0000). NULL = use engine default.
21756
+ */
21757
+ get MinScore(): number | null;
21758
+ set MinScore(value: number | null);
21759
+ /**
21760
+ * * Field Name: QueryTemplateID
21761
+ * * Display Name: Query Template
21762
+ * * SQL Data Type: uniqueidentifier
21763
+ * * Related Entity/Foreign Key: MJ: Templates (vwTemplates.ID)
21764
+ * * Description: FK to Templates. MJ Template used to generate the search query from conversation context (lastUserMessage, recentMessages, payload, etc.). NULL = use lastUserMessage as-is. Can be further specialized per-provider via SearchScopeProvider.QueryTransformTemplateID.
21765
+ */
21766
+ get QueryTemplateID(): string | null;
21767
+ set QueryTemplateID(value: string | null);
21768
+ /**
21769
+ * * Field Name: FusionWeightsOverride
21770
+ * * Display Name: Fusion Weights Override
21771
+ * * SQL Data Type: nvarchar(MAX)
21772
+ * * Description: JSON override for RRF per-provider fusion weights when this agent uses this scope. Resolution order: AIAgentSearchScope.FusionWeightsOverride > SearchScope.ScopeConfig.fusionWeights > engine defaults. Example: { "vector": 2.0, "fulltext": 1.0, "entity": 1.0 }.
21773
+ */
21774
+ get FusionWeightsOverride(): string | null;
21775
+ set FusionWeightsOverride(value: string | null);
21776
+ /**
21777
+ * * Field Name: IsDefault
21778
+ * * Display Name: Is Default Scope
21779
+ * * SQL Data Type: bit
21780
+ * * Default Value: 0
21781
+ * * Description: If true, this is the agent's default scope when no scope is specified in a tool call.
21782
+ */
21783
+ get IsDefault(): boolean;
21784
+ set IsDefault(value: boolean);
21785
+ /**
21786
+ * * Field Name: __mj_CreatedAt
21787
+ * * Display Name: Created At
21788
+ * * SQL Data Type: datetimeoffset
21789
+ * * Default Value: getutcdate()
21790
+ */
21791
+ get __mj_CreatedAt(): Date;
21792
+ /**
21793
+ * * Field Name: __mj_UpdatedAt
21794
+ * * Display Name: Updated At
21795
+ * * SQL Data Type: datetimeoffset
21796
+ * * Default Value: getutcdate()
21797
+ */
21798
+ get __mj_UpdatedAt(): Date;
21799
+ /**
21800
+ * * Field Name: Agent
21801
+ * * Display Name: Agent Name
21802
+ * * SQL Data Type: nvarchar(255)
21803
+ */
21804
+ get Agent(): string | null;
21805
+ /**
21806
+ * * Field Name: SearchScope
21807
+ * * Display Name: Search Scope Name
21808
+ * * SQL Data Type: nvarchar(200)
21809
+ */
21810
+ get SearchScope(): string;
21811
+ /**
21812
+ * * Field Name: QueryTemplate
21813
+ * * Display Name: Query Template Name
21814
+ * * SQL Data Type: nvarchar(255)
21815
+ */
21816
+ get QueryTemplate(): string | null;
21817
+ }
21232
21818
  /**
21233
21819
  * MJ: AI Agent Step Paths - strongly typed entity sub-class
21234
21820
  * * Schema: __mj
@@ -21942,7 +22528,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
21942
22528
  get __mj_UpdatedAt(): Date;
21943
22529
  /**
21944
22530
  * * Field Name: ParentID
21945
- * * Display Name: Parent
22531
+ * * Display Name: Parent Agent
21946
22532
  * * SQL Data Type: uniqueidentifier
21947
22533
  * * Related Entity/Foreign Key: MJ: AI Agents (vwAIAgents.ID)
21948
22534
  * * Description: References the parent agent in the hierarchical structure. If NULL, this is a root (top-level) agent.
@@ -21991,7 +22577,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
21991
22577
  set EnableContextCompression(value: boolean);
21992
22578
  /**
21993
22579
  * * Field Name: ContextCompressionMessageThreshold
21994
- * * Display Name: Context Compression Message Threshold
22580
+ * * Display Name: Message Threshold
21995
22581
  * * SQL Data Type: int
21996
22582
  * * Description: Number of messages that triggers context compression when EnableContextCompression is true.
21997
22583
  */
@@ -21999,7 +22585,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
21999
22585
  set ContextCompressionMessageThreshold(value: number | null);
22000
22586
  /**
22001
22587
  * * Field Name: ContextCompressionPromptID
22002
- * * Display Name: Context Compression Prompt
22588
+ * * Display Name: Compression Prompt
22003
22589
  * * SQL Data Type: uniqueidentifier
22004
22590
  * * Related Entity/Foreign Key: MJ: AI Prompts (vwAIPrompts.ID)
22005
22591
  */
@@ -22007,7 +22593,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
22007
22593
  set ContextCompressionPromptID(value: string | null);
22008
22594
  /**
22009
22595
  * * Field Name: ContextCompressionMessageRetentionCount
22010
- * * Display Name: Context Compression Message Retention Count
22596
+ * * Display Name: Retention Count
22011
22597
  * * SQL Data Type: int
22012
22598
  * * Description: Number of recent messages to keep uncompressed when context compression is applied.
22013
22599
  */
@@ -22015,7 +22601,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
22015
22601
  set ContextCompressionMessageRetentionCount(value: number | null);
22016
22602
  /**
22017
22603
  * * Field Name: TypeID
22018
- * * Display Name: Type
22604
+ * * Display Name: Agent Type
22019
22605
  * * SQL Data Type: uniqueidentifier
22020
22606
  * * Related Entity/Foreign Key: MJ: AI Agent Types (vwAIAgentTypes.ID)
22021
22607
  * * Description: Reference to the AIAgentType that defines the category and system-level behavior for this agent. Cannot be null.
@@ -22067,7 +22653,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
22067
22653
  set ModelSelectionMode(value: 'Agent' | 'Agent Type');
22068
22654
  /**
22069
22655
  * * Field Name: PayloadDownstreamPaths
22070
- * * Display Name: Payload Downstream Paths
22656
+ * * Display Name: Downstream Paths
22071
22657
  * * SQL Data Type: nvarchar(MAX)
22072
22658
  * * Default Value: ["*"]
22073
22659
  * * Description: JSON array of paths that define which parts of the payload should be sent downstream to sub-agents. Use ["*"] to send entire payload, or specify paths like ["customer.id", "campaign.*", "analysis.sentiment"]
@@ -22076,7 +22662,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
22076
22662
  set PayloadDownstreamPaths(value: string);
22077
22663
  /**
22078
22664
  * * Field Name: PayloadUpstreamPaths
22079
- * * Display Name: Payload Upstream Paths
22665
+ * * Display Name: Upstream Paths
22080
22666
  * * SQL Data Type: nvarchar(MAX)
22081
22667
  * * Default Value: ["*"]
22082
22668
  * * Description: JSON array of paths that define which parts of the payload sub-agents are allowed to write back upstream. Use ["*"] to allow all writes, or specify paths like ["analysis.results", "recommendations.*"]
@@ -22085,7 +22671,7 @@ export declare class MJAIAgentEntity extends BaseEntity<MJAIAgentEntityType> {
22085
22671
  set PayloadUpstreamPaths(value: string);
22086
22672
  /**
22087
22673
  * * Field Name: PayloadSelfReadPaths
22088
- * * Display Name: Payload Self Read Paths
22674
+ * * Display Name: Self Read Paths
22089
22675
  * * SQL Data Type: nvarchar(MAX)
22090
22676
  * * Description: JSON array of paths that specify what parts of the payload the agent's own prompt can read. Controls downstream data
22091
22677
  flow when the agent executes its own prompt step.
@@ -22094,7 +22680,7 @@ flow when the agent executes its own prompt step.
22094
22680
  set PayloadSelfReadPaths(value: string | null);
22095
22681
  /**
22096
22682
  * * Field Name: PayloadSelfWritePaths
22097
- * * Display Name: Payload Self Write Paths
22683
+ * * Display Name: Self Write Paths
22098
22684
  * * SQL Data Type: nvarchar(MAX)
22099
22685
  * * Description: JSON array of paths that specify what parts of the payload the agent's own prompt can write back. Controls upstream
22100
22686
  data flow when the agent executes its own prompt step.
@@ -22119,7 +22705,7 @@ data flow when the agent executes its own prompt step.
22119
22705
  set FinalPayloadValidation(value: string | null);
22120
22706
  /**
22121
22707
  * * Field Name: FinalPayloadValidationMode
22122
- * * Display Name: Final Payload Validation Mode
22708
+ * * Display Name: Final Validation Mode
22123
22709
  * * SQL Data Type: nvarchar(25)
22124
22710
  * * Default Value: Retry
22125
22711
  * * Value List Type: List
@@ -22133,7 +22719,7 @@ data flow when the agent executes its own prompt step.
22133
22719
  set FinalPayloadValidationMode(value: 'Fail' | 'Retry' | 'Warn');
22134
22720
  /**
22135
22721
  * * Field Name: FinalPayloadValidationMaxRetries
22136
- * * Display Name: Final Payload Validation Max Retries
22722
+ * * Display Name: Max Validation Retries
22137
22723
  * * SQL Data Type: int
22138
22724
  * * Default Value: 3
22139
22725
  * * Description: Maximum number of retry attempts allowed when FinalPayloadValidation fails with
@@ -22203,7 +22789,7 @@ if this limit is exceeded.
22203
22789
  set StartingPayloadValidation(value: string | null);
22204
22790
  /**
22205
22791
  * * Field Name: StartingPayloadValidationMode
22206
- * * Display Name: Starting Payload Validation Mode
22792
+ * * Display Name: Starting Validation Mode
22207
22793
  * * SQL Data Type: nvarchar(25)
22208
22794
  * * Default Value: Fail
22209
22795
  * * Value List Type: List
@@ -22216,7 +22802,7 @@ if this limit is exceeded.
22216
22802
  set StartingPayloadValidationMode(value: 'Fail' | 'Warn');
22217
22803
  /**
22218
22804
  * * Field Name: DefaultPromptEffortLevel
22219
- * * Display Name: Default Prompt Effort Level
22805
+ * * Display Name: Default Effort Level
22220
22806
  * * SQL Data Type: int
22221
22807
  * * Description: Default effort level for all prompts executed by this agent (1-100, where 1=minimal effort, 100=maximum effort). Takes precedence over individual prompt EffortLevel settings but can be overridden by runtime parameters. Inherited by sub-agents unless explicitly overridden.
22222
22808
  */
@@ -22246,7 +22832,7 @@ if this limit is exceeded.
22246
22832
  set DefaultArtifactTypeID(value: string | null);
22247
22833
  /**
22248
22834
  * * Field Name: OwnerUserID
22249
- * * Display Name: Owner User
22835
+ * * Display Name: Owner
22250
22836
  * * SQL Data Type: uniqueidentifier
22251
22837
  * * Related Entity/Foreign Key: MJ: Users (vwUsers.ID)
22252
22838
  * * Default Value: ECAFCCEC-6A37-EF11-86D4-000D3A4E707E
@@ -22309,7 +22895,7 @@ if this limit is exceeded.
22309
22895
  set InjectNotes(value: boolean);
22310
22896
  /**
22311
22897
  * * Field Name: MaxNotesToInject
22312
- * * Display Name: Max Notes To Inject
22898
+ * * Display Name: Max Notes to Inject
22313
22899
  * * SQL Data Type: int
22314
22900
  * * Default Value: 5
22315
22901
  * * Description: Maximum number of notes to inject into agent context per request.
@@ -22341,7 +22927,7 @@ if this limit is exceeded.
22341
22927
  set InjectExamples(value: boolean);
22342
22928
  /**
22343
22929
  * * Field Name: MaxExamplesToInject
22344
- * * Display Name: Max Examples To Inject
22930
+ * * Display Name: Max Examples to Inject
22345
22931
  * * SQL Data Type: int
22346
22932
  * * Default Value: 3
22347
22933
  * * Description: Maximum number of examples to inject into agent context per request.
@@ -22396,7 +22982,7 @@ if this limit is exceeded.
22396
22982
  set MaxMessages(value: number | null);
22397
22983
  /**
22398
22984
  * * Field Name: AttachmentStorageProviderID
22399
- * * Display Name: Attachment Storage Provider
22985
+ * * Display Name: Storage Provider
22400
22986
  * * SQL Data Type: uniqueidentifier
22401
22987
  * * Related Entity/Foreign Key: MJ: File Storage Providers (vwFileStorageProviders.ID)
22402
22988
  * * Description: File storage provider for large attachments. Overrides the default from AIConfiguration. NULL uses system default.
@@ -22405,7 +22991,7 @@ if this limit is exceeded.
22405
22991
  set AttachmentStorageProviderID(value: string | null);
22406
22992
  /**
22407
22993
  * * Field Name: AttachmentRootPath
22408
- * * Display Name: Attachment Root Path
22994
+ * * Display Name: Root Path
22409
22995
  * * SQL Data Type: nvarchar(500)
22410
22996
  * * Description: Base path within the storage provider for this agent's attachments. Agent run ID and sequence number are appended to create unique paths. Format: /folder/subfolder
22411
22997
  */
@@ -22413,7 +22999,7 @@ if this limit is exceeded.
22413
22999
  set AttachmentRootPath(value: string | null);
22414
23000
  /**
22415
23001
  * * Field Name: InlineStorageThresholdBytes
22416
- * * Display Name: Inline Storage Threshold Bytes
23002
+ * * Display Name: Inline Storage Threshold
22417
23003
  * * SQL Data Type: int
22418
23004
  * * Description: File size threshold for inline storage. Files <= this size are stored as base64 inline, larger files use MJStorage. NULL uses system default (1MB). Set to 0 to always use MJStorage.
22419
23005
  */
@@ -22421,7 +23007,7 @@ if this limit is exceeded.
22421
23007
  set InlineStorageThresholdBytes(value: number | null);
22422
23008
  /**
22423
23009
  * * Field Name: AgentTypePromptParams
22424
- * * Display Name: Agent Type Prompt Params
23010
+ * * Display Name: Prompt Parameters
22425
23011
  * * SQL Data Type: nvarchar(MAX)
22426
23012
  * * Description: JSON object containing parameter values that customize how this agent's type-level system prompt is rendered. The schema is defined by the agent type's PromptParamsSchema field. Allows per-agent control over which prompt sections are included, enabling token savings by excluding unused documentation.
22427
23013
  */
@@ -22481,7 +23067,7 @@ if this limit is exceeded.
22481
23067
  set CategoryID(value: string | null);
22482
23068
  /**
22483
23069
  * * Field Name: AllowEphemeralClientTools
22484
- * * Display Name: Allow Ephemeral Client Tools
23070
+ * * Display Name: Allow Ephemeral Tools
22485
23071
  * * SQL Data Type: bit
22486
23072
  * * Default Value: 1
22487
23073
  * * Description: When true (default), this agent accepts runtime-registered ephemeral client tools that are not defined in metadata. Set to false for agents that require strict tool governance.
@@ -22490,7 +23076,7 @@ if this limit is exceeded.
22490
23076
  set AllowEphemeralClientTools(value: boolean);
22491
23077
  /**
22492
23078
  * * Field Name: DefaultStorageAccountID
22493
- * * Display Name: Default Storage Account ID
23079
+ * * Display Name: Default Storage Account
22494
23080
  * * SQL Data Type: uniqueidentifier
22495
23081
  * * Related Entity/Foreign Key: MJ: File Storage Accounts (vwFileStorageAccounts.ID)
22496
23082
  * * Description: Default file storage account for this specific agent. Overrides both Type-level and Category-level defaults. Can be further overridden at runtime via ExecuteAgentParams.override.storageAccountId. FK to FileStorageAccount.
@@ -22498,6 +23084,20 @@ if this limit is exceeded.
22498
23084
  get DefaultStorageAccountID(): string | null;
22499
23085
  set DefaultStorageAccountID(value: string | null);
22500
23086
  /**
23087
+ * * Field Name: SearchScopeAccess
23088
+ * * Display Name: Search Scope Access
23089
+ * * SQL Data Type: nvarchar(20)
23090
+ * * Default Value: None
23091
+ * * Value List Type: List
23092
+ * * Possible Values
23093
+ * * All
23094
+ * * Assigned
23095
+ * * None
23096
+ * * Description: Controls the agent's search capability. All = may use any scope including Global; search action does not restrict. Assigned = may use ONLY scopes explicitly linked via AIAgentSearchScope; scoped search action enforces this. None = agent has no search capability; the scoped search action rejects all requests.
23097
+ */
23098
+ get SearchScopeAccess(): 'All' | 'Assigned' | 'None';
23099
+ set SearchScopeAccess(value: 'All' | 'Assigned' | 'None');
23100
+ /**
22501
23101
  * * Field Name: Parent
22502
23102
  * * Display Name: Parent Name
22503
23103
  * * SQL Data Type: nvarchar(255)
@@ -22505,7 +23105,7 @@ if this limit is exceeded.
22505
23105
  get Parent(): string | null;
22506
23106
  /**
22507
23107
  * * Field Name: ContextCompressionPrompt
22508
- * * Display Name: Context Compression Prompt
23108
+ * * Display Name: Compression Prompt Name
22509
23109
  * * SQL Data Type: nvarchar(255)
22510
23110
  */
22511
23111
  get ContextCompressionPrompt(): string | null;
@@ -22523,13 +23123,13 @@ if this limit is exceeded.
22523
23123
  get DefaultArtifactType(): string | null;
22524
23124
  /**
22525
23125
  * * Field Name: OwnerUser
22526
- * * Display Name: Owner User Name
23126
+ * * Display Name: Owner Name
22527
23127
  * * SQL Data Type: nvarchar(100)
22528
23128
  */
22529
23129
  get OwnerUser(): string;
22530
23130
  /**
22531
23131
  * * Field Name: AttachmentStorageProvider
22532
- * * Display Name: Attachment Storage Provider Name
23132
+ * * Display Name: Storage Provider Name
22533
23133
  * * SQL Data Type: nvarchar(50)
22534
23134
  */
22535
23135
  get AttachmentStorageProvider(): string | null;
@@ -22541,7 +23141,7 @@ if this limit is exceeded.
22541
23141
  get Category(): string | null;
22542
23142
  /**
22543
23143
  * * Field Name: DefaultStorageAccount
22544
- * * Display Name: Default Storage Account
23144
+ * * Display Name: Default Storage Account Name
22545
23145
  * * SQL Data Type: nvarchar(200)
22546
23146
  */
22547
23147
  get DefaultStorageAccount(): string | null;
@@ -26876,8 +27476,8 @@ export declare class MJAIResultCacheEntity extends BaseEntity<MJAIResultCacheEnt
26876
27476
  * * SQL Data Type: varbinary
26877
27477
  * * Description: Vector representation of the prompt for similarity matching.
26878
27478
  */
26879
- get PromptEmbedding(): number | null;
26880
- set PromptEmbedding(value: number | null);
27479
+ get PromptEmbedding(): string | null;
27480
+ set PromptEmbedding(value: string | null);
26881
27481
  /**
26882
27482
  * * Field Name: PromptRunID
26883
27483
  * * Display Name: Prompt Run
@@ -41634,7 +42234,7 @@ export declare class MJEntityFieldEntity extends BaseEntity<MJEntityFieldEntityT
41634
42234
  set ID(value: string);
41635
42235
  /**
41636
42236
  * * Field Name: EntityID
41637
- * * Display Name: Entity ID
42237
+ * * Display Name: Entity
41638
42238
  * * SQL Data Type: uniqueidentifier
41639
42239
  * * Related Entity/Foreign Key: MJ: Entities (vwEntities.ID)
41640
42240
  */
@@ -41649,7 +42249,7 @@ export declare class MJEntityFieldEntity extends BaseEntity<MJEntityFieldEntityT
41649
42249
  get Sequence(): number;
41650
42250
  /**
41651
42251
  * * Field Name: Name
41652
- * * Display Name: Name
42252
+ * * Display Name: Field Name
41653
42253
  * * SQL Data Type: nvarchar(255)
41654
42254
  * * Description: Name of the field within the database table
41655
42255
  */
@@ -41707,7 +42307,7 @@ export declare class MJEntityFieldEntity extends BaseEntity<MJEntityFieldEntityT
41707
42307
  set Category(value: string | null);
41708
42308
  /**
41709
42309
  * * Field Name: Type
41710
- * * Display Name: Data Type
42310
+ * * Display Name: SQL Type
41711
42311
  * * SQL Data Type: nvarchar(100)
41712
42312
  * * Description: SQL Data type (auto maintained by CodeGen)
41713
42313
  */
@@ -41861,7 +42461,7 @@ export declare class MJEntityFieldEntity extends BaseEntity<MJEntityFieldEntityT
41861
42461
  set AllowUpdateInView(value: boolean);
41862
42462
  /**
41863
42463
  * * Field Name: IncludeInUserSearchAPI
41864
- * * Display Name: Include In User Search
42464
+ * * Display Name: Include In Search
41865
42465
  * * SQL Data Type: bit
41866
42466
  * * Default Value: 0
41867
42467
  * * Description: If set to 1, this column will be included in user search queries for both traditional and full text search
@@ -41887,7 +42487,7 @@ export declare class MJEntityFieldEntity extends BaseEntity<MJEntityFieldEntityT
41887
42487
  set UserSearchParamFormatAPI(value: string | null);
41888
42488
  /**
41889
42489
  * * Field Name: IncludeInGeneratedForm
41890
- * * Display Name: Include In Generated Form
42490
+ * * Display Name: Include In Form
41891
42491
  * * SQL Data Type: bit
41892
42492
  * * Default Value: 1
41893
42493
  * * Description: If set to 1, this field will be included in the generated form by CodeGen. If set to 0, this field will be excluded from the generated form. For custom forms, this field has no effect as the layout is controlled independently.
@@ -41896,7 +42496,7 @@ export declare class MJEntityFieldEntity extends BaseEntity<MJEntityFieldEntityT
41896
42496
  set IncludeInGeneratedForm(value: boolean);
41897
42497
  /**
41898
42498
  * * Field Name: GeneratedFormSection
41899
- * * Display Name: Generated Form Section
42499
+ * * Display Name: Form Section
41900
42500
  * * SQL Data Type: nvarchar(10)
41901
42501
  * * Default Value: Details
41902
42502
  * * Value List Type: List
@@ -41913,7 +42513,7 @@ export declare class MJEntityFieldEntity extends BaseEntity<MJEntityFieldEntityT
41913
42513
  * * Display Name: Is Virtual
41914
42514
  * * SQL Data Type: bit
41915
42515
  * * Default Value: 0
41916
- * * Description: NULL
42516
+ * * Description: When 1, this field is read-only at the API layer (excluded from spCreate / spUpdate / GraphQL input types). Set automatically when the column is either (a) not present in the base table — e.g., a joined name lookup in the base view, or (b) a SQL Server computed column or PostgreSQL generated column. Cases (a) and (b) are distinguished by the IsComputed flag: IsVirtual=1, IsComputed=0 means view-only; IsVirtual=1, IsComputed=1 means computed/generated and physically present in the base table.
41917
42517
  */
41918
42518
  get IsVirtual(): boolean;
41919
42519
  /**
@@ -42008,7 +42608,7 @@ export declare class MJEntityFieldEntity extends BaseEntity<MJEntityFieldEntityT
42008
42608
  set AutoUpdateRelatedEntityInfo(value: boolean);
42009
42609
  /**
42010
42610
  * * Field Name: ValuesToPackWithSchema
42011
- * * Display Name: Values To Pack With Schema
42611
+ * * Display Name: Values To Pack
42012
42612
  * * SQL Data Type: nvarchar(10)
42013
42613
  * * Default Value: Auto
42014
42614
  * * Value List Type: List
@@ -42036,7 +42636,7 @@ export declare class MJEntityFieldEntity extends BaseEntity<MJEntityFieldEntityT
42036
42636
  set Status(value: 'Active' | 'Deprecated' | 'Disabled');
42037
42637
  /**
42038
42638
  * * Field Name: AutoUpdateIsNameField
42039
- * * Display Name: Auto Update Is Name Field
42639
+ * * Display Name: Auto Update Name Field
42040
42640
  * * SQL Data Type: bit
42041
42641
  * * Default Value: 1
42042
42642
  * * Description: When 1, allows system/LLM to auto-update IsNameField; when 0, user has locked this field
@@ -42045,7 +42645,7 @@ export declare class MJEntityFieldEntity extends BaseEntity<MJEntityFieldEntityT
42045
42645
  set AutoUpdateIsNameField(value: boolean);
42046
42646
  /**
42047
42647
  * * Field Name: AutoUpdateDefaultInView
42048
- * * Display Name: Auto Update Default In View
42648
+ * * Display Name: Auto Update View Default
42049
42649
  * * SQL Data Type: bit
42050
42650
  * * Default Value: 1
42051
42651
  * * Description: When 1, allows system/LLM to auto-update DefaultInView; when 0, user has locked this field
@@ -42135,7 +42735,7 @@ export declare class MJEntityFieldEntity extends BaseEntity<MJEntityFieldEntityT
42135
42735
  set IsSoftForeignKey(value: boolean);
42136
42736
  /**
42137
42737
  * * Field Name: RelatedEntityJoinFields
42138
- * * Display Name: Related Entity Join Fields
42738
+ * * Display Name: Related Join Fields
42139
42739
  * * SQL Data Type: nvarchar(MAX)
42140
42740
  * * Description: JSON configuration for additional fields to join from the related entity into this entity's base view. Supports modes: extend (add to NameField), override (replace NameField), disable (no joins). Schema: { mode?: string, fields?: [{ field: string, alias?: string }] }
42141
42741
  */
@@ -42151,7 +42751,7 @@ export declare class MJEntityFieldEntity extends BaseEntity<MJEntityFieldEntityT
42151
42751
  set JSONType(value: string | null);
42152
42752
  /**
42153
42753
  * * Field Name: JSONTypeIsArray
42154
- * * Display Name: JSON Type Is Array
42754
+ * * Display Name: JSON Is Array
42155
42755
  * * SQL Data Type: bit
42156
42756
  * * Default Value: 0
42157
42757
  * * Description: If true, the field holds a JSON array of JSONType items. The Object accessor returns Array<JSONType> | null and the setter accepts Array<JSONType> | null.
@@ -42168,13 +42768,19 @@ export declare class MJEntityFieldEntity extends BaseEntity<MJEntityFieldEntityT
42168
42768
  set JSONTypeDefinition(value: string | null);
42169
42769
  /**
42170
42770
  * * Field Name: UserSearchPredicateAPI
42171
- * * Display Name: User Search Predicate
42771
+ * * Display Name: Search Predicate
42172
42772
  * * SQL Data Type: nvarchar(20)
42173
42773
  * * Default Value: Contains
42774
+ * * Value List Type: List
42775
+ * * Possible Values
42776
+ * * BeginsWith
42777
+ * * Contains
42778
+ * * EndsWith
42779
+ * * Exact
42174
42780
  * * Description: Search predicate controlling how user search queries match against this field. Valid values: BeginsWith, Contains, EndsWith, Exact.
42175
42781
  */
42176
- get UserSearchPredicateAPI(): string;
42177
- set UserSearchPredicateAPI(value: string);
42782
+ get UserSearchPredicateAPI(): 'BeginsWith' | 'Contains' | 'EndsWith' | 'Exact';
42783
+ set UserSearchPredicateAPI(value: 'BeginsWith' | 'Contains' | 'EndsWith' | 'Exact');
42178
42784
  /**
42179
42785
  * * Field Name: AutoUpdateUserSearchPredicate
42180
42786
  * * Display Name: Auto Update Search Predicate
@@ -42186,7 +42792,7 @@ export declare class MJEntityFieldEntity extends BaseEntity<MJEntityFieldEntityT
42186
42792
  set AutoUpdateUserSearchPredicate(value: boolean);
42187
42793
  /**
42188
42794
  * * Field Name: AutoUpdateFullTextSearch
42189
- * * Display Name: Auto Update Full Text Search
42795
+ * * Display Name: Auto Update Full Text
42190
42796
  * * SQL Data Type: bit
42191
42797
  * * Default Value: 1
42192
42798
  * * Description: When true, CodeGen LLM can auto-set the FullTextSearchEnabled value during code generation runs.
@@ -42203,6 +42809,15 @@ export declare class MJEntityFieldEntity extends BaseEntity<MJEntityFieldEntityT
42203
42809
  get AutoUpdateExtendedType(): boolean;
42204
42810
  set AutoUpdateExtendedType(value: boolean);
42205
42811
  /**
42812
+ * * Field Name: IsComputed
42813
+ * * Display Name: Is Computed
42814
+ * * SQL Data Type: bit
42815
+ * * Default Value: 0
42816
+ * * Description: When 1, this field is a SQL Server computed column or PostgreSQL generated column — physically present in the base table but read-only at the SQL layer. Distinct from IsVirtual, which means the column is not in the base table at all (e.g., joined name lookups in the base view). A computed column has both IsVirtual=1 (read-only at the API layer) and IsComputed=1 (physically in the table). The difference matters for base-view JOIN target selection: when an FK's related Name Field is computed, the generated view joins to the related entity's base table instead of its view.
42817
+ */
42818
+ get IsComputed(): boolean;
42819
+ set IsComputed(value: boolean);
42820
+ /**
42206
42821
  * * Field Name: FieldCodeName
42207
42822
  * * Display Name: Field Code Name
42208
42823
  * * SQL Data Type: nvarchar(MAX)
@@ -42258,13 +42873,13 @@ export declare class MJEntityFieldEntity extends BaseEntity<MJEntityFieldEntityT
42258
42873
  get RelatedEntitySchemaName(): string | null;
42259
42874
  /**
42260
42875
  * * Field Name: RelatedEntityBaseTable
42261
- * * Display Name: Related Entity Table
42876
+ * * Display Name: Related Entity Base Table
42262
42877
  * * SQL Data Type: nvarchar(255)
42263
42878
  */
42264
42879
  get RelatedEntityBaseTable(): string | null;
42265
42880
  /**
42266
42881
  * * Field Name: RelatedEntityBaseView
42267
- * * Display Name: Related Entity View
42882
+ * * Display Name: Related Entity Base View
42268
42883
  * * SQL Data Type: nvarchar(255)
42269
42884
  */
42270
42885
  get RelatedEntityBaseView(): string | null;
@@ -53971,6 +54586,168 @@ export declare class MJSchemaInfoEntity extends BaseEntity<MJSchemaInfoEntityTyp
53971
54586
  get EntityNameSuffix(): string | null;
53972
54587
  set EntityNameSuffix(value: string | null);
53973
54588
  }
54589
+ /**
54590
+ * MJ: Search Execution Logs - strongly typed entity sub-class
54591
+ * * Schema: __mj
54592
+ * * Base Table: SearchExecutionLog
54593
+ * * Base View: vwSearchExecutionLogs
54594
+ * * @description One row per SearchEngine.search invocation. Populated by SearchEngine's post-fusion logging hook (Phase 3.2). Read by the Knowledge Hub Search Analytics dashboard (Phase 3.3) and the per-scope tuning CSV export (Phase 3.4).
54595
+ * * Primary Key: ID
54596
+ * @extends {BaseEntity}
54597
+ * @class
54598
+ * @public
54599
+ */
54600
+ export declare class MJSearchExecutionLogEntity extends BaseEntity<MJSearchExecutionLogEntityType> {
54601
+ /**
54602
+ * Loads the MJ: Search Execution Logs record from the database
54603
+ * @param ID: string - primary key value to load the MJ: Search Execution Logs record.
54604
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
54605
+ * @returns {Promise<boolean>} - true if successful, false otherwise
54606
+ * @public
54607
+ * @async
54608
+ * @memberof MJSearchExecutionLogEntity
54609
+ * @method
54610
+ * @override
54611
+ */
54612
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
54613
+ /**
54614
+ * * Field Name: ID
54615
+ * * Display Name: ID
54616
+ * * SQL Data Type: uniqueidentifier
54617
+ * * Default Value: newsequentialid()
54618
+ */
54619
+ get ID(): string;
54620
+ set ID(value: string);
54621
+ /**
54622
+ * * Field Name: SearchScopeID
54623
+ * * Display Name: Search Scope
54624
+ * * SQL Data Type: uniqueidentifier
54625
+ * * Related Entity/Foreign Key: MJ: Search Scopes (vwSearchScopes.ID)
54626
+ * * Description: The SearchScope this invocation targeted. NULL for unscoped global search.
54627
+ */
54628
+ get SearchScopeID(): string | null;
54629
+ set SearchScopeID(value: string | null);
54630
+ /**
54631
+ * * Field Name: UserID
54632
+ * * Display Name: User
54633
+ * * SQL Data Type: uniqueidentifier
54634
+ * * Related Entity/Foreign Key: MJ: Users (vwUsers.ID)
54635
+ * * Description: The User who initiated the search. NULL for system / unauthenticated callers.
54636
+ */
54637
+ get UserID(): string | null;
54638
+ set UserID(value: string | null);
54639
+ /**
54640
+ * * Field Name: AIAgentID
54641
+ * * Display Name: AI Agent
54642
+ * * SQL Data Type: uniqueidentifier
54643
+ * * Related Entity/Foreign Key: MJ: AI Agents (vwAIAgents.ID)
54644
+ * * Description: The AIAgent identity if the search was invoked from an agent (e.g. ScopedSearchAction). NULL for direct human-initiated searches.
54645
+ */
54646
+ get AIAgentID(): string | null;
54647
+ set AIAgentID(value: string | null);
54648
+ /**
54649
+ * * Field Name: Query
54650
+ * * Display Name: Query
54651
+ * * SQL Data Type: nvarchar(MAX)
54652
+ * * Description: Raw query string the user / agent submitted. NVARCHAR(MAX) because some queries are long (full sentences, snippets). Stored verbatim for analytics — do NOT rely on this for permission decisions.
54653
+ */
54654
+ get Query(): string;
54655
+ set Query(value: string);
54656
+ /**
54657
+ * * Field Name: TotalDurationMs
54658
+ * * Display Name: Total Duration (ms)
54659
+ * * SQL Data Type: int
54660
+ * * Description: End-to-end search duration in milliseconds, measured at the SearchEngine.search call boundary (provider runs + fusion + rerank + permission filter + enrichment).
54661
+ */
54662
+ get TotalDurationMs(): number;
54663
+ set TotalDurationMs(value: number);
54664
+ /**
54665
+ * * Field Name: ResultCount
54666
+ * * Display Name: Result Count
54667
+ * * SQL Data Type: int
54668
+ * * Default Value: 0
54669
+ * * Description: Number of results returned to the caller after permission filtering, deduplication, and score-threshold trimming. Use this as the hit-rate denominator (rows where ResultCount > 0).
54670
+ */
54671
+ get ResultCount(): number;
54672
+ set ResultCount(value: number);
54673
+ /**
54674
+ * * Field Name: RerankerName
54675
+ * * Display Name: Reranker Name
54676
+ * * SQL Data Type: nvarchar(100)
54677
+ * * Description: BaseReRanker.Name of the reranker that ran (e.g. 'Cohere', 'Voyage', 'OpenAI', 'BGE', 'NoopReRanker'). NULL when no rerank stage executed for this invocation.
54678
+ */
54679
+ get RerankerName(): string | null;
54680
+ set RerankerName(value: string | null);
54681
+ /**
54682
+ * * Field Name: RerankerCostCents
54683
+ * * Display Name: Reranker Cost (Cents)
54684
+ * * SQL Data Type: decimal(10, 4)
54685
+ * * Description: Total reranker spend in cents for this invocation, populated from the BaseReRanker.CostReporter callback via RerankerBudgetGuard. NULL when no rerank ran or no real-provider cost was incurred (Noop / BGE).
54686
+ */
54687
+ get RerankerCostCents(): number | null;
54688
+ set RerankerCostCents(value: number | null);
54689
+ /**
54690
+ * * Field Name: Status
54691
+ * * Display Name: Status
54692
+ * * SQL Data Type: nvarchar(20)
54693
+ * * Value List Type: List
54694
+ * * Possible Values
54695
+ * * Failure
54696
+ * * Forbidden
54697
+ * * Success
54698
+ * * Description: Outcome of the search: 'Success' (results returned, possibly empty), 'Failure' (an exception bubbled out — see FailureReason), 'Forbidden' (the caller lacked SearchScopePermission for the requested scope). Constrained by CK_SearchExecutionLog_Status.
54699
+ */
54700
+ get Status(): 'Failure' | 'Forbidden' | 'Success';
54701
+ set Status(value: 'Failure' | 'Forbidden' | 'Success');
54702
+ /**
54703
+ * * Field Name: FailureReason
54704
+ * * Display Name: Failure Reason
54705
+ * * SQL Data Type: nvarchar(500)
54706
+ * * Description: Short human-readable failure reason when Status = 'Failure' or 'Forbidden'. NULL on success.
54707
+ */
54708
+ get FailureReason(): string | null;
54709
+ set FailureReason(value: string | null);
54710
+ /**
54711
+ * * Field Name: ProvidersJSON
54712
+ * * Display Name: Providers Breakdown
54713
+ * * SQL Data Type: nvarchar(MAX)
54714
+ * * Description: JSON array of per-provider breakdown entries: [{"Provider":"Vector","DurationMs":123,"ResultCount":5,"ErrorMessage":null}, ...]. Used by the analytics dashboard for p50/p95 latency-by-provider charts and to spot consistently slow providers.
54715
+ */
54716
+ get ProvidersJSON(): string | null;
54717
+ set ProvidersJSON(value: string | null);
54718
+ /**
54719
+ * * Field Name: __mj_CreatedAt
54720
+ * * Display Name: Created At
54721
+ * * SQL Data Type: datetimeoffset
54722
+ * * Default Value: getutcdate()
54723
+ */
54724
+ get __mj_CreatedAt(): Date;
54725
+ /**
54726
+ * * Field Name: __mj_UpdatedAt
54727
+ * * Display Name: Updated At
54728
+ * * SQL Data Type: datetimeoffset
54729
+ * * Default Value: getutcdate()
54730
+ */
54731
+ get __mj_UpdatedAt(): Date;
54732
+ /**
54733
+ * * Field Name: SearchScope
54734
+ * * Display Name: Search Scope Name
54735
+ * * SQL Data Type: nvarchar(200)
54736
+ */
54737
+ get SearchScope(): string | null;
54738
+ /**
54739
+ * * Field Name: User
54740
+ * * Display Name: User Name
54741
+ * * SQL Data Type: nvarchar(100)
54742
+ */
54743
+ get User(): string | null;
54744
+ /**
54745
+ * * Field Name: AIAgent
54746
+ * * Display Name: AI Agent Name
54747
+ * * SQL Data Type: nvarchar(255)
54748
+ */
54749
+ get AIAgent(): string | null;
54750
+ }
53974
54751
  /**
53975
54752
  * MJ: Search Providers - strongly typed entity sub-class
53976
54753
  * * Schema: __mj
@@ -54143,6 +54920,808 @@ export declare class MJSearchProviderEntity extends BaseEntity<MJSearchProviderE
54143
54920
  */
54144
54921
  get Credential(): string | null;
54145
54922
  }
54923
+ /**
54924
+ * MJ: Search Scope Entities - strongly typed entity sub-class
54925
+ * * Schema: __mj
54926
+ * * Base Table: SearchScopeEntity
54927
+ * * Base View: vwSearchScopeEntities
54928
+ * * @description Controls which entities participate in entity and full-text search within a scope, with optional per-entity filter and user-search-string overrides.
54929
+ * * Primary Key: ID
54930
+ * @extends {BaseEntity}
54931
+ * @class
54932
+ * @public
54933
+ */
54934
+ export declare class MJSearchScopeEntityEntity extends BaseEntity<MJSearchScopeEntityEntityType> {
54935
+ /**
54936
+ * Loads the MJ: Search Scope Entities record from the database
54937
+ * @param ID: string - primary key value to load the MJ: Search Scope Entities record.
54938
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
54939
+ * @returns {Promise<boolean>} - true if successful, false otherwise
54940
+ * @public
54941
+ * @async
54942
+ * @memberof MJSearchScopeEntityEntity
54943
+ * @method
54944
+ * @override
54945
+ */
54946
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
54947
+ /**
54948
+ * * Field Name: ID
54949
+ * * Display Name: ID
54950
+ * * SQL Data Type: uniqueidentifier
54951
+ * * Default Value: newsequentialid()
54952
+ */
54953
+ get ID(): string;
54954
+ set ID(value: string);
54955
+ /**
54956
+ * * Field Name: SearchScopeID
54957
+ * * Display Name: Search Scope ID
54958
+ * * SQL Data Type: uniqueidentifier
54959
+ * * Related Entity/Foreign Key: MJ: Search Scopes (vwSearchScopes.ID)
54960
+ */
54961
+ get SearchScopeID(): string;
54962
+ set SearchScopeID(value: string);
54963
+ /**
54964
+ * * Field Name: EntityID
54965
+ * * Display Name: Entity ID
54966
+ * * SQL Data Type: uniqueidentifier
54967
+ * * Related Entity/Foreign Key: MJ: Entities (vwEntities.ID)
54968
+ */
54969
+ get EntityID(): string;
54970
+ set EntityID(value: string);
54971
+ /**
54972
+ * * Field Name: ExtraFilter
54973
+ * * Display Name: Extra Filter
54974
+ * * SQL Data Type: nvarchar(MAX)
54975
+ * * Description: Optional SQL filter applied to this entity's search within this scope. Example: Status='Published' AND DepartmentID='abc'. Rendered as a Nunjucks template with SearchContext variables for multi-tenant filtering.
54976
+ */
54977
+ get ExtraFilter(): string | null;
54978
+ set ExtraFilter(value: string | null);
54979
+ /**
54980
+ * * Field Name: UserSearchString
54981
+ * * Display Name: User Search String
54982
+ * * SQL Data Type: nvarchar(MAX)
54983
+ * * Description: Optional override for the UserSearchString passed to RunView for this entity within this scope. Nunjucks template (e.g., "{{ query }} AND type:policy"). NULL = pass the user's actual query through as-is.
54984
+ */
54985
+ get UserSearchString(): string | null;
54986
+ set UserSearchString(value: string | null);
54987
+ /**
54988
+ * * Field Name: __mj_CreatedAt
54989
+ * * Display Name: Created At
54990
+ * * SQL Data Type: datetimeoffset
54991
+ * * Default Value: getutcdate()
54992
+ */
54993
+ get __mj_CreatedAt(): Date;
54994
+ /**
54995
+ * * Field Name: __mj_UpdatedAt
54996
+ * * Display Name: Updated At
54997
+ * * SQL Data Type: datetimeoffset
54998
+ * * Default Value: getutcdate()
54999
+ */
55000
+ get __mj_UpdatedAt(): Date;
55001
+ /**
55002
+ * * Field Name: SearchScope
55003
+ * * Display Name: Search Scope
55004
+ * * SQL Data Type: nvarchar(200)
55005
+ */
55006
+ get SearchScope(): string;
55007
+ /**
55008
+ * * Field Name: Entity
55009
+ * * Display Name: Entity
55010
+ * * SQL Data Type: nvarchar(255)
55011
+ */
55012
+ get Entity(): string;
55013
+ }
55014
+ /**
55015
+ * MJ: Search Scope External Indexes - strongly typed entity sub-class
55016
+ * * Schema: __mj
55017
+ * * Base Table: SearchScopeExternalIndex
55018
+ * * Base View: vwSearchScopeExternalIndexes
55019
+ * * @description Scoped external/provider-owned indexes. Generic — covers vector stores (Pinecone, Qdrant, PGVector) and text/hybrid engines (Elasticsearch, Typesense, Azure AI Search, OpenSearch). A single scope can mix types; each row is consumed only by the provider matching its IndexType.
55020
+ * * Primary Key: ID
55021
+ * @extends {BaseEntity}
55022
+ * @class
55023
+ * @public
55024
+ */
55025
+ export declare class MJSearchScopeExternalIndexEntity extends BaseEntity<MJSearchScopeExternalIndexEntityType> {
55026
+ /**
55027
+ * Loads the MJ: Search Scope External Indexes record from the database
55028
+ * @param ID: string - primary key value to load the MJ: Search Scope External Indexes record.
55029
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
55030
+ * @returns {Promise<boolean>} - true if successful, false otherwise
55031
+ * @public
55032
+ * @async
55033
+ * @memberof MJSearchScopeExternalIndexEntity
55034
+ * @method
55035
+ * @override
55036
+ */
55037
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
55038
+ /**
55039
+ * Validate() method override for MJ: Search Scope External Indexes entity. This is an auto-generated method that invokes the generated validators for this entity for the following fields:
55040
+ * * Table-Level: To ensure search functionality works correctly, vector-based indexes must have a Vector Index ID assigned, while all other index types must have an External Index Name specified.
55041
+ * @public
55042
+ * @method
55043
+ * @override
55044
+ */
55045
+ Validate(): ValidationResult;
55046
+ /**
55047
+ * To ensure search functionality works correctly, vector-based indexes must have a Vector Index ID assigned, while all other index types must have an External Index Name specified.
55048
+ * @param result - the ValidationResult object to add any errors or warnings to
55049
+ * @public
55050
+ * @method
55051
+ */
55052
+ ValidateIndexTypeRequirements(result: ValidationResult): void;
55053
+ /**
55054
+ * * Field Name: ID
55055
+ * * Display Name: ID
55056
+ * * SQL Data Type: uniqueidentifier
55057
+ * * Default Value: newsequentialid()
55058
+ */
55059
+ get ID(): string;
55060
+ set ID(value: string);
55061
+ /**
55062
+ * * Field Name: SearchScopeID
55063
+ * * Display Name: Search Scope ID
55064
+ * * SQL Data Type: uniqueidentifier
55065
+ * * Related Entity/Foreign Key: MJ: Search Scopes (vwSearchScopes.ID)
55066
+ */
55067
+ get SearchScopeID(): string;
55068
+ set SearchScopeID(value: string);
55069
+ /**
55070
+ * * Field Name: IndexType
55071
+ * * Display Name: Index Type
55072
+ * * SQL Data Type: nvarchar(40)
55073
+ * * Default Value: Vector
55074
+ * * Value List Type: List
55075
+ * * Possible Values
55076
+ * * AzureAISearch
55077
+ * * Elasticsearch
55078
+ * * OpenSearch
55079
+ * * Other
55080
+ * * Typesense
55081
+ * * Vector
55082
+ * * Description: Discriminator. Determines which provider class consumes this row: Vector | Elasticsearch | Typesense | AzureAISearch | OpenSearch | Other.
55083
+ */
55084
+ get IndexType(): 'AzureAISearch' | 'Elasticsearch' | 'OpenSearch' | 'Other' | 'Typesense' | 'Vector';
55085
+ set IndexType(value: 'AzureAISearch' | 'Elasticsearch' | 'OpenSearch' | 'Other' | 'Typesense' | 'Vector');
55086
+ /**
55087
+ * * Field Name: VectorIndexID
55088
+ * * Display Name: Vector Index ID
55089
+ * * SQL Data Type: uniqueidentifier
55090
+ * * Related Entity/Foreign Key: MJ: Vector Indexes (vwVectorIndexes.ID)
55091
+ * * Description: FK to VectorIndex. REQUIRED when IndexType='Vector'. NULL for all other IndexType values.
55092
+ */
55093
+ get VectorIndexID(): string | null;
55094
+ set VectorIndexID(value: string | null);
55095
+ /**
55096
+ * * Field Name: ExternalIndexName
55097
+ * * Display Name: External Index Name
55098
+ * * SQL Data Type: nvarchar(400)
55099
+ * * Description: For non-vector IndexTypes: the remote engine's index/collection/alias name (e.g., Elasticsearch index "kb_docs_v3", Typesense collection "articles"). NULL for IndexType='Vector' (VectorIndexID resolves the name instead).
55100
+ */
55101
+ get ExternalIndexName(): string | null;
55102
+ set ExternalIndexName(value: string | null);
55103
+ /**
55104
+ * * Field Name: ExternalIndexConfig
55105
+ * * Display Name: External Index Config
55106
+ * * SQL Data Type: nvarchar(MAX)
55107
+ * * Description: JSON with extra connection/config hints the provider needs (cluster alias, routing key, custom analyzer, etc.). Provider-interpreted.
55108
+ */
55109
+ get ExternalIndexConfig(): string | null;
55110
+ set ExternalIndexConfig(value: string | null);
55111
+ /**
55112
+ * * Field Name: MetadataFilter
55113
+ * * Display Name: Metadata Filter
55114
+ * * SQL Data Type: nvarchar(MAX)
55115
+ * * Description: JSON filter expression applied as a native metadata filter on the remote engine. Pinecone/Qdrant/PGVector metadata filter, or Elasticsearch filter DSL, etc. Rendered as a Nunjucks template so SearchContext.PrimaryScopeRecordID and SearchContext.SecondaryScopes.* can be interpolated for multi-tenant filtering.
55116
+ */
55117
+ get MetadataFilter(): string | null;
55118
+ set MetadataFilter(value: string | null);
55119
+ /**
55120
+ * * Field Name: __mj_CreatedAt
55121
+ * * Display Name: Created At
55122
+ * * SQL Data Type: datetimeoffset
55123
+ * * Default Value: getutcdate()
55124
+ */
55125
+ get __mj_CreatedAt(): Date;
55126
+ /**
55127
+ * * Field Name: __mj_UpdatedAt
55128
+ * * Display Name: Updated At
55129
+ * * SQL Data Type: datetimeoffset
55130
+ * * Default Value: getutcdate()
55131
+ */
55132
+ get __mj_UpdatedAt(): Date;
55133
+ /**
55134
+ * * Field Name: SearchScope
55135
+ * * Display Name: Search Scope
55136
+ * * SQL Data Type: nvarchar(200)
55137
+ */
55138
+ get SearchScope(): string;
55139
+ /**
55140
+ * * Field Name: VectorIndex
55141
+ * * Display Name: Vector Index
55142
+ * * SQL Data Type: nvarchar(255)
55143
+ */
55144
+ get VectorIndex(): string | null;
55145
+ }
55146
+ /**
55147
+ * MJ: Search Scope Permissions - strongly typed entity sub-class
55148
+ * * Schema: __mj
55149
+ * * Base Table: SearchScopePermission
55150
+ * * Base View: vwSearchScopePermissions
55151
+ * * @description Per-user or per-role permission grant on a SearchScope. Exactly one of UserID or RoleID is set on each row; the other is NULL. PermissionLevel is one of None, Read, Search, Manage. Combined with AIAgent.SearchScopeAccess for agent-side fallbacks via the SearchScopePermissionResolver.
55152
+ * * Primary Key: ID
55153
+ * @extends {BaseEntity}
55154
+ * @class
55155
+ * @public
55156
+ */
55157
+ export declare class MJSearchScopePermissionEntity extends BaseEntity<MJSearchScopePermissionEntityType> {
55158
+ /**
55159
+ * Loads the MJ: Search Scope Permissions record from the database
55160
+ * @param ID: string - primary key value to load the MJ: Search Scope Permissions record.
55161
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
55162
+ * @returns {Promise<boolean>} - true if successful, false otherwise
55163
+ * @public
55164
+ * @async
55165
+ * @memberof MJSearchScopePermissionEntity
55166
+ * @method
55167
+ * @override
55168
+ */
55169
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
55170
+ /**
55171
+ * Validate() method override for MJ: Search Scope Permissions entity. This is an auto-generated method that invokes the generated validators for this entity for the following fields:
55172
+ * * Table-Level: Each record must be assigned to either a specific user or a specific role, but not both. This ensures that permissions or scopes are clearly defined for a single entity type and prevents ambiguous assignments.
55173
+ * @public
55174
+ * @method
55175
+ * @override
55176
+ */
55177
+ Validate(): ValidationResult;
55178
+ /**
55179
+ * Each record must be assigned to either a specific user or a specific role, but not both. This ensures that permissions or scopes are clearly defined for a single entity type and prevents ambiguous assignments.
55180
+ * @param result - the ValidationResult object to add any errors or warnings to
55181
+ * @public
55182
+ * @method
55183
+ */
55184
+ ValidateUserIDAndRoleIDExclusiveAssignment(result: ValidationResult): void;
55185
+ /**
55186
+ * * Field Name: ID
55187
+ * * Display Name: ID
55188
+ * * SQL Data Type: uniqueidentifier
55189
+ * * Default Value: newsequentialid()
55190
+ * * Description: Primary key. Auto-generated.
55191
+ */
55192
+ get ID(): string;
55193
+ set ID(value: string);
55194
+ /**
55195
+ * * Field Name: SearchScopeID
55196
+ * * Display Name: Search Scope
55197
+ * * SQL Data Type: uniqueidentifier
55198
+ * * Related Entity/Foreign Key: MJ: Search Scopes (vwSearchScopes.ID)
55199
+ * * Description: The SearchScope this permission row applies to.
55200
+ */
55201
+ get SearchScopeID(): string;
55202
+ set SearchScopeID(value: string);
55203
+ /**
55204
+ * * Field Name: UserID
55205
+ * * Display Name: User
55206
+ * * SQL Data Type: uniqueidentifier
55207
+ * * Related Entity/Foreign Key: MJ: Users (vwUsers.ID)
55208
+ * * Description: The user this permission applies to. Mutually exclusive with RoleID — exactly one must be set.
55209
+ */
55210
+ get UserID(): string | null;
55211
+ set UserID(value: string | null);
55212
+ /**
55213
+ * * Field Name: RoleID
55214
+ * * Display Name: Role
55215
+ * * SQL Data Type: uniqueidentifier
55216
+ * * Related Entity/Foreign Key: MJ: Roles (vwRoles.ID)
55217
+ * * Description: The role this permission applies to. Mutually exclusive with UserID — exactly one must be set. Permissions granted via roles flow to all users in that role.
55218
+ */
55219
+ get RoleID(): string | null;
55220
+ set RoleID(value: string | null);
55221
+ /**
55222
+ * * Field Name: PermissionLevel
55223
+ * * Display Name: Permission Level
55224
+ * * SQL Data Type: nvarchar(20)
55225
+ * * Value List Type: List
55226
+ * * Possible Values
55227
+ * * Manage
55228
+ * * None
55229
+ * * Read
55230
+ * * Search
55231
+ * * Description: Capability granted on this SearchScope. None = explicit deny (overrides role grants), Read = view scope metadata, Search = invoke ScopedSearchAction, Manage = full edit including authoring of permission rows. The resolver picks the highest level when multiple grants apply (direct + role).
55232
+ */
55233
+ get PermissionLevel(): 'Manage' | 'None' | 'Read' | 'Search';
55234
+ set PermissionLevel(value: 'Manage' | 'None' | 'Read' | 'Search');
55235
+ /**
55236
+ * * Field Name: __mj_CreatedAt
55237
+ * * Display Name: Created At
55238
+ * * SQL Data Type: datetimeoffset
55239
+ * * Default Value: getutcdate()
55240
+ */
55241
+ get __mj_CreatedAt(): Date;
55242
+ /**
55243
+ * * Field Name: __mj_UpdatedAt
55244
+ * * Display Name: Updated At
55245
+ * * SQL Data Type: datetimeoffset
55246
+ * * Default Value: getutcdate()
55247
+ */
55248
+ get __mj_UpdatedAt(): Date;
55249
+ /**
55250
+ * * Field Name: SearchScope
55251
+ * * Display Name: Search Scope Name
55252
+ * * SQL Data Type: nvarchar(200)
55253
+ */
55254
+ get SearchScope(): string;
55255
+ /**
55256
+ * * Field Name: User
55257
+ * * Display Name: User Name
55258
+ * * SQL Data Type: nvarchar(100)
55259
+ */
55260
+ get User(): string | null;
55261
+ /**
55262
+ * * Field Name: Role
55263
+ * * Display Name: Role Name
55264
+ * * SQL Data Type: nvarchar(50)
55265
+ */
55266
+ get Role(): string | null;
55267
+ }
55268
+ /**
55269
+ * MJ: Search Scope Providers - strongly typed entity sub-class
55270
+ * * Schema: __mj
55271
+ * * Base Table: SearchScopeProvider
55272
+ * * Base View: vwSearchScopeProviders
55273
+ * * @description Controls which SearchProviders participate in a given SearchScope. Each row enables one provider within one scope, with optional overrides.
55274
+ * * Primary Key: ID
55275
+ * @extends {BaseEntity}
55276
+ * @class
55277
+ * @public
55278
+ */
55279
+ export declare class MJSearchScopeProviderEntity extends BaseEntity<MJSearchScopeProviderEntityType> {
55280
+ /**
55281
+ * Loads the MJ: Search Scope Providers record from the database
55282
+ * @param ID: string - primary key value to load the MJ: Search Scope Providers record.
55283
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
55284
+ * @returns {Promise<boolean>} - true if successful, false otherwise
55285
+ * @public
55286
+ * @async
55287
+ * @memberof MJSearchScopeProviderEntity
55288
+ * @method
55289
+ * @override
55290
+ */
55291
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
55292
+ /**
55293
+ * * Field Name: ID
55294
+ * * Display Name: ID
55295
+ * * SQL Data Type: uniqueidentifier
55296
+ * * Default Value: newsequentialid()
55297
+ */
55298
+ get ID(): string;
55299
+ set ID(value: string);
55300
+ /**
55301
+ * * Field Name: SearchScopeID
55302
+ * * Display Name: Search Scope
55303
+ * * SQL Data Type: uniqueidentifier
55304
+ * * Related Entity/Foreign Key: MJ: Search Scopes (vwSearchScopes.ID)
55305
+ */
55306
+ get SearchScopeID(): string;
55307
+ set SearchScopeID(value: string);
55308
+ /**
55309
+ * * Field Name: SearchProviderID
55310
+ * * Display Name: Search Provider
55311
+ * * SQL Data Type: uniqueidentifier
55312
+ * * Related Entity/Foreign Key: MJ: Search Providers (vwSearchProviders.ID)
55313
+ */
55314
+ get SearchProviderID(): string;
55315
+ set SearchProviderID(value: string);
55316
+ /**
55317
+ * * Field Name: Enabled
55318
+ * * Display Name: Enabled
55319
+ * * SQL Data Type: bit
55320
+ * * Default Value: 1
55321
+ * * Description: Whether this provider is active for this scope. Lets an admin toggle providers off per-scope without deleting the row.
55322
+ */
55323
+ get Enabled(): boolean;
55324
+ set Enabled(value: boolean);
55325
+ /**
55326
+ * * Field Name: MaxResultsOverride
55327
+ * * Display Name: Max Results Override
55328
+ * * SQL Data Type: int
55329
+ * * Description: Override the max-results value for this provider within this scope. NULL = use the provider's default.
55330
+ */
55331
+ get MaxResultsOverride(): number | null;
55332
+ set MaxResultsOverride(value: number | null);
55333
+ /**
55334
+ * * Field Name: ProviderConfigOverride
55335
+ * * Display Name: Provider Config Override
55336
+ * * SQL Data Type: nvarchar(MAX)
55337
+ * * Description: JSON override for provider-specific configuration within this scope. Provider interprets.
55338
+ */
55339
+ get ProviderConfigOverride(): string | null;
55340
+ set ProviderConfigOverride(value: string | null);
55341
+ /**
55342
+ * * Field Name: QueryTransformTemplateID
55343
+ * * Display Name: Query Transform Template
55344
+ * * SQL Data Type: uniqueidentifier
55345
+ * * Related Entity/Foreign Key: MJ: Templates (vwTemplates.ID)
55346
+ * * Description: Optional FK to Templates. When set, the user/agent query is rewritten through this Template before being sent to this provider. Lets vector providers get a chunk-shaped rewrite while FTS providers get keyword extraction within the same scope. Resolution order: this > AIAgentSearchScope.QueryTemplateID > raw lastUserMessage.
55347
+ */
55348
+ get QueryTransformTemplateID(): string | null;
55349
+ set QueryTransformTemplateID(value: string | null);
55350
+ /**
55351
+ * * Field Name: __mj_CreatedAt
55352
+ * * Display Name: Created At
55353
+ * * SQL Data Type: datetimeoffset
55354
+ * * Default Value: getutcdate()
55355
+ */
55356
+ get __mj_CreatedAt(): Date;
55357
+ /**
55358
+ * * Field Name: __mj_UpdatedAt
55359
+ * * Display Name: Updated At
55360
+ * * SQL Data Type: datetimeoffset
55361
+ * * Default Value: getutcdate()
55362
+ */
55363
+ get __mj_UpdatedAt(): Date;
55364
+ /**
55365
+ * * Field Name: SearchScope
55366
+ * * Display Name: Search Scope Name
55367
+ * * SQL Data Type: nvarchar(200)
55368
+ */
55369
+ get SearchScope(): string;
55370
+ /**
55371
+ * * Field Name: SearchProvider
55372
+ * * Display Name: Search Provider Name
55373
+ * * SQL Data Type: nvarchar(200)
55374
+ */
55375
+ get SearchProvider(): string;
55376
+ /**
55377
+ * * Field Name: QueryTransformTemplate
55378
+ * * Display Name: Query Transform Template Name
55379
+ * * SQL Data Type: nvarchar(255)
55380
+ */
55381
+ get QueryTransformTemplate(): string | null;
55382
+ }
55383
+ /**
55384
+ * MJ: Search Scope Storage Accounts - strongly typed entity sub-class
55385
+ * * Schema: __mj
55386
+ * * Base Table: SearchScopeStorageAccount
55387
+ * * Base View: vwSearchScopeStorageAccounts
55388
+ * * @description Controls which file storage accounts/folders participate in a scope.
55389
+ * * Primary Key: ID
55390
+ * @extends {BaseEntity}
55391
+ * @class
55392
+ * @public
55393
+ */
55394
+ export declare class MJSearchScopeStorageAccountEntity extends BaseEntity<MJSearchScopeStorageAccountEntityType> {
55395
+ /**
55396
+ * Loads the MJ: Search Scope Storage Accounts record from the database
55397
+ * @param ID: string - primary key value to load the MJ: Search Scope Storage Accounts record.
55398
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
55399
+ * @returns {Promise<boolean>} - true if successful, false otherwise
55400
+ * @public
55401
+ * @async
55402
+ * @memberof MJSearchScopeStorageAccountEntity
55403
+ * @method
55404
+ * @override
55405
+ */
55406
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
55407
+ /**
55408
+ * * Field Name: ID
55409
+ * * Display Name: ID
55410
+ * * SQL Data Type: uniqueidentifier
55411
+ * * Default Value: newsequentialid()
55412
+ */
55413
+ get ID(): string;
55414
+ set ID(value: string);
55415
+ /**
55416
+ * * Field Name: SearchScopeID
55417
+ * * Display Name: Search Scope
55418
+ * * SQL Data Type: uniqueidentifier
55419
+ * * Related Entity/Foreign Key: MJ: Search Scopes (vwSearchScopes.ID)
55420
+ */
55421
+ get SearchScopeID(): string;
55422
+ set SearchScopeID(value: string);
55423
+ /**
55424
+ * * Field Name: FileStorageAccountID
55425
+ * * Display Name: Storage Account
55426
+ * * SQL Data Type: uniqueidentifier
55427
+ * * Related Entity/Foreign Key: MJ: File Storage Accounts (vwFileStorageAccounts.ID)
55428
+ */
55429
+ get FileStorageAccountID(): string;
55430
+ set FileStorageAccountID(value: string);
55431
+ /**
55432
+ * * Field Name: FolderPath
55433
+ * * Display Name: Folder Path
55434
+ * * SQL Data Type: nvarchar(1000)
55435
+ * * Description: Optional folder path restriction. NULL = entire storage account. Example: /policies/hr/. Rendered as a Nunjucks template with SearchContext variables so platforms can do per-tenant folder routing like /tenants/{{ context.PrimaryScopeRecordID }}/.
55436
+ */
55437
+ get FolderPath(): string | null;
55438
+ set FolderPath(value: string | null);
55439
+ /**
55440
+ * * Field Name: __mj_CreatedAt
55441
+ * * Display Name: Created At
55442
+ * * SQL Data Type: datetimeoffset
55443
+ * * Default Value: getutcdate()
55444
+ */
55445
+ get __mj_CreatedAt(): Date;
55446
+ /**
55447
+ * * Field Name: __mj_UpdatedAt
55448
+ * * Display Name: Updated At
55449
+ * * SQL Data Type: datetimeoffset
55450
+ * * Default Value: getutcdate()
55451
+ */
55452
+ get __mj_UpdatedAt(): Date;
55453
+ /**
55454
+ * * Field Name: SearchScope
55455
+ * * Display Name: Search Scope Name
55456
+ * * SQL Data Type: nvarchar(200)
55457
+ */
55458
+ get SearchScope(): string;
55459
+ /**
55460
+ * * Field Name: FileStorageAccount
55461
+ * * Display Name: Storage Account Name
55462
+ * * SQL Data Type: nvarchar(200)
55463
+ */
55464
+ get FileStorageAccount(): string;
55465
+ }
55466
+ /**
55467
+ * MJ: Search Scope Test Queries - strongly typed entity sub-class
55468
+ * * Schema: __mj
55469
+ * * Base Table: SearchScopeTestQuery
55470
+ * * Base View: vwSearchScopeTestQueries
55471
+ * * @description Canonical test queries owned by a SearchScope. Used by scope authors to validate tuning changes — re-run a saved query after swapping the reranker or adjusting fusion weights and compare results to the prior run.
55472
+ * * Primary Key: ID
55473
+ * @extends {BaseEntity}
55474
+ * @class
55475
+ * @public
55476
+ */
55477
+ export declare class MJSearchScopeTestQueryEntity extends BaseEntity<MJSearchScopeTestQueryEntityType> {
55478
+ /**
55479
+ * Loads the MJ: Search Scope Test Queries record from the database
55480
+ * @param ID: string - primary key value to load the MJ: Search Scope Test Queries record.
55481
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
55482
+ * @returns {Promise<boolean>} - true if successful, false otherwise
55483
+ * @public
55484
+ * @async
55485
+ * @memberof MJSearchScopeTestQueryEntity
55486
+ * @method
55487
+ * @override
55488
+ */
55489
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
55490
+ /**
55491
+ * * Field Name: ID
55492
+ * * Display Name: ID
55493
+ * * SQL Data Type: uniqueidentifier
55494
+ * * Default Value: newsequentialid()
55495
+ */
55496
+ get ID(): string;
55497
+ set ID(value: string);
55498
+ /**
55499
+ * * Field Name: SearchScopeID
55500
+ * * Display Name: Search Scope
55501
+ * * SQL Data Type: uniqueidentifier
55502
+ * * Related Entity/Foreign Key: MJ: Search Scopes (vwSearchScopes.ID)
55503
+ * * Description: The SearchScope this test query belongs to. Cascade-restricted via FK so accidental scope deletion preserves test history.
55504
+ */
55505
+ get SearchScopeID(): string;
55506
+ set SearchScopeID(value: string);
55507
+ /**
55508
+ * * Field Name: Label
55509
+ * * Display Name: Label
55510
+ * * SQL Data Type: nvarchar(200)
55511
+ * * Description: Short human-readable label for the test query, shown in the form's test-query grid (e.g. "VIP customer escalation", "expense reimbursement policy").
55512
+ */
55513
+ get Label(): string;
55514
+ set Label(value: string);
55515
+ /**
55516
+ * * Field Name: Query
55517
+ * * Display Name: Query
55518
+ * * SQL Data Type: nvarchar(MAX)
55519
+ * * Description: The query text itself. NVARCHAR(MAX) because canonical queries can be full sentences or chunks of natural-language context.
55520
+ */
55521
+ get Query(): string;
55522
+ set Query(value: string);
55523
+ /**
55524
+ * * Field Name: ExpectedTopResultEntity
55525
+ * * Display Name: Expected Top Result Entity
55526
+ * * SQL Data Type: nvarchar(255)
55527
+ * * Description: Optional MJ entity name (e.g. "Contacts", "Documents") of the expected top result. When set together with ExpectedTopResultRecordID, lets the test runner assert that the tuned scope returns the right record at rank #1 — a regression tripwire for fusion / reranker changes.
55528
+ */
55529
+ get ExpectedTopResultEntity(): string | null;
55530
+ set ExpectedTopResultEntity(value: string | null);
55531
+ /**
55532
+ * * Field Name: ExpectedTopResultRecordID
55533
+ * * Display Name: Expected Top Result Record ID
55534
+ * * SQL Data Type: uniqueidentifier
55535
+ * * Description: Optional record ID of the expected top result, paired with ExpectedTopResultEntity. NULL = no assertion (the query is exploratory).
55536
+ */
55537
+ get ExpectedTopResultRecordID(): string | null;
55538
+ set ExpectedTopResultRecordID(value: string | null);
55539
+ /**
55540
+ * * Field Name: Notes
55541
+ * * Display Name: Notes
55542
+ * * SQL Data Type: nvarchar(MAX)
55543
+ * * Description: Free-form notes explaining why this query is canonical or what edge case it represents.
55544
+ */
55545
+ get Notes(): string | null;
55546
+ set Notes(value: string | null);
55547
+ /**
55548
+ * * Field Name: __mj_CreatedAt
55549
+ * * Display Name: Created At
55550
+ * * SQL Data Type: datetimeoffset
55551
+ * * Default Value: getutcdate()
55552
+ */
55553
+ get __mj_CreatedAt(): Date;
55554
+ /**
55555
+ * * Field Name: __mj_UpdatedAt
55556
+ * * Display Name: Updated At
55557
+ * * SQL Data Type: datetimeoffset
55558
+ * * Default Value: getutcdate()
55559
+ */
55560
+ get __mj_UpdatedAt(): Date;
55561
+ /**
55562
+ * * Field Name: SearchScope
55563
+ * * Display Name: Search Scope Name
55564
+ * * SQL Data Type: nvarchar(200)
55565
+ */
55566
+ get SearchScope(): string;
55567
+ }
55568
+ /**
55569
+ * MJ: Search Scopes - strongly typed entity sub-class
55570
+ * * Schema: __mj
55571
+ * * Base Table: SearchScope
55572
+ * * Base View: vwSearchScopes
55573
+ * * @description A named, reusable boundary defining WHICH content participates in a search (providers, external indexes, entities, storage accounts). Combined with a runtime SearchContext, it enables multi-tenant, permission-aware, agent-friendly retrieval. See plans/search-scopes-rag-plus.md.
55574
+ * * Primary Key: ID
55575
+ * @extends {BaseEntity}
55576
+ * @class
55577
+ * @public
55578
+ */
55579
+ export declare class MJSearchScopeEntity extends BaseEntity<MJSearchScopeEntityType> {
55580
+ /**
55581
+ * Loads the MJ: Search Scopes record from the database
55582
+ * @param ID: string - primary key value to load the MJ: Search Scopes record.
55583
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
55584
+ * @returns {Promise<boolean>} - true if successful, false otherwise
55585
+ * @public
55586
+ * @async
55587
+ * @memberof MJSearchScopeEntity
55588
+ * @method
55589
+ * @override
55590
+ */
55591
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
55592
+ /**
55593
+ * * Field Name: ID
55594
+ * * Display Name: ID
55595
+ * * SQL Data Type: uniqueidentifier
55596
+ * * Default Value: newsequentialid()
55597
+ */
55598
+ get ID(): string;
55599
+ set ID(value: string);
55600
+ /**
55601
+ * * Field Name: Name
55602
+ * * Display Name: Name
55603
+ * * SQL Data Type: nvarchar(200)
55604
+ * * Description: Human-readable scope name (e.g., "HR Policies", "Engineering Docs"). Unique across the system.
55605
+ */
55606
+ get Name(): string;
55607
+ set Name(value: string);
55608
+ /**
55609
+ * * Field Name: Description
55610
+ * * Display Name: Description
55611
+ * * SQL Data Type: nvarchar(MAX)
55612
+ * * Description: Detailed description of what this scope covers. Surfaced to agents in the available-scopes prompt injection so the LLM can choose a scope.
55613
+ */
55614
+ get Description(): string | null;
55615
+ set Description(value: string | null);
55616
+ /**
55617
+ * * Field Name: Icon
55618
+ * * Display Name: Icon
55619
+ * * SQL Data Type: nvarchar(200)
55620
+ * * Description: Font Awesome (or equivalent) icon class used by the scope selector UI.
55621
+ */
55622
+ get Icon(): string | null;
55623
+ set Icon(value: string | null);
55624
+ /**
55625
+ * * Field Name: IsGlobal
55626
+ * * Display Name: Is Global
55627
+ * * SQL Data Type: bit
55628
+ * * Default Value: 0
55629
+ * * Description: If true, this scope includes everything (equivalent to no scope filtering). Exactly one Global scope should exist; it is seeded via metadata sync.
55630
+ */
55631
+ get IsGlobal(): boolean;
55632
+ set IsGlobal(value: boolean);
55633
+ /**
55634
+ * * Field Name: IsDefault
55635
+ * * Display Name: Is Default
55636
+ * * SQL Data Type: bit
55637
+ * * Default Value: 0
55638
+ * * Description: If true, this is the default scope for users/agents that do not specify one.
55639
+ */
55640
+ get IsDefault(): boolean;
55641
+ set IsDefault(value: boolean);
55642
+ /**
55643
+ * * Field Name: OwnerUserID
55644
+ * * Display Name: Owner User
55645
+ * * SQL Data Type: uniqueidentifier
55646
+ * * Related Entity/Foreign Key: MJ: Users (vwUsers.ID)
55647
+ * * Description: NULL = organization-wide scope. Set = personal scope owned by this user (visible/usable only by that user unless explicitly shared).
55648
+ */
55649
+ get OwnerUserID(): string | null;
55650
+ set OwnerUserID(value: string | null);
55651
+ /**
55652
+ * * Field Name: Status
55653
+ * * Display Name: Status
55654
+ * * SQL Data Type: nvarchar(20)
55655
+ * * Default Value: Active
55656
+ * * Value List Type: List
55657
+ * * Possible Values
55658
+ * * Active
55659
+ * * Inactive
55660
+ * * Description: Lifecycle status. Only Active scopes are considered at query time.
55661
+ */
55662
+ get Status(): 'Active' | 'Inactive';
55663
+ set Status(value: 'Active' | 'Inactive');
55664
+ /**
55665
+ * * Field Name: StartAt
55666
+ * * Display Name: Start At
55667
+ * * SQL Data Type: datetimeoffset
55668
+ * * Description: Optional time-window activation. Scope is inactive before StartAt. NULL = immediately active.
55669
+ */
55670
+ get StartAt(): Date | null;
55671
+ set StartAt(value: Date | null);
55672
+ /**
55673
+ * * Field Name: EndAt
55674
+ * * Display Name: End At
55675
+ * * SQL Data Type: datetimeoffset
55676
+ * * Description: Optional time-window deactivation. Scope is inactive after EndAt. NULL = no expiry.
55677
+ */
55678
+ get EndAt(): Date | null;
55679
+ set EndAt(value: Date | null);
55680
+ /**
55681
+ * * Field Name: ScopeConfig
55682
+ * * Display Name: Scope Configuration
55683
+ * * SQL Data Type: nvarchar(MAX)
55684
+ * * Description: JSON configuration for advanced scope behavior. Recognized keys: rrfK (RRF k parameter), fusionWeights (per-provider weights), reRanker (optional re-ranker stage config: driverClass, inputTopN, outputTopN, config), permissionOverfetchFactor.
55685
+ */
55686
+ get ScopeConfig(): string | null;
55687
+ set ScopeConfig(value: string | null);
55688
+ /**
55689
+ * * Field Name: SearchContextConfig
55690
+ * * Display Name: Search Context Configuration
55691
+ * * SQL Data Type: nvarchar(MAX)
55692
+ * * Description: JSON defining available multi-tenant SearchContext dimensions, inheritance modes, and validation rules. Uses the SecondaryScopeConfig structure shared with the agent memory system (@memberjunction/ai-core-plus). NULL = scope is not multi-tenant aware.
55693
+ */
55694
+ get SearchContextConfig(): string | null;
55695
+ set SearchContextConfig(value: string | null);
55696
+ /**
55697
+ * * Field Name: RerankerBudgetCents
55698
+ * * Display Name: Reranker Budget (Cents)
55699
+ * * SQL Data Type: int
55700
+ * * Description: Optional cap on reranker spend (in cents) per search invocation against this scope. NULL means uncapped — existing behavior. When set, the SearchEngine's budget guard short-circuits any reranker call whose projected cost would push the run total past this value, and accumulates actual post-call cost via each reranker's CostReporter callback (BaseReRanker.CostReporter). Real-provider rerankers (Cohere, Voyage, OpenAI) report cost; NoopReRanker and BGEReRanker report zero (local / pass-through).
55701
+ */
55702
+ get RerankerBudgetCents(): number | null;
55703
+ set RerankerBudgetCents(value: number | null);
55704
+ /**
55705
+ * * Field Name: __mj_CreatedAt
55706
+ * * Display Name: Created At
55707
+ * * SQL Data Type: datetimeoffset
55708
+ * * Default Value: getutcdate()
55709
+ */
55710
+ get __mj_CreatedAt(): Date;
55711
+ /**
55712
+ * * Field Name: __mj_UpdatedAt
55713
+ * * Display Name: Updated At
55714
+ * * SQL Data Type: datetimeoffset
55715
+ * * Default Value: getutcdate()
55716
+ */
55717
+ get __mj_UpdatedAt(): Date;
55718
+ /**
55719
+ * * Field Name: OwnerUser
55720
+ * * Display Name: Owner User Name
55721
+ * * SQL Data Type: nvarchar(100)
55722
+ */
55723
+ get OwnerUser(): string | null;
55724
+ }
54146
55725
  /**
54147
55726
  * MJ: Skills - strongly typed entity sub-class
54148
55727
  * * Schema: __mj