@memberjunction/core-entities 3.1.1 → 3.3.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.
@@ -7,16 +7,16 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  };
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.ContentSourceParamSchema = exports.ContentProcessRunSchema = exports.ContentItemSchema = exports.ContentItemTagSchema = exports.ContentItemAttributeSchema = exports.ContentFileTypeSchema = exports.CompanyIntegrationSchema = exports.CompanyIntegrationRunSchema = exports.CompanyIntegrationRunDetailSchema = exports.CompanyIntegrationRunAPILogSchema = exports.CompanyIntegrationRecordMapSchema = exports.CompanySchema = exports.CommunicationRunSchema = exports.CommunicationProviderSchema = exports.CommunicationProviderMessageTypeSchema = exports.CommunicationLogSchema = exports.CommunicationBaseMessageTypeSchema = exports.AuthorizationSchema = exports.AuthorizationRoleSchema = exports.AuditLogSchema = exports.AuditLogTypeSchema = exports.ApplicationSchema = exports.ApplicationSettingSchema = exports.ApplicationEntitySchema = exports.AIResultCacheSchema = exports.AIPromptSchema = exports.AIPromptTypeSchema = exports.AIPromptCategorySchema = exports.AIModelSchema = exports.AIModelTypeSchema = exports.AIModelActionSchema = exports.AIAgentSchema = exports.AIAgentRequestSchema = exports.AIAgentNoteSchema = exports.AIAgentNoteTypeSchema = exports.AIAgentModelSchema = exports.AIAgentLearningCycleSchema = exports.AIAgentActionSchema = exports.AIActionSchema = exports.ActionSchema = exports.ActionResultCodeSchema = exports.ActionParamSchema = exports.ActionLibrarySchema = exports.ActionFilterSchema = exports.ActionExecutionLogSchema = exports.ActionContextSchema = exports.ActionContextTypeSchema = exports.ActionCategorySchema = exports.ActionAuthorizationSchema = exports.loadModule = void 0;
10
- exports.IntegrationURLFormatSchema = exports.GeneratedCodeSchema = exports.GeneratedCodeCategorySchema = exports.flyway_schema_historySchema = exports.FileSchema = exports.FileStorageProviderSchema = exports.FileEntityRecordLinkSchema = exports.FileCategorySchema = exports.ExplorerNavigationItemSchema = exports.ErrorLogSchema = exports.EntitySettingSchema = exports.EntityRelationshipSchema = exports.EntityRelationshipDisplayComponentSchema = exports.EntityRecordDocumentSchema = exports.EntityPermissionSchema = exports.EntityFieldSchema = exports.EntityFieldValueSchema = exports.EntityDocumentSchema = exports.EntityDocumentTypeSchema = exports.EntityDocumentSettingSchema = exports.EntityDocumentRunSchema = exports.EntityCommunicationMessageTypeSchema = exports.EntityCommunicationFieldSchema = exports.EntityAIActionSchema = exports.EntityActionSchema = exports.EntityActionParamSchema = exports.EntityActionInvocationSchema = exports.EntityActionInvocationTypeSchema = exports.EntityActionFilterSchema = exports.EntitySchema = exports.EmployeeSchema = exports.EmployeeSkillSchema = exports.EmployeeRoleSchema = exports.EmployeeCompanyIntegrationSchema = exports.DuplicateRunSchema = exports.DuplicateRunDetailSchema = exports.DuplicateRunDetailMatchSchema = exports.DatasetSchema = exports.DatasetItemSchema = exports.DataContextSchema = exports.DataContextItemSchema = exports.DashboardSchema = exports.DashboardCategorySchema = exports.ConversationSchema = exports.ConversationDetailSchema = exports.ContentTypeSchema = exports.ContentTypeAttributeSchema = exports.ContentSourceSchema = exports.ContentSourceTypeSchema = exports.ContentSourceTypeParamSchema = void 0;
11
- exports.ComponentLibraryLinkSchema = exports.ComponentLibrarySchema = exports.ComponentDependencySchema = exports.CollectionSchema = exports.CollectionPermissionSchema = exports.CollectionArtifactSchema = exports.ArtifactSchema = exports.ArtifactVersionSchema = exports.ArtifactVersionAttributeSchema = exports.ArtifactUseSchema = exports.ArtifactTypeSchema = exports.ArtifactPermissionSchema = exports.AIVendorSchema = exports.AIVendorTypeSchema = exports.AIVendorTypeDefinitionSchema = exports.AIPromptRunSchema = exports.AIPromptRunMediaSchema = exports.AIPromptModelSchema = exports.AIModelVendorSchema = exports.AIModelPriceUnitTypeSchema = exports.AIModelPriceTypeSchema = exports.AIModelModalitySchema = exports.AIModelCostSchema = exports.AIModelArchitectureSchema = exports.AIModalitySchema = exports.AICredentialBindingSchema = exports.AIConfigurationSchema = exports.AIConfigurationParamSchema = exports.AIArchitectureSchema = exports.AIAgentTypeSchema = exports.AIAgentStepSchema = exports.AIAgentStepPathSchema = exports.AIAgentRunSchema = exports.AIAgentRunStepSchema = exports.AIAgentRunMediaSchema = exports.AIAgentRelationshipSchema = exports.AIAgentPromptSchema = exports.AIAgentPermissionSchema = exports.AIAgentModalitySchema = exports.AIAgentExampleSchema = exports.AIAgentDataSourceSchema = exports.AIAgentConfigurationSchema = exports.AIAgentArtifactTypeSchema = exports.AccessControlRuleSchema = exports.ListSchema = exports.ListDetailSchema = exports.ListCategorySchema = exports.LibraryItemSchema = exports.LibrarySchema = exports.IntegrationSchema = void 0;
12
- exports.QueryEntitySchema = exports.QueryCategorySchema = exports.QuerySchema = exports.OutputTriggerTypeSchema = exports.OutputFormatTypeSchema = exports.OutputDeliveryTypeSchema = exports.UserSettingSchema = exports.TestSchema = exports.TestTypeSchema = exports.TestSuiteSchema = exports.TestSuiteTestSchema = exports.TestSuiteRunSchema = exports.TestRunSchema = exports.TestRunFeedbackSchema = exports.TestRubricSchema = exports.TaskSchema = exports.TaskTypeSchema = exports.TaskDependencySchema = exports.ScheduledJobSchema = exports.ScheduledJobTypeSchema = exports.ScheduledJobRunSchema = exports.ReportVersionSchema = exports.ReportUserStateSchema = exports.RecordLinkSchema = exports.QueryParameterSchema = exports.PublicLinkSchema = exports.ProjectSchema = exports.ListShareSchema = exports.ListInvitationSchema = exports.EnvironmentSchema = exports.EncryptionKeySchema = exports.EncryptionKeySourceSchema = exports.EncryptionAlgorithmSchema = exports.DashboardUserStateSchema = exports.DashboardUserPreferenceSchema = exports.DashboardPermissionSchema = exports.DashboardPartTypeSchema = exports.DashboardCategoryPermissionSchema = exports.DashboardCategoryLinkSchema = exports.CredentialSchema = exports.CredentialTypeSchema = exports.CredentialCategorySchema = exports.ConversationDetailRatingSchema = exports.ConversationDetailAttachmentSchema = exports.ConversationDetailArtifactSchema = exports.ConversationArtifactSchema = exports.ConversationArtifactVersionSchema = exports.ConversationArtifactPermissionSchema = exports.ComponentSchema = exports.ComponentRegistrySchema = void 0;
13
- exports.WorkspaceItemSchema = exports.WorkflowSchema = exports.WorkflowRunSchema = exports.WorkflowEngineSchema = exports.VersionInstallationSchema = exports.VectorIndexSchema = exports.VectorDatabaseSchema = exports.UserSchema = exports.UserViewSchema = exports.UserViewRunSchema = exports.UserViewRunDetailSchema = exports.UserViewCategorySchema = exports.UserRoleSchema = exports.UserRecordLogSchema = exports.UserNotificationSchema = exports.UserFavoriteSchema = exports.UserApplicationSchema = exports.UserApplicationEntitySchema = exports.TemplateSchema = exports.TemplateParamSchema = exports.TemplateContentSchema = exports.TemplateContentTypeSchema = exports.TemplateCategorySchema = exports.TagSchema = exports.TaggedItemSchema = exports.SkillSchema = exports.SchemaInfoSchema = exports.ScheduledActionSchema = exports.ScheduledActionParamSchema = exports.RowLevelSecurityFilterSchema = exports.RoleSchema = exports.ResourceTypeSchema = exports.ResourcePermissionSchema = exports.ResourceLinkSchema = exports.ReportSchema = exports.ReportSnapshotSchema = exports.ReportCategorySchema = exports.RecordMergeLogSchema = exports.RecordMergeDeletionLogSchema = exports.RecordChangeSchema = exports.RecordChangeReplayRunSchema = exports.RecommendationSchema = exports.RecommendationRunSchema = exports.RecommendationProviderSchema = exports.RecommendationItemSchema = exports.QueueSchema = exports.QueueTypeSchema = exports.QueueTaskSchema = exports.QueryPermissionSchema = exports.QueryFieldSchema = void 0;
14
- exports.ContentSourceParamEntity = exports.ContentProcessRunEntity = exports.ContentItemEntity = exports.ContentItemTagEntity = exports.ContentItemAttributeEntity = exports.ContentFileTypeEntity = exports.CompanyIntegrationEntity = exports.CompanyIntegrationRunEntity = exports.CompanyIntegrationRunDetailEntity = exports.CompanyIntegrationRunAPILogEntity = exports.CompanyIntegrationRecordMapEntity = exports.CompanyEntity = exports.CommunicationRunEntity = exports.CommunicationProviderEntity = exports.CommunicationProviderMessageTypeEntity = exports.CommunicationLogEntity = exports.CommunicationBaseMessageTypeEntity = exports.AuthorizationEntity = exports.AuthorizationRoleEntity = exports.AuditLogEntity = exports.AuditLogTypeEntity = exports.ApplicationEntity = exports.ApplicationSettingEntity = exports.ApplicationEntityEntity = exports.AIResultCacheEntity = exports.AIPromptEntity = exports.AIPromptTypeEntity = exports.AIPromptCategoryEntity = exports.AIModelEntity = exports.AIModelTypeEntity = exports.AIModelActionEntity = exports.AIAgentEntity = exports.AIAgentRequestEntity = exports.AIAgentNoteEntity = exports.AIAgentNoteTypeEntity = exports.AIAgentModelEntity = exports.AIAgentLearningCycleEntity = exports.AIAgentActionEntity = exports.AIActionEntity = exports.ActionEntity = exports.ActionResultCodeEntity = exports.ActionParamEntity = exports.ActionLibraryEntity = exports.ActionFilterEntity = exports.ActionExecutionLogEntity = exports.ActionContextEntity = exports.ActionContextTypeEntity = exports.ActionCategoryEntity = exports.ActionAuthorizationEntity = exports.WorkspaceSchema = void 0;
15
- exports.IntegrationURLFormatEntity = exports.GeneratedCodeEntity = exports.GeneratedCodeCategoryEntity = exports.flyway_schema_historyEntity = exports.FileEntity = exports.FileStorageProviderEntity = exports.FileEntityRecordLinkEntity = exports.FileCategoryEntity = exports.ExplorerNavigationItemEntity = exports.ErrorLogEntity = exports.EntitySettingEntity = exports.EntityRelationshipEntity = exports.EntityRelationshipDisplayComponentEntity = exports.EntityRecordDocumentEntity = exports.EntityPermissionEntity = exports.EntityFieldEntity = exports.EntityFieldValueEntity = exports.EntityDocumentEntity = exports.EntityDocumentTypeEntity = exports.EntityDocumentSettingEntity = exports.EntityDocumentRunEntity = exports.EntityCommunicationMessageTypeEntity = exports.EntityCommunicationFieldEntity = exports.EntityAIActionEntity = exports.EntityActionEntity = exports.EntityActionParamEntity = exports.EntityActionInvocationEntity = exports.EntityActionInvocationTypeEntity = exports.EntityActionFilterEntity = exports.EntityEntity = exports.EmployeeEntity = exports.EmployeeSkillEntity = exports.EmployeeRoleEntity = exports.EmployeeCompanyIntegrationEntity = exports.DuplicateRunEntity = exports.DuplicateRunDetailEntity = exports.DuplicateRunDetailMatchEntity = exports.DatasetEntity = exports.DatasetItemEntity = exports.DataContextEntity = exports.DataContextItemEntity = exports.DashboardEntity = exports.DashboardCategoryEntity = exports.ConversationEntity = exports.ConversationDetailEntity = exports.ContentTypeEntity = exports.ContentTypeAttributeEntity = exports.ContentSourceEntity = exports.ContentSourceTypeEntity = exports.ContentSourceTypeParamEntity = void 0;
16
- exports.ComponentLibraryLinkEntity = exports.ComponentLibraryEntity = exports.ComponentDependencyEntity = exports.CollectionEntity = exports.CollectionPermissionEntity = exports.CollectionArtifactEntity = exports.ArtifactEntity = exports.ArtifactVersionEntity = exports.ArtifactVersionAttributeEntity = exports.ArtifactUseEntity = exports.ArtifactTypeEntity = exports.ArtifactPermissionEntity = exports.AIVendorEntity = exports.AIVendorTypeEntity = exports.AIVendorTypeDefinitionEntity = exports.AIPromptRunEntity = exports.AIPromptRunMediaEntity = exports.AIPromptModelEntity = exports.AIModelVendorEntity = exports.AIModelPriceUnitTypeEntity = exports.AIModelPriceTypeEntity = exports.AIModelModalityEntity = exports.AIModelCostEntity = exports.AIModelArchitectureEntity = exports.AIModalityEntity = exports.AICredentialBindingEntity = exports.AIConfigurationEntity = exports.AIConfigurationParamEntity = exports.AIArchitectureEntity = exports.AIAgentTypeEntity = exports.AIAgentStepEntity = exports.AIAgentStepPathEntity = exports.AIAgentRunEntity = exports.AIAgentRunStepEntity = exports.AIAgentRunMediaEntity = exports.AIAgentRelationshipEntity = exports.AIAgentPromptEntity = exports.AIAgentPermissionEntity = exports.AIAgentModalityEntity = exports.AIAgentExampleEntity = exports.AIAgentDataSourceEntity = exports.AIAgentConfigurationEntity = exports.AIAgentArtifactTypeEntity = exports.AccessControlRuleEntity = exports.ListEntity = exports.ListDetailEntity = exports.ListCategoryEntity = exports.LibraryItemEntity = exports.LibraryEntity = exports.IntegrationEntity = void 0;
17
- exports.QueryEntityEntity = exports.QueryCategoryEntity = exports.QueryEntity = exports.OutputTriggerTypeEntity = exports.OutputFormatTypeEntity = exports.OutputDeliveryTypeEntity = exports.UserSettingEntity = exports.TestEntity = exports.TestTypeEntity = exports.TestSuiteEntity = exports.TestSuiteTestEntity = exports.TestSuiteRunEntity = exports.TestRunEntity = exports.TestRunFeedbackEntity = exports.TestRubricEntity = exports.TaskEntity = exports.TaskTypeEntity = exports.TaskDependencyEntity = exports.ScheduledJobEntity = exports.ScheduledJobTypeEntity = exports.ScheduledJobRunEntity = exports.ReportVersionEntity = exports.ReportUserStateEntity = exports.RecordLinkEntity = exports.QueryParameterEntity = exports.PublicLinkEntity = exports.ProjectEntity = exports.ListShareEntity = exports.ListInvitationEntity = exports.EnvironmentEntity = exports.EncryptionKeyEntity = exports.EncryptionKeySourceEntity = exports.EncryptionAlgorithmEntity = exports.DashboardUserStateEntity = exports.DashboardUserPreferenceEntity = exports.DashboardPermissionEntity = exports.DashboardPartTypeEntity = exports.DashboardCategoryPermissionEntity = exports.DashboardCategoryLinkEntity = exports.CredentialEntity = exports.CredentialTypeEntity = exports.CredentialCategoryEntity = exports.ConversationDetailRatingEntity = exports.ConversationDetailAttachmentEntity = exports.ConversationDetailArtifactEntity = exports.ConversationArtifactEntity = exports.ConversationArtifactVersionEntity = exports.ConversationArtifactPermissionEntity = exports.ComponentEntity = exports.ComponentRegistryEntity = void 0;
18
- exports.WorkspaceItemEntity = exports.WorkflowEntity = exports.WorkflowRunEntity = exports.WorkflowEngineEntity = exports.VersionInstallationEntity = exports.VectorIndexEntity = exports.VectorDatabaseEntity = exports.UserEntity = exports.UserViewEntity = exports.UserViewRunEntity = exports.UserViewRunDetailEntity = exports.UserViewCategoryEntity = exports.UserRoleEntity = exports.UserRecordLogEntity = exports.UserNotificationEntity = exports.UserFavoriteEntity = exports.UserApplicationEntity = exports.UserApplicationEntityEntity = exports.TemplateEntity = exports.TemplateParamEntity = exports.TemplateContentEntity = exports.TemplateContentTypeEntity = exports.TemplateCategoryEntity = exports.TagEntity = exports.TaggedItemEntity = exports.SkillEntity = exports.SchemaInfoEntity = exports.ScheduledActionEntity = exports.ScheduledActionParamEntity = exports.RowLevelSecurityFilterEntity = exports.RoleEntity = exports.ResourceTypeEntity = exports.ResourcePermissionEntity = exports.ResourceLinkEntity = exports.ReportEntity = exports.ReportSnapshotEntity = exports.ReportCategoryEntity = exports.RecordMergeLogEntity = exports.RecordMergeDeletionLogEntity = exports.RecordChangeEntity = exports.RecordChangeReplayRunEntity = exports.RecommendationEntity = exports.RecommendationRunEntity = exports.RecommendationProviderEntity = exports.RecommendationItemEntity = exports.QueueEntity = exports.QueueTypeEntity = exports.QueueTaskEntity = exports.QueryPermissionEntity = exports.QueryFieldEntity = void 0;
19
- exports.WorkspaceEntity = void 0;
10
+ exports.IntegrationSchema = exports.IntegrationURLFormatSchema = exports.GeneratedCodeSchema = exports.GeneratedCodeCategorySchema = exports.FileSchema = exports.FileStorageProviderSchema = exports.FileEntityRecordLinkSchema = exports.FileCategorySchema = exports.ExplorerNavigationItemSchema = exports.ErrorLogSchema = exports.EntitySettingSchema = exports.EntityRelationshipSchema = exports.EntityRelationshipDisplayComponentSchema = exports.EntityRecordDocumentSchema = exports.EntityPermissionSchema = exports.EntityFieldSchema = exports.EntityFieldValueSchema = exports.EntityDocumentSchema = exports.EntityDocumentTypeSchema = exports.EntityDocumentSettingSchema = exports.EntityDocumentRunSchema = exports.EntityCommunicationMessageTypeSchema = exports.EntityCommunicationFieldSchema = exports.EntityAIActionSchema = exports.EntityActionSchema = exports.EntityActionParamSchema = exports.EntityActionInvocationSchema = exports.EntityActionInvocationTypeSchema = exports.EntityActionFilterSchema = exports.EntitySchema = exports.EmployeeSchema = exports.EmployeeSkillSchema = exports.EmployeeRoleSchema = exports.EmployeeCompanyIntegrationSchema = exports.DuplicateRunSchema = exports.DuplicateRunDetailSchema = exports.DuplicateRunDetailMatchSchema = exports.DatasetSchema = exports.DatasetItemSchema = exports.DataContextSchema = exports.DataContextItemSchema = exports.DashboardSchema = exports.DashboardCategorySchema = exports.ConversationSchema = exports.ConversationDetailSchema = exports.ContentTypeSchema = exports.ContentTypeAttributeSchema = exports.ContentSourceSchema = exports.ContentSourceTypeSchema = exports.ContentSourceTypeParamSchema = void 0;
11
+ exports.ArtifactSchema = exports.ArtifactVersionSchema = exports.ArtifactVersionAttributeSchema = exports.ArtifactUseSchema = exports.ArtifactTypeSchema = exports.ArtifactPermissionSchema = exports.APIScopeSchema = exports.APIKeySchema = exports.APIKeyUsageLogSchema = exports.APIKeyScopeSchema = exports.APIKeyApplicationSchema = exports.APIApplicationSchema = exports.APIApplicationScopeSchema = exports.AIVendorSchema = exports.AIVendorTypeSchema = exports.AIVendorTypeDefinitionSchema = exports.AIPromptRunSchema = exports.AIPromptRunMediaSchema = exports.AIPromptModelSchema = exports.AIModelVendorSchema = exports.AIModelPriceUnitTypeSchema = exports.AIModelPriceTypeSchema = exports.AIModelModalitySchema = exports.AIModelCostSchema = exports.AIModelArchitectureSchema = exports.AIModalitySchema = exports.AICredentialBindingSchema = exports.AIConfigurationSchema = exports.AIConfigurationParamSchema = exports.AIArchitectureSchema = exports.AIAgentTypeSchema = exports.AIAgentStepSchema = exports.AIAgentStepPathSchema = exports.AIAgentRunSchema = exports.AIAgentRunStepSchema = exports.AIAgentRunMediaSchema = exports.AIAgentRelationshipSchema = exports.AIAgentPromptSchema = exports.AIAgentPermissionSchema = exports.AIAgentModalitySchema = exports.AIAgentExampleSchema = exports.AIAgentDataSourceSchema = exports.AIAgentConfigurationSchema = exports.AIAgentArtifactTypeSchema = exports.AccessControlRuleSchema = exports.ListSchema = exports.ListDetailSchema = exports.ListCategorySchema = exports.LibraryItemSchema = exports.LibrarySchema = void 0;
12
+ exports.TestSchema = exports.TestTypeSchema = exports.TestSuiteSchema = exports.TestSuiteTestSchema = exports.TestSuiteRunSchema = exports.TestRunSchema = exports.TestRunFeedbackSchema = exports.TestRubricSchema = exports.TaskSchema = exports.TaskTypeSchema = exports.TaskDependencySchema = exports.ScheduledJobSchema = exports.ScheduledJobTypeSchema = exports.ScheduledJobRunSchema = exports.ReportVersionSchema = exports.ReportUserStateSchema = exports.RecordLinkSchema = exports.QueryParameterSchema = exports.PublicLinkSchema = exports.ProjectSchema = exports.ListShareSchema = exports.ListInvitationSchema = exports.FileStorageAccountSchema = exports.EnvironmentSchema = exports.EncryptionKeySchema = exports.EncryptionKeySourceSchema = exports.EncryptionAlgorithmSchema = exports.DashboardUserStateSchema = exports.DashboardUserPreferenceSchema = exports.DashboardPermissionSchema = exports.DashboardPartTypeSchema = exports.DashboardCategoryPermissionSchema = exports.DashboardCategoryLinkSchema = exports.CredentialSchema = exports.CredentialTypeSchema = exports.CredentialCategorySchema = exports.ConversationDetailRatingSchema = exports.ConversationDetailAttachmentSchema = exports.ConversationDetailArtifactSchema = exports.ConversationArtifactSchema = exports.ConversationArtifactVersionSchema = exports.ConversationArtifactPermissionSchema = exports.ComponentSchema = exports.ComponentRegistrySchema = exports.ComponentLibraryLinkSchema = exports.ComponentLibrarySchema = exports.ComponentDependencySchema = exports.CollectionSchema = exports.CollectionPermissionSchema = exports.CollectionArtifactSchema = void 0;
13
+ exports.UserViewRunSchema = exports.UserViewRunDetailSchema = exports.UserViewCategorySchema = exports.UserRoleSchema = exports.UserRecordLogSchema = exports.UserNotificationSchema = exports.UserFavoriteSchema = exports.UserApplicationSchema = exports.UserApplicationEntitySchema = exports.TemplateSchema = exports.TemplateParamSchema = exports.TemplateContentSchema = exports.TemplateContentTypeSchema = exports.TemplateCategorySchema = exports.TagSchema = exports.TaggedItemSchema = exports.SkillSchema = exports.SchemaInfoSchema = exports.ScheduledActionSchema = exports.ScheduledActionParamSchema = exports.RowLevelSecurityFilterSchema = exports.RoleSchema = exports.ResourceTypeSchema = exports.ResourcePermissionSchema = exports.ResourceLinkSchema = exports.ReportSchema = exports.ReportSnapshotSchema = exports.ReportCategorySchema = exports.RecordMergeLogSchema = exports.RecordMergeDeletionLogSchema = exports.RecordChangeSchema = exports.RecordChangeReplayRunSchema = exports.RecommendationSchema = exports.RecommendationRunSchema = exports.RecommendationProviderSchema = exports.RecommendationItemSchema = exports.QueueSchema = exports.QueueTypeSchema = exports.QueueTaskSchema = exports.QueryPermissionSchema = exports.QueryFieldSchema = exports.QueryEntitySchema = exports.QueryCategorySchema = exports.QuerySchema = exports.OutputTriggerTypeSchema = exports.OutputFormatTypeSchema = exports.OutputDeliveryTypeSchema = exports.UserSettingSchema = exports.UserNotificationTypeSchema = exports.UserNotificationPreferenceSchema = void 0;
14
+ exports.CompanyIntegrationRunAPILogEntity = exports.CompanyIntegrationRecordMapEntity = exports.CompanyEntity = exports.CommunicationRunEntity = exports.CommunicationProviderEntity = exports.CommunicationProviderMessageTypeEntity = exports.CommunicationLogEntity = exports.CommunicationBaseMessageTypeEntity = exports.AuthorizationEntity = exports.AuthorizationRoleEntity = exports.AuditLogEntity = exports.AuditLogTypeEntity = exports.ApplicationEntity = exports.ApplicationSettingEntity = exports.ApplicationEntityEntity = exports.AIResultCacheEntity = exports.AIPromptEntity = exports.AIPromptTypeEntity = exports.AIPromptCategoryEntity = exports.AIModelEntity = exports.AIModelTypeEntity = exports.AIModelActionEntity = exports.AIAgentEntity = exports.AIAgentRequestEntity = exports.AIAgentNoteEntity = exports.AIAgentNoteTypeEntity = exports.AIAgentModelEntity = exports.AIAgentLearningCycleEntity = exports.AIAgentActionEntity = exports.AIActionEntity = exports.ActionEntity = exports.ActionResultCodeEntity = exports.ActionParamEntity = exports.ActionLibraryEntity = exports.ActionFilterEntity = exports.ActionExecutionLogEntity = exports.ActionContextEntity = exports.ActionContextTypeEntity = exports.ActionCategoryEntity = exports.ActionAuthorizationEntity = exports.WorkspaceSchema = exports.WorkspaceItemSchema = exports.WorkflowSchema = exports.WorkflowRunSchema = exports.WorkflowEngineSchema = exports.VersionInstallationSchema = exports.VectorIndexSchema = exports.VectorDatabaseSchema = exports.UserSchema = exports.UserViewSchema = void 0;
15
+ exports.ErrorLogEntity = exports.EntitySettingEntity = exports.EntityRelationshipEntity = exports.EntityRelationshipDisplayComponentEntity = exports.EntityRecordDocumentEntity = exports.EntityPermissionEntity = exports.EntityFieldEntity = exports.EntityFieldValueEntity = exports.EntityDocumentEntity = exports.EntityDocumentTypeEntity = exports.EntityDocumentSettingEntity = exports.EntityDocumentRunEntity = exports.EntityCommunicationMessageTypeEntity = exports.EntityCommunicationFieldEntity = exports.EntityAIActionEntity = exports.EntityActionEntity = exports.EntityActionParamEntity = exports.EntityActionInvocationEntity = exports.EntityActionInvocationTypeEntity = exports.EntityActionFilterEntity = exports.EntityEntity = exports.EmployeeEntity = exports.EmployeeSkillEntity = exports.EmployeeRoleEntity = exports.EmployeeCompanyIntegrationEntity = exports.DuplicateRunEntity = exports.DuplicateRunDetailEntity = exports.DuplicateRunDetailMatchEntity = exports.DatasetEntity = exports.DatasetItemEntity = exports.DataContextEntity = exports.DataContextItemEntity = exports.DashboardEntity = exports.DashboardCategoryEntity = exports.ConversationEntity = exports.ConversationDetailEntity = exports.ContentTypeEntity = exports.ContentTypeAttributeEntity = exports.ContentSourceEntity = exports.ContentSourceTypeEntity = exports.ContentSourceTypeParamEntity = exports.ContentSourceParamEntity = exports.ContentProcessRunEntity = exports.ContentItemEntity = exports.ContentItemTagEntity = exports.ContentItemAttributeEntity = exports.ContentFileTypeEntity = exports.CompanyIntegrationEntity = exports.CompanyIntegrationRunEntity = exports.CompanyIntegrationRunDetailEntity = void 0;
16
+ exports.APIKeyScopeEntity = exports.APIKeyApplicationEntity = exports.APIApplicationEntity = exports.APIApplicationScopeEntity = exports.AIVendorEntity = exports.AIVendorTypeEntity = exports.AIVendorTypeDefinitionEntity = exports.AIPromptRunEntity = exports.AIPromptRunMediaEntity = exports.AIPromptModelEntity = exports.AIModelVendorEntity = exports.AIModelPriceUnitTypeEntity = exports.AIModelPriceTypeEntity = exports.AIModelModalityEntity = exports.AIModelCostEntity = exports.AIModelArchitectureEntity = exports.AIModalityEntity = exports.AICredentialBindingEntity = exports.AIConfigurationEntity = exports.AIConfigurationParamEntity = exports.AIArchitectureEntity = exports.AIAgentTypeEntity = exports.AIAgentStepEntity = exports.AIAgentStepPathEntity = exports.AIAgentRunEntity = exports.AIAgentRunStepEntity = exports.AIAgentRunMediaEntity = exports.AIAgentRelationshipEntity = exports.AIAgentPromptEntity = exports.AIAgentPermissionEntity = exports.AIAgentModalityEntity = exports.AIAgentExampleEntity = exports.AIAgentDataSourceEntity = exports.AIAgentConfigurationEntity = exports.AIAgentArtifactTypeEntity = exports.AccessControlRuleEntity = exports.ListEntity = exports.ListDetailEntity = exports.ListCategoryEntity = exports.LibraryItemEntity = exports.LibraryEntity = exports.IntegrationEntity = exports.IntegrationURLFormatEntity = exports.GeneratedCodeEntity = exports.GeneratedCodeCategoryEntity = exports.FileEntity = exports.FileStorageProviderEntity = exports.FileEntityRecordLinkEntity = exports.FileCategoryEntity = exports.ExplorerNavigationItemEntity = void 0;
17
+ exports.TaskTypeEntity = exports.TaskDependencyEntity = exports.ScheduledJobEntity = exports.ScheduledJobTypeEntity = exports.ScheduledJobRunEntity = exports.ReportVersionEntity = exports.ReportUserStateEntity = exports.RecordLinkEntity = exports.QueryParameterEntity = exports.PublicLinkEntity = exports.ProjectEntity = exports.ListShareEntity = exports.ListInvitationEntity = exports.FileStorageAccountEntity = exports.EnvironmentEntity = exports.EncryptionKeyEntity = exports.EncryptionKeySourceEntity = exports.EncryptionAlgorithmEntity = exports.DashboardUserStateEntity = exports.DashboardUserPreferenceEntity = exports.DashboardPermissionEntity = exports.DashboardPartTypeEntity = exports.DashboardCategoryPermissionEntity = exports.DashboardCategoryLinkEntity = exports.CredentialEntity = exports.CredentialTypeEntity = exports.CredentialCategoryEntity = exports.ConversationDetailRatingEntity = exports.ConversationDetailAttachmentEntity = exports.ConversationDetailArtifactEntity = exports.ConversationArtifactEntity = exports.ConversationArtifactVersionEntity = exports.ConversationArtifactPermissionEntity = exports.ComponentEntity = exports.ComponentRegistryEntity = exports.ComponentLibraryLinkEntity = exports.ComponentLibraryEntity = exports.ComponentDependencyEntity = exports.CollectionEntity = exports.CollectionPermissionEntity = exports.CollectionArtifactEntity = exports.ArtifactEntity = exports.ArtifactVersionEntity = exports.ArtifactVersionAttributeEntity = exports.ArtifactUseEntity = exports.ArtifactTypeEntity = exports.ArtifactPermissionEntity = exports.APIScopeEntity = exports.APIKeyEntity = exports.APIKeyUsageLogEntity = void 0;
18
+ exports.TemplateEntity = exports.TemplateParamEntity = exports.TemplateContentEntity = exports.TemplateContentTypeEntity = exports.TemplateCategoryEntity = exports.TagEntity = exports.TaggedItemEntity = exports.SkillEntity = exports.SchemaInfoEntity = exports.ScheduledActionEntity = exports.ScheduledActionParamEntity = exports.RowLevelSecurityFilterEntity = exports.RoleEntity = exports.ResourceTypeEntity = exports.ResourcePermissionEntity = exports.ResourceLinkEntity = exports.ReportEntity = exports.ReportSnapshotEntity = exports.ReportCategoryEntity = exports.RecordMergeLogEntity = exports.RecordMergeDeletionLogEntity = exports.RecordChangeEntity = exports.RecordChangeReplayRunEntity = exports.RecommendationEntity = exports.RecommendationRunEntity = exports.RecommendationProviderEntity = exports.RecommendationItemEntity = exports.QueueEntity = exports.QueueTypeEntity = exports.QueueTaskEntity = exports.QueryPermissionEntity = exports.QueryFieldEntity = exports.QueryEntityEntity = exports.QueryCategoryEntity = exports.QueryEntity = exports.OutputTriggerTypeEntity = exports.OutputFormatTypeEntity = exports.OutputDeliveryTypeEntity = exports.UserSettingEntity = exports.UserNotificationTypeEntity = exports.UserNotificationPreferenceEntity = exports.TestEntity = exports.TestTypeEntity = exports.TestSuiteEntity = exports.TestSuiteTestEntity = exports.TestSuiteRunEntity = exports.TestRunEntity = exports.TestRunFeedbackEntity = exports.TestRubricEntity = exports.TaskEntity = void 0;
19
+ exports.WorkspaceEntity = exports.WorkspaceItemEntity = exports.WorkflowEntity = exports.WorkflowRunEntity = exports.WorkflowEngineEntity = exports.VersionInstallationEntity = exports.VectorIndexEntity = exports.VectorDatabaseEntity = exports.UserEntity = exports.UserViewEntity = exports.UserViewRunEntity = exports.UserViewRunDetailEntity = exports.UserViewCategoryEntity = exports.UserRoleEntity = exports.UserRecordLogEntity = exports.UserNotificationEntity = exports.UserFavoriteEntity = exports.UserApplicationEntity = exports.UserApplicationEntityEntity = void 0;
20
20
  const core_1 = require("@memberjunction/core");
21
21
  const global_1 = require("@memberjunction/global");
22
22
  const zod_1 = require("zod");
@@ -384,7 +384,7 @@ exports.ActionParamSchema = zod_1.z.object({
384
384
  * * Input
385
385
  * * Output
386
386
  * * Description: Specifies whether this parameter is used for Input, Output, or Both directions in the action execution flow.`),
387
- ValueType: zod_1.z.union([zod_1.z.literal('BaseEntity Sub-Class'), zod_1.z.literal('BaseEntity Sub-Class'), zod_1.z.literal('MediaOutput'), zod_1.z.literal('Other'), zod_1.z.literal('Scalar'), zod_1.z.literal('Other'), zod_1.z.literal('Scalar'), zod_1.z.literal('Simple Object'), zod_1.z.literal('Simple Object')]).describe(`
387
+ ValueType: zod_1.z.union([zod_1.z.literal('BaseEntity Sub-Class'), zod_1.z.literal('BaseEntity Sub-Class'), zod_1.z.literal('MediaOutput'), zod_1.z.literal('Other'), zod_1.z.literal('Other'), zod_1.z.literal('Scalar'), zod_1.z.literal('Scalar'), zod_1.z.literal('Simple Object'), zod_1.z.literal('Simple Object')]).describe(`
388
388
  * * Field Name: ValueType
389
389
  * * Display Name: Value Type
390
390
  * * SQL Data Type: nvarchar(30)
@@ -394,9 +394,9 @@ exports.ActionParamSchema = zod_1.z.object({
394
394
  * * BaseEntity Sub-Class
395
395
  * * Other
396
396
  * * MediaOutput
397
- * * Scalar
398
397
  * * Other
399
398
  * * Scalar
399
+ * * Scalar
400
400
  * * Simple Object
401
401
  * * Simple Object
402
402
  * * Description: Tracks the basic value type of the parameter, additional information can be provided in the Description field`),
@@ -959,12 +959,12 @@ exports.AIAgentNoteSchema = zod_1.z.object({
959
959
  * * Default Value: newsequentialid()`),
960
960
  AgentID: zod_1.z.string().nullable().describe(`
961
961
  * * Field Name: AgentID
962
- * * Display Name: Agent ID
962
+ * * Display Name: Agent
963
963
  * * SQL Data Type: uniqueidentifier
964
964
  * * Related Entity/Foreign Key: AI Agents (vwAIAgents.ID)`),
965
965
  AgentNoteTypeID: zod_1.z.string().nullable().describe(`
966
966
  * * Field Name: AgentNoteTypeID
967
- * * Display Name: Agent Note Type ID
967
+ * * Display Name: Agent Note Type
968
968
  * * SQL Data Type: uniqueidentifier
969
969
  * * Related Entity/Foreign Key: AI Agent Note Types (vwAIAgentNoteTypes.ID)`),
970
970
  Note: zod_1.z.string().nullable().describe(`
@@ -984,7 +984,7 @@ exports.AIAgentNoteSchema = zod_1.z.object({
984
984
  * * Default Value: getutcdate()`),
985
985
  UserID: zod_1.z.string().nullable().describe(`
986
986
  * * Field Name: UserID
987
- * * Display Name: User ID
987
+ * * Display Name: User
988
988
  * * SQL Data Type: uniqueidentifier
989
989
  * * Related Entity/Foreign Key: Users (vwUsers.ID)
990
990
  * * Description: Foreign key referencing the ID column in the User table, indicating the user associated with the note. Used when Type=User`),
@@ -1003,7 +1003,7 @@ exports.AIAgentNoteSchema = zod_1.z.object({
1003
1003
  * * Description: Quick categorization of the note content: Preference (user preferences), Constraint (hard rules/requirements), Context (background information), Example (sample interactions), or Issue (known problems/limitations). Complements the more detailed AIAgentNoteType categorization.`),
1004
1004
  IsAutoGenerated: zod_1.z.boolean().describe(`
1005
1005
  * * Field Name: IsAutoGenerated
1006
- * * Display Name: Is Auto Generated
1006
+ * * Display Name: Auto Generated
1007
1007
  * * SQL Data Type: bit
1008
1008
  * * Default Value: 0
1009
1009
  * * Description: Indicates whether this note was automatically generated by an AI agent (1) or manually created (0).`),
@@ -1025,25 +1025,25 @@ exports.AIAgentNoteSchema = zod_1.z.object({
1025
1025
  * * Description: Status of the note: Pending (awaiting review), Active (in use), or Revoked (disabled).`),
1026
1026
  SourceConversationID: zod_1.z.string().nullable().describe(`
1027
1027
  * * Field Name: SourceConversationID
1028
- * * Display Name: Source Conversation ID
1028
+ * * Display Name: Source Conversation
1029
1029
  * * SQL Data Type: uniqueidentifier
1030
1030
  * * Related Entity/Foreign Key: Conversations (vwConversations.ID)
1031
1031
  * * Description: Optional reference to the conversation that inspired or generated this note.`),
1032
1032
  SourceConversationDetailID: zod_1.z.string().nullable().describe(`
1033
1033
  * * Field Name: SourceConversationDetailID
1034
- * * Display Name: Source Conversation Detail ID
1034
+ * * Display Name: Source Conversation Detail
1035
1035
  * * SQL Data Type: uniqueidentifier
1036
1036
  * * Related Entity/Foreign Key: Conversation Details (vwConversationDetails.ID)
1037
1037
  * * Description: Optional reference to the specific conversation message that inspired this note.`),
1038
1038
  SourceAIAgentRunID: zod_1.z.string().nullable().describe(`
1039
1039
  * * Field Name: SourceAIAgentRunID
1040
- * * Display Name: Source AI Agent Run ID
1040
+ * * Display Name: Source AI Agent Run
1041
1041
  * * SQL Data Type: uniqueidentifier
1042
1042
  * * Related Entity/Foreign Key: MJ: AI Agent Runs (vwAIAgentRuns.ID)
1043
1043
  * * Description: Optional reference to the AI agent run that generated this note.`),
1044
1044
  CompanyID: zod_1.z.string().nullable().describe(`
1045
1045
  * * Field Name: CompanyID
1046
- * * Display Name: Company ID
1046
+ * * Display Name: Company
1047
1047
  * * SQL Data Type: uniqueidentifier
1048
1048
  * * Related Entity/Foreign Key: Companies (vwCompanies.ID)
1049
1049
  * * Description: Optional company scope for this note. When populated with UserID, creates org+user specific notes.`),
@@ -1054,10 +1054,42 @@ exports.AIAgentNoteSchema = zod_1.z.object({
1054
1054
  * * Description: JSON array of embedding vector for semantic search on Note field. Auto-generated when Note changes.`),
1055
1055
  EmbeddingModelID: zod_1.z.string().nullable().describe(`
1056
1056
  * * Field Name: EmbeddingModelID
1057
- * * Display Name: Embedding Model ID
1057
+ * * Display Name: Embedding Model
1058
1058
  * * SQL Data Type: uniqueidentifier
1059
1059
  * * Related Entity/Foreign Key: AI Models (vwAIModels.ID)
1060
1060
  * * Description: Reference to the AI model used to generate the embedding vector.`),
1061
+ PrimaryScopeEntityID: zod_1.z.string().nullable().describe(`
1062
+ * * Field Name: PrimaryScopeEntityID
1063
+ * * Display Name: Primary Scope Entity
1064
+ * * SQL Data Type: uniqueidentifier
1065
+ * * Related Entity/Foreign Key: Entities (vwEntities.ID)
1066
+ * * Description: Foreign key to Entity table identifying which entity type is used for primary scoping. NULL means this is a global note.`),
1067
+ PrimaryScopeRecordID: zod_1.z.string().nullable().describe(`
1068
+ * * Field Name: PrimaryScopeRecordID
1069
+ * * Display Name: Primary Scope Record
1070
+ * * SQL Data Type: nvarchar(100)
1071
+ * * Description: The record ID within the primary scope entity. NULL means global note. When set with empty SecondaryScopes, indicates primary-scope-only note.`),
1072
+ SecondaryScopes: zod_1.z.string().nullable().describe(`
1073
+ * * Field Name: SecondaryScopes
1074
+ * * Display Name: Secondary Scopes
1075
+ * * SQL Data Type: nvarchar(MAX)
1076
+ * * Description: JSON object containing additional scope dimensions. Empty/NULL with PrimaryScopeRecordID set = org-level note. Populated = fully-scoped note.`),
1077
+ LastAccessedAt: zod_1.z.date().nullable().describe(`
1078
+ * * Field Name: LastAccessedAt
1079
+ * * Display Name: Last Accessed At
1080
+ * * SQL Data Type: datetimeoffset
1081
+ * * Description: Timestamp of when this note was last accessed/injected into agent context. Used for lifecycle management and cleanup.`),
1082
+ AccessCount: zod_1.z.number().describe(`
1083
+ * * Field Name: AccessCount
1084
+ * * Display Name: Access Count
1085
+ * * SQL Data Type: int
1086
+ * * Default Value: 0
1087
+ * * Description: Number of times this note has been accessed/injected into agent context. Used for analytics and determining note value.`),
1088
+ ExpiresAt: zod_1.z.date().nullable().describe(`
1089
+ * * Field Name: ExpiresAt
1090
+ * * Display Name: Expires At
1091
+ * * SQL Data Type: datetimeoffset
1092
+ * * Description: Optional expiration timestamp. Notes past this date are candidates for archival. NULL means no expiration.`),
1061
1093
  Agent: zod_1.z.string().nullable().describe(`
1062
1094
  * * Field Name: Agent
1063
1095
  * * Display Name: Agent
@@ -1090,6 +1122,10 @@ exports.AIAgentNoteSchema = zod_1.z.object({
1090
1122
  * * Field Name: EmbeddingModel
1091
1123
  * * Display Name: Embedding Model
1092
1124
  * * SQL Data Type: nvarchar(50)`),
1125
+ PrimaryScopeEntity: zod_1.z.string().nullable().describe(`
1126
+ * * Field Name: PrimaryScopeEntity
1127
+ * * Display Name: Primary Scope Entity
1128
+ * * SQL Data Type: nvarchar(255)`),
1093
1129
  });
1094
1130
  /**
1095
1131
  * zod schema definition for the entity AI Agent Requests
@@ -1215,7 +1251,7 @@ exports.AIAgentSchema = zod_1.z.object({
1215
1251
  * * Default Value: getutcdate()`),
1216
1252
  ParentID: zod_1.z.string().nullable().describe(`
1217
1253
  * * Field Name: ParentID
1218
- * * Display Name: Parent Agent
1254
+ * * Display Name: Parent
1219
1255
  * * SQL Data Type: uniqueidentifier
1220
1256
  * * Related Entity/Foreign Key: AI Agents (vwAIAgents.ID)
1221
1257
  * * Description: References the parent agent in the hierarchical structure. If NULL, this is a root (top-level) agent.`),
@@ -1254,7 +1290,7 @@ exports.AIAgentSchema = zod_1.z.object({
1254
1290
  * * Description: Number of messages that triggers context compression when EnableContextCompression is true.`),
1255
1291
  ContextCompressionPromptID: zod_1.z.string().nullable().describe(`
1256
1292
  * * Field Name: ContextCompressionPromptID
1257
- * * Display Name: Context Compression Prompt
1293
+ * * Display Name: Context Compression Prompt ID
1258
1294
  * * SQL Data Type: uniqueidentifier
1259
1295
  * * Related Entity/Foreign Key: AI Prompts (vwAIPrompts.ID)`),
1260
1296
  ContextCompressionMessageRetentionCount: zod_1.z.number().nullable().describe(`
@@ -1264,7 +1300,7 @@ exports.AIAgentSchema = zod_1.z.object({
1264
1300
  * * Description: Number of recent messages to keep uncompressed when context compression is applied.`),
1265
1301
  TypeID: zod_1.z.string().nullable().describe(`
1266
1302
  * * Field Name: TypeID
1267
- * * Display Name: Agent Type
1303
+ * * Display Name: Type
1268
1304
  * * SQL Data Type: uniqueidentifier
1269
1305
  * * Related Entity/Foreign Key: MJ: AI Agent Types (vwAIAgentTypes.ID)
1270
1306
  * * Description: Reference to the AIAgentType that defines the category and system-level behavior for this agent. Cannot be null.`),
@@ -1423,7 +1459,7 @@ if this limit is exceeded.`),
1423
1459
  * * Description: Default artifact type produced by this agent. This is the primary artifact type; additional artifact types can be linked via AIAgentArtifactType junction table. Can be NULL if agent does not produce artifacts by default.`),
1424
1460
  OwnerUserID: zod_1.z.string().describe(`
1425
1461
  * * Field Name: OwnerUserID
1426
- * * Display Name: Owner User
1462
+ * * Display Name: Owner User ID
1427
1463
  * * SQL Data Type: uniqueidentifier
1428
1464
  * * Related Entity/Foreign Key: Users (vwUsers.ID)
1429
1465
  * * Default Value: ECAFCCEC-6A37-EF11-86D4-000D3A4E707E
@@ -1531,7 +1567,7 @@ if this limit is exceeded.`),
1531
1567
  * * Description: Maximum number of conversation messages to include when MessageMode is 'Latest' or 'Bookend'. NULL means no limit (ignored for 'None' and 'All' modes). Must be greater than 0 if specified. For 'Latest': keeps most recent N messages. For 'Bookend': keeps first 2 + most recent (N-2) messages.`),
1532
1568
  AttachmentStorageProviderID: zod_1.z.string().nullable().describe(`
1533
1569
  * * Field Name: AttachmentStorageProviderID
1534
- * * Display Name: Attachment Storage Provider
1570
+ * * Display Name: Attachment Storage Provider ID
1535
1571
  * * SQL Data Type: uniqueidentifier
1536
1572
  * * Related Entity/Foreign Key: File Storage Providers (vwFileStorageProviders.ID)
1537
1573
  * * Description: File storage provider for large attachments. Overrides the default from AIConfiguration. NULL uses system default.`),
@@ -1550,6 +1586,34 @@ if this limit is exceeded.`),
1550
1586
  * * Display Name: Agent Type Prompt Params
1551
1587
  * * SQL Data Type: nvarchar(MAX)
1552
1588
  * * 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.`),
1589
+ ScopeConfig: zod_1.z.string().nullable().describe(`
1590
+ * * Field Name: ScopeConfig
1591
+ * * Display Name: Scope Config
1592
+ * * SQL Data Type: nvarchar(MAX)
1593
+ * * Description: JSON configuration defining scope dimensions for multi-tenant deployments. Example: {"dimensions":[{"name":"OrganizationID","entityId":"...","isPrimary":true,"required":true},{"name":"ContactID","entityId":"...","isPrimary":false,"required":false}],"inheritanceMode":"cascading"}`),
1594
+ NoteRetentionDays: zod_1.z.number().nullable().describe(`
1595
+ * * Field Name: NoteRetentionDays
1596
+ * * Display Name: Note Retention Days
1597
+ * * SQL Data Type: int
1598
+ * * Default Value: 90
1599
+ * * Description: Number of days to retain notes before archiving due to inactivity. Default 90. NULL means use system default.`),
1600
+ ExampleRetentionDays: zod_1.z.number().nullable().describe(`
1601
+ * * Field Name: ExampleRetentionDays
1602
+ * * Display Name: Example Retention Days
1603
+ * * SQL Data Type: int
1604
+ * * Default Value: 180
1605
+ * * Description: Number of days to retain examples before archiving due to inactivity. Default 180. NULL means use system default.`),
1606
+ AutoArchiveEnabled: zod_1.z.boolean().describe(`
1607
+ * * Field Name: AutoArchiveEnabled
1608
+ * * Display Name: Auto Archive Enabled
1609
+ * * SQL Data Type: bit
1610
+ * * Default Value: 1
1611
+ * * Description: Whether automatic archival of stale notes/examples is enabled for this agent. Default true.`),
1612
+ RerankerConfiguration: zod_1.z.string().nullable().describe(`
1613
+ * * Field Name: RerankerConfiguration
1614
+ * * Display Name: Reranker Configuration
1615
+ * * SQL Data Type: nvarchar(MAX)
1616
+ * * Description: JSON configuration for optional reranking of retrieved memory items. Schema: { enabled: boolean, rerankerModelId: string, retrievalMultiplier: number (default 3), minRelevanceThreshold: number (default 0.5), rerankPromptId?: string, contextFields?: string[], fallbackOnError: boolean (default true) }. When null or disabled, vector search results are used directly without reranking.`),
1553
1617
  Parent: zod_1.z.string().nullable().describe(`
1554
1618
  * * Field Name: Parent
1555
1619
  * * Display Name: Parent
@@ -7355,7 +7419,7 @@ exports.FileStorageProviderSchema = zod_1.z.object({
7355
7419
  * * Description: Priority order for selecting storage providers, lower numbers are preferred.`),
7356
7420
  IsActive: zod_1.z.boolean().describe(`
7357
7421
  * * Field Name: IsActive
7358
- * * Display Name: Is Active
7422
+ * * Display Name: Active
7359
7423
  * * SQL Data Type: bit
7360
7424
  * * Default Value: 1
7361
7425
  * * Description: Whether this storage provider is currently available for use.`),
@@ -7375,6 +7439,17 @@ exports.FileStorageProviderSchema = zod_1.z.object({
7375
7439
  * * SQL Data Type: bit
7376
7440
  * * Default Value: 0
7377
7441
  * * Description: Indicates whether this storage provider supports native full-text search across file names and content. Providers with native search APIs (Google Drive, SharePoint, Dropbox, Box) have this set to true.`),
7442
+ Configuration: zod_1.z.string().nullable().describe(`
7443
+ * * Field Name: Configuration
7444
+ * * Display Name: Configuration
7445
+ * * SQL Data Type: nvarchar(MAX)
7446
+ * * Description: Optional JSON configuration for providers that don't use Credential Engine. Used as fallback when CredentialID is not set on FileStorageAccount.`),
7447
+ RequiresOAuth: zod_1.z.boolean().describe(`
7448
+ * * Field Name: RequiresOAuth
7449
+ * * Display Name: Requires OAuth
7450
+ * * SQL Data Type: bit
7451
+ * * Default Value: 0
7452
+ * * Description: If true, this provider requires OAuth authentication. Enterprise OAuth integration via Credential Engine is planned but not yet implemented.`),
7378
7453
  });
7379
7454
  /**
7380
7455
  * zod schema definition for the entity Files
@@ -7438,62 +7513,6 @@ exports.FileSchema = zod_1.z.object({
7438
7513
  * * Display Name: Provider
7439
7514
  * * SQL Data Type: nvarchar(50)`),
7440
7515
  });
7441
- /**
7442
- * zod schema definition for the entity Flyway _schema _histories
7443
- */
7444
- exports.flyway_schema_historySchema = zod_1.z.object({
7445
- installed_rank: zod_1.z.number().describe(`
7446
- * * Field Name: installed_rank
7447
- * * Display Name: installed _rank
7448
- * * SQL Data Type: int`),
7449
- version: zod_1.z.string().nullable().describe(`
7450
- * * Field Name: version
7451
- * * Display Name: version
7452
- * * SQL Data Type: nvarchar(50)`),
7453
- description: zod_1.z.string().nullable().describe(`
7454
- * * Field Name: description
7455
- * * Display Name: description
7456
- * * SQL Data Type: nvarchar(200)`),
7457
- type: zod_1.z.string().describe(`
7458
- * * Field Name: type
7459
- * * Display Name: type
7460
- * * SQL Data Type: nvarchar(20)`),
7461
- script: zod_1.z.string().describe(`
7462
- * * Field Name: script
7463
- * * Display Name: script
7464
- * * SQL Data Type: nvarchar(1000)`),
7465
- checksum: zod_1.z.number().nullable().describe(`
7466
- * * Field Name: checksum
7467
- * * Display Name: checksum
7468
- * * SQL Data Type: int`),
7469
- installed_by: zod_1.z.string().describe(`
7470
- * * Field Name: installed_by
7471
- * * Display Name: installed _by
7472
- * * SQL Data Type: nvarchar(100)`),
7473
- installed_on: zod_1.z.date().describe(`
7474
- * * Field Name: installed_on
7475
- * * Display Name: installed _on
7476
- * * SQL Data Type: datetime
7477
- * * Default Value: getdate()`),
7478
- execution_time: zod_1.z.number().describe(`
7479
- * * Field Name: execution_time
7480
- * * Display Name: execution _time
7481
- * * SQL Data Type: int`),
7482
- success: zod_1.z.boolean().describe(`
7483
- * * Field Name: success
7484
- * * Display Name: success
7485
- * * SQL Data Type: bit`),
7486
- __mj_CreatedAt: zod_1.z.date().describe(`
7487
- * * Field Name: __mj_CreatedAt
7488
- * * Display Name: Created At
7489
- * * SQL Data Type: datetimeoffset
7490
- * * Default Value: getutcdate()`),
7491
- __mj_UpdatedAt: zod_1.z.date().describe(`
7492
- * * Field Name: __mj_UpdatedAt
7493
- * * Display Name: Updated At
7494
- * * SQL Data Type: datetimeoffset
7495
- * * Default Value: getutcdate()`),
7496
- });
7497
7516
  /**
7498
7517
  * zod schema definition for the entity Generated Code Categories
7499
7518
  */
@@ -8387,19 +8406,19 @@ exports.AIAgentExampleSchema = zod_1.z.object({
8387
8406
  * * Default Value: newsequentialid()`),
8388
8407
  AgentID: zod_1.z.string().describe(`
8389
8408
  * * Field Name: AgentID
8390
- * * Display Name: Agent ID
8409
+ * * Display Name: Agent
8391
8410
  * * SQL Data Type: uniqueidentifier
8392
8411
  * * Related Entity/Foreign Key: AI Agents (vwAIAgents.ID)
8393
8412
  * * Description: The AI agent this example is associated with. Examples are always agent-specific.`),
8394
8413
  UserID: zod_1.z.string().nullable().describe(`
8395
8414
  * * Field Name: UserID
8396
- * * Display Name: User ID
8415
+ * * Display Name: User
8397
8416
  * * SQL Data Type: uniqueidentifier
8398
8417
  * * Related Entity/Foreign Key: Users (vwUsers.ID)
8399
8418
  * * Description: Optional user scope. When populated, this example is specific to this user.`),
8400
8419
  CompanyID: zod_1.z.string().nullable().describe(`
8401
8420
  * * Field Name: CompanyID
8402
- * * Display Name: Company ID
8421
+ * * Display Name: Company
8403
8422
  * * SQL Data Type: uniqueidentifier
8404
8423
  * * Related Entity/Foreign Key: Companies (vwCompanies.ID)
8405
8424
  * * Description: Optional company scope. When populated, this example is specific to this company.`),
@@ -8434,19 +8453,19 @@ exports.AIAgentExampleSchema = zod_1.z.object({
8434
8453
  * * Description: Indicates whether this example was automatically captured (1) or manually created (0).`),
8435
8454
  SourceConversationID: zod_1.z.string().nullable().describe(`
8436
8455
  * * Field Name: SourceConversationID
8437
- * * Display Name: Source Conversation ID
8456
+ * * Display Name: Source Conversation
8438
8457
  * * SQL Data Type: uniqueidentifier
8439
8458
  * * Related Entity/Foreign Key: Conversations (vwConversations.ID)
8440
8459
  * * Description: Optional reference to the conversation where this example originated.`),
8441
8460
  SourceConversationDetailID: zod_1.z.string().nullable().describe(`
8442
8461
  * * Field Name: SourceConversationDetailID
8443
- * * Display Name: Source Conversation Detail ID
8462
+ * * Display Name: Source Conversation Detail
8444
8463
  * * SQL Data Type: uniqueidentifier
8445
8464
  * * Related Entity/Foreign Key: Conversation Details (vwConversationDetails.ID)
8446
8465
  * * Description: Optional reference to the specific conversation message that represents this example.`),
8447
8466
  SourceAIAgentRunID: zod_1.z.string().nullable().describe(`
8448
8467
  * * Field Name: SourceAIAgentRunID
8449
- * * Display Name: Source AI Agent Run ID
8468
+ * * Display Name: Source AI Agent Run
8450
8469
  * * SQL Data Type: uniqueidentifier
8451
8470
  * * Related Entity/Foreign Key: MJ: AI Agent Runs (vwAIAgentRuns.ID)
8452
8471
  * * Description: Optional reference to the AI agent run that generated this example.`),
@@ -8488,10 +8507,42 @@ exports.AIAgentExampleSchema = zod_1.z.object({
8488
8507
  * * Description: JSON array of embedding vector for semantic search on ExampleInput field. Auto-generated when ExampleInput changes.`),
8489
8508
  EmbeddingModelID: zod_1.z.string().nullable().describe(`
8490
8509
  * * Field Name: EmbeddingModelID
8491
- * * Display Name: Embedding Model ID
8510
+ * * Display Name: Embedding Model
8492
8511
  * * SQL Data Type: uniqueidentifier
8493
8512
  * * Related Entity/Foreign Key: AI Models (vwAIModels.ID)
8494
8513
  * * Description: Reference to the AI model used to generate the embedding vector.`),
8514
+ PrimaryScopeEntityID: zod_1.z.string().nullable().describe(`
8515
+ * * Field Name: PrimaryScopeEntityID
8516
+ * * Display Name: Primary Scope Entity
8517
+ * * SQL Data Type: uniqueidentifier
8518
+ * * Related Entity/Foreign Key: Entities (vwEntities.ID)
8519
+ * * Description: Foreign key to Entity table identifying which entity type is used for primary scoping. NULL means this is a global example.`),
8520
+ PrimaryScopeRecordID: zod_1.z.string().nullable().describe(`
8521
+ * * Field Name: PrimaryScopeRecordID
8522
+ * * Display Name: Primary Scope Record
8523
+ * * SQL Data Type: nvarchar(100)
8524
+ * * Description: The record ID within the primary scope entity. NULL means global example. When set with empty SecondaryScopes, indicates primary-scope-only example.`),
8525
+ SecondaryScopes: zod_1.z.string().nullable().describe(`
8526
+ * * Field Name: SecondaryScopes
8527
+ * * Display Name: Secondary Scopes
8528
+ * * SQL Data Type: nvarchar(MAX)
8529
+ * * Description: JSON object containing additional scope dimensions. Empty/NULL with PrimaryScopeRecordID set = org-level example. Populated = fully-scoped example.`),
8530
+ LastAccessedAt: zod_1.z.date().nullable().describe(`
8531
+ * * Field Name: LastAccessedAt
8532
+ * * Display Name: Last Accessed At
8533
+ * * SQL Data Type: datetimeoffset
8534
+ * * Description: Timestamp of when this example was last accessed/used for agent context. Used for lifecycle management and cleanup.`),
8535
+ AccessCount: zod_1.z.number().describe(`
8536
+ * * Field Name: AccessCount
8537
+ * * Display Name: Access Count
8538
+ * * SQL Data Type: int
8539
+ * * Default Value: 0
8540
+ * * Description: Number of times this example has been accessed/used. Used for analytics and determining example value.`),
8541
+ ExpiresAt: zod_1.z.date().nullable().describe(`
8542
+ * * Field Name: ExpiresAt
8543
+ * * Display Name: Expires At
8544
+ * * SQL Data Type: datetimeoffset
8545
+ * * Description: Optional expiration timestamp. Examples past this date are candidates for archival. NULL means no expiration.`),
8495
8546
  Agent: zod_1.z.string().nullable().describe(`
8496
8547
  * * Field Name: Agent
8497
8548
  * * Display Name: Agent
@@ -8520,6 +8571,10 @@ exports.AIAgentExampleSchema = zod_1.z.object({
8520
8571
  * * Field Name: EmbeddingModel
8521
8572
  * * Display Name: Embedding Model
8522
8573
  * * SQL Data Type: nvarchar(50)`),
8574
+ PrimaryScopeEntity: zod_1.z.string().nullable().describe(`
8575
+ * * Field Name: PrimaryScopeEntity
8576
+ * * Display Name: Primary Scope Entity
8577
+ * * SQL Data Type: nvarchar(255)`),
8523
8578
  });
8524
8579
  /**
8525
8580
  * zod schema definition for the entity MJ: AI Agent Modalities
@@ -9117,7 +9172,7 @@ exports.AIAgentRunSchema = zod_1.z.object({
9117
9172
  * * Description: Unique identifier for this agent run`),
9118
9173
  AgentID: zod_1.z.string().describe(`
9119
9174
  * * Field Name: AgentID
9120
- * * Display Name: Agent ID
9175
+ * * Display Name: Agent
9121
9176
  * * SQL Data Type: uniqueidentifier
9122
9177
  * * Related Entity/Foreign Key: AI Agents (vwAIAgents.ID)
9123
9178
  * * Description: Reference to the AIAgent that is being executed in this run`),
@@ -9163,13 +9218,13 @@ exports.AIAgentRunSchema = zod_1.z.object({
9163
9218
  * * Description: Error message if the agent run failed. NULL for successful runs.`),
9164
9219
  ConversationID: zod_1.z.string().nullable().describe(`
9165
9220
  * * Field Name: ConversationID
9166
- * * Display Name: Conversation ID
9221
+ * * Display Name: Conversation
9167
9222
  * * SQL Data Type: uniqueidentifier
9168
9223
  * * Related Entity/Foreign Key: Conversations (vwConversations.ID)
9169
9224
  * * Description: Identifier linking multiple agent runs that are part of the same conversation or user session`),
9170
9225
  UserID: zod_1.z.string().nullable().describe(`
9171
9226
  * * Field Name: UserID
9172
- * * Display Name: User ID
9227
+ * * Display Name: User
9173
9228
  * * SQL Data Type: uniqueidentifier
9174
9229
  * * Related Entity/Foreign Key: Users (vwUsers.ID)
9175
9230
  * * Description: User context identifier for authentication and permissions during the agent run`),
@@ -9355,6 +9410,22 @@ each time the agent processes a prompt step.`),
9355
9410
  * * SQL Data Type: uniqueidentifier
9356
9411
  * * Related Entity/Foreign Key: MJ: Test Runs (vwTestRuns.ID)
9357
9412
  * * Description: Optional Foreign Key - Links this agent run to a test run if this execution was part of a test. Allows navigation from agent execution to test context.`),
9413
+ PrimaryScopeEntityID: zod_1.z.string().nullable().describe(`
9414
+ * * Field Name: PrimaryScopeEntityID
9415
+ * * Display Name: Primary Scope Entity ID
9416
+ * * SQL Data Type: uniqueidentifier
9417
+ * * Related Entity/Foreign Key: Entities (vwEntities.ID)
9418
+ * * Description: Foreign key to Entity table identifying which entity type is used for primary scoping (e.g., Organizations, Tenants)`),
9419
+ PrimaryScopeRecordID: zod_1.z.string().nullable().describe(`
9420
+ * * Field Name: PrimaryScopeRecordID
9421
+ * * Display Name: Primary Scope Record ID
9422
+ * * SQL Data Type: nvarchar(100)
9423
+ * * Description: The record ID within the primary scope entity (e.g., the specific OrganizationID). Indexed for fast multi-tenant filtering.`),
9424
+ SecondaryScopes: zod_1.z.string().nullable().describe(`
9425
+ * * Field Name: SecondaryScopes
9426
+ * * Display Name: Secondary Scopes
9427
+ * * SQL Data Type: nvarchar(MAX)
9428
+ * * Description: JSON object containing additional scope dimensions beyond the primary scope. Example: {"ContactID":"abc-123","TeamID":"team-456"}`),
9358
9429
  Agent: zod_1.z.string().nullable().describe(`
9359
9430
  * * Field Name: Agent
9360
9431
  * * Display Name: Agent
@@ -9399,6 +9470,10 @@ each time the agent processes a prompt step.`),
9399
9470
  * * Field Name: TestRun
9400
9471
  * * Display Name: Test Run
9401
9472
  * * SQL Data Type: nvarchar(255)`),
9473
+ PrimaryScopeEntity: zod_1.z.string().nullable().describe(`
9474
+ * * Field Name: PrimaryScopeEntity
9475
+ * * Display Name: Primary Scope Entity
9476
+ * * SQL Data Type: nvarchar(255)`),
9402
9477
  RootParentRunID: zod_1.z.string().nullable().describe(`
9403
9478
  * * Field Name: RootParentRunID
9404
9479
  * * Display Name: Root Parent Run ID
@@ -11348,6 +11423,452 @@ exports.AIVendorSchema = zod_1.z.object({
11348
11423
  * * Display Name: Credential Type
11349
11424
  * * SQL Data Type: nvarchar(100)`),
11350
11425
  });
11426
+ /**
11427
+ * zod schema definition for the entity MJ: API Application Scopes
11428
+ */
11429
+ exports.APIApplicationScopeSchema = zod_1.z.object({
11430
+ ID: zod_1.z.string().describe(`
11431
+ * * Field Name: ID
11432
+ * * Display Name: ID
11433
+ * * SQL Data Type: uniqueidentifier
11434
+ * * Default Value: newsequentialid()`),
11435
+ ApplicationID: zod_1.z.string().describe(`
11436
+ * * Field Name: ApplicationID
11437
+ * * Display Name: Application
11438
+ * * SQL Data Type: uniqueidentifier
11439
+ * * Related Entity/Foreign Key: MJ: API Applications (vwAPIApplications.ID)
11440
+ * * Description: Reference to the application this ceiling rule applies to.`),
11441
+ ScopeID: zod_1.z.string().describe(`
11442
+ * * Field Name: ScopeID
11443
+ * * Display Name: Scope
11444
+ * * SQL Data Type: uniqueidentifier
11445
+ * * Related Entity/Foreign Key: MJ: API Scopes (vwAPIScopes.ID)
11446
+ * * Description: Reference to the scope this rule applies to.`),
11447
+ ResourcePattern: zod_1.z.string().nullable().describe(`
11448
+ * * Field Name: ResourcePattern
11449
+ * * Display Name: Resource Pattern
11450
+ * * SQL Data Type: nvarchar(750)
11451
+ * * Description: Glob pattern for matching resources (e.g., Users,Accounts or Skip* or *). NULL means match all resources.`),
11452
+ PatternType: zod_1.z.union([zod_1.z.literal('Exclude'), zod_1.z.literal('Include')]).describe(`
11453
+ * * Field Name: PatternType
11454
+ * * Display Name: Pattern Type
11455
+ * * SQL Data Type: nvarchar(20)
11456
+ * * Default Value: Include
11457
+ * * Value List Type: List
11458
+ * * Possible Values
11459
+ * * Exclude
11460
+ * * Include
11461
+ * * Description: How to interpret the pattern: Include (grant if matches) or Exclude (grant if does NOT match).`),
11462
+ IsDeny: zod_1.z.boolean().describe(`
11463
+ * * Field Name: IsDeny
11464
+ * * Display Name: Deny
11465
+ * * SQL Data Type: bit
11466
+ * * Default Value: 0
11467
+ * * Description: If true, this rule explicitly DENIES access. Deny rules trump allow rules at the same priority level.`),
11468
+ Priority: zod_1.z.number().describe(`
11469
+ * * Field Name: Priority
11470
+ * * Display Name: Priority
11471
+ * * SQL Data Type: int
11472
+ * * Default Value: 0
11473
+ * * Description: Rule evaluation order. Higher priority rules are evaluated first. Within same priority, deny rules are evaluated before allow rules.`),
11474
+ __mj_CreatedAt: zod_1.z.date().describe(`
11475
+ * * Field Name: __mj_CreatedAt
11476
+ * * Display Name: Created At
11477
+ * * SQL Data Type: datetimeoffset
11478
+ * * Default Value: getutcdate()`),
11479
+ __mj_UpdatedAt: zod_1.z.date().describe(`
11480
+ * * Field Name: __mj_UpdatedAt
11481
+ * * Display Name: Updated At
11482
+ * * SQL Data Type: datetimeoffset
11483
+ * * Default Value: getutcdate()`),
11484
+ Application: zod_1.z.string().describe(`
11485
+ * * Field Name: Application
11486
+ * * Display Name: Application Name
11487
+ * * SQL Data Type: nvarchar(100)`),
11488
+ Scope: zod_1.z.string().describe(`
11489
+ * * Field Name: Scope
11490
+ * * Display Name: Scope Name
11491
+ * * SQL Data Type: nvarchar(100)`),
11492
+ });
11493
+ /**
11494
+ * zod schema definition for the entity MJ: API Applications
11495
+ */
11496
+ exports.APIApplicationSchema = zod_1.z.object({
11497
+ ID: zod_1.z.string().describe(`
11498
+ * * Field Name: ID
11499
+ * * Display Name: ID
11500
+ * * SQL Data Type: uniqueidentifier
11501
+ * * Default Value: newsequentialid()`),
11502
+ Name: zod_1.z.string().describe(`
11503
+ * * Field Name: Name
11504
+ * * Display Name: Name
11505
+ * * SQL Data Type: nvarchar(100)
11506
+ * * Description: Unique name identifying the application (e.g., MJAPI, MCPServer, Portal, CLI).`),
11507
+ Description: zod_1.z.string().nullable().describe(`
11508
+ * * Field Name: Description
11509
+ * * Display Name: Description
11510
+ * * SQL Data Type: nvarchar(500)
11511
+ * * Description: Human-readable description of the application and its purpose.`),
11512
+ IsActive: zod_1.z.boolean().describe(`
11513
+ * * Field Name: IsActive
11514
+ * * Display Name: Active
11515
+ * * SQL Data Type: bit
11516
+ * * Default Value: 1
11517
+ * * Description: Whether this application is currently active. Inactive applications reject all API key authentication.`),
11518
+ __mj_CreatedAt: zod_1.z.date().describe(`
11519
+ * * Field Name: __mj_CreatedAt
11520
+ * * Display Name: Created At
11521
+ * * SQL Data Type: datetimeoffset
11522
+ * * Default Value: getutcdate()`),
11523
+ __mj_UpdatedAt: zod_1.z.date().describe(`
11524
+ * * Field Name: __mj_UpdatedAt
11525
+ * * Display Name: Updated At
11526
+ * * SQL Data Type: datetimeoffset
11527
+ * * Default Value: getutcdate()`),
11528
+ });
11529
+ /**
11530
+ * zod schema definition for the entity MJ: API Key Applications
11531
+ */
11532
+ exports.APIKeyApplicationSchema = zod_1.z.object({
11533
+ ID: zod_1.z.string().describe(`
11534
+ * * Field Name: ID
11535
+ * * Display Name: ID
11536
+ * * SQL Data Type: uniqueidentifier
11537
+ * * Default Value: newsequentialid()`),
11538
+ APIKeyID: zod_1.z.string().describe(`
11539
+ * * Field Name: APIKeyID
11540
+ * * Display Name: API Key
11541
+ * * SQL Data Type: uniqueidentifier
11542
+ * * Related Entity/Foreign Key: MJ: API Keys (vwAPIKeys.ID)
11543
+ * * Description: Reference to the API key being bound to an application.`),
11544
+ ApplicationID: zod_1.z.string().describe(`
11545
+ * * Field Name: ApplicationID
11546
+ * * Display Name: Application
11547
+ * * SQL Data Type: uniqueidentifier
11548
+ * * Related Entity/Foreign Key: MJ: API Applications (vwAPIApplications.ID)
11549
+ * * Description: Reference to the application this key is authorized to use.`),
11550
+ __mj_CreatedAt: zod_1.z.date().describe(`
11551
+ * * Field Name: __mj_CreatedAt
11552
+ * * Display Name: Created At
11553
+ * * SQL Data Type: datetimeoffset
11554
+ * * Default Value: getutcdate()`),
11555
+ __mj_UpdatedAt: zod_1.z.date().describe(`
11556
+ * * Field Name: __mj_UpdatedAt
11557
+ * * Display Name: Updated At
11558
+ * * SQL Data Type: datetimeoffset
11559
+ * * Default Value: getutcdate()`),
11560
+ APIKey: zod_1.z.string().describe(`
11561
+ * * Field Name: APIKey
11562
+ * * Display Name: API Key Value
11563
+ * * SQL Data Type: nvarchar(255)`),
11564
+ Application: zod_1.z.string().describe(`
11565
+ * * Field Name: Application
11566
+ * * Display Name: Application Name
11567
+ * * SQL Data Type: nvarchar(100)`),
11568
+ });
11569
+ /**
11570
+ * zod schema definition for the entity MJ: API Key Scopes
11571
+ */
11572
+ exports.APIKeyScopeSchema = zod_1.z.object({
11573
+ ID: zod_1.z.string().describe(`
11574
+ * * Field Name: ID
11575
+ * * Display Name: ID
11576
+ * * SQL Data Type: uniqueidentifier
11577
+ * * Default Value: newsequentialid()`),
11578
+ APIKeyID: zod_1.z.string().describe(`
11579
+ * * Field Name: APIKeyID
11580
+ * * Display Name: API Key
11581
+ * * SQL Data Type: uniqueidentifier
11582
+ * * Related Entity/Foreign Key: MJ: API Keys (vwAPIKeys.ID)`),
11583
+ ScopeID: zod_1.z.string().describe(`
11584
+ * * Field Name: ScopeID
11585
+ * * Display Name: Scope ID
11586
+ * * SQL Data Type: uniqueidentifier
11587
+ * * Related Entity/Foreign Key: MJ: API Scopes (vwAPIScopes.ID)`),
11588
+ __mj_CreatedAt: zod_1.z.date().describe(`
11589
+ * * Field Name: __mj_CreatedAt
11590
+ * * Display Name: Created At
11591
+ * * SQL Data Type: datetimeoffset
11592
+ * * Default Value: getutcdate()`),
11593
+ __mj_UpdatedAt: zod_1.z.date().describe(`
11594
+ * * Field Name: __mj_UpdatedAt
11595
+ * * Display Name: Updated At
11596
+ * * SQL Data Type: datetimeoffset
11597
+ * * Default Value: getutcdate()`),
11598
+ ResourcePattern: zod_1.z.string().nullable().describe(`
11599
+ * * Field Name: ResourcePattern
11600
+ * * Display Name: Resource Pattern
11601
+ * * SQL Data Type: nvarchar(750)
11602
+ * * Description: Glob pattern for matching resources (e.g., Users,Accounts or Skip* or *). NULL means match all resources under this scope.`),
11603
+ PatternType: zod_1.z.union([zod_1.z.literal('Exclude'), zod_1.z.literal('Include')]).describe(`
11604
+ * * Field Name: PatternType
11605
+ * * Display Name: Pattern Type
11606
+ * * SQL Data Type: nvarchar(20)
11607
+ * * Default Value: Include
11608
+ * * Value List Type: List
11609
+ * * Possible Values
11610
+ * * Exclude
11611
+ * * Include
11612
+ * * Description: How to interpret the pattern: Include (grant if matches) or Exclude (grant if does NOT match).`),
11613
+ IsDeny: zod_1.z.boolean().describe(`
11614
+ * * Field Name: IsDeny
11615
+ * * Display Name: Deny Rule
11616
+ * * SQL Data Type: bit
11617
+ * * Default Value: 0
11618
+ * * Description: If true, this rule explicitly DENIES access. Deny rules trump allow rules at the same priority level.`),
11619
+ Priority: zod_1.z.number().describe(`
11620
+ * * Field Name: Priority
11621
+ * * Display Name: Priority
11622
+ * * SQL Data Type: int
11623
+ * * Default Value: 0
11624
+ * * Description: Rule evaluation order. Higher priority rules are evaluated first. Within same priority, deny rules are evaluated before allow rules.`),
11625
+ APIKey: zod_1.z.string().describe(`
11626
+ * * Field Name: APIKey
11627
+ * * Display Name: API Key Name
11628
+ * * SQL Data Type: nvarchar(255)`),
11629
+ Scope: zod_1.z.string().describe(`
11630
+ * * Field Name: Scope
11631
+ * * Display Name: Scope
11632
+ * * SQL Data Type: nvarchar(100)`),
11633
+ });
11634
+ /**
11635
+ * zod schema definition for the entity MJ: API Key Usage Logs
11636
+ */
11637
+ exports.APIKeyUsageLogSchema = zod_1.z.object({
11638
+ ID: zod_1.z.string().describe(`
11639
+ * * Field Name: ID
11640
+ * * Display Name: ID
11641
+ * * SQL Data Type: uniqueidentifier
11642
+ * * Default Value: newsequentialid()`),
11643
+ APIKeyID: zod_1.z.string().describe(`
11644
+ * * Field Name: APIKeyID
11645
+ * * Display Name: API Key
11646
+ * * SQL Data Type: uniqueidentifier
11647
+ * * Related Entity/Foreign Key: MJ: API Keys (vwAPIKeys.ID)`),
11648
+ Endpoint: zod_1.z.string().describe(`
11649
+ * * Field Name: Endpoint
11650
+ * * Display Name: Endpoint
11651
+ * * SQL Data Type: nvarchar(500)
11652
+ * * Description: The API endpoint path that was accessed (e.g., /mcp, /graphql, /api/v1/entities).`),
11653
+ Operation: zod_1.z.string().nullable().describe(`
11654
+ * * Field Name: Operation
11655
+ * * Display Name: Operation
11656
+ * * SQL Data Type: nvarchar(255)
11657
+ * * Description: The specific operation performed, such as the GraphQL operation name or MCP tool invoked (e.g., Get_Users_Record, Run_Agent).`),
11658
+ Method: zod_1.z.string().describe(`
11659
+ * * Field Name: Method
11660
+ * * Display Name: Method
11661
+ * * SQL Data Type: nvarchar(10)
11662
+ * * Description: HTTP method used for the request (GET, POST, PUT, DELETE, etc.).`),
11663
+ StatusCode: zod_1.z.number().describe(`
11664
+ * * Field Name: StatusCode
11665
+ * * Display Name: Status Code
11666
+ * * SQL Data Type: int
11667
+ * * Description: HTTP response status code returned to the client (e.g., 200 for success, 401 for unauthorized, 500 for server error).`),
11668
+ ResponseTimeMs: zod_1.z.number().nullable().describe(`
11669
+ * * Field Name: ResponseTimeMs
11670
+ * * Display Name: Response Time
11671
+ * * SQL Data Type: int
11672
+ * * Description: Total time in milliseconds to process the request and return a response. Useful for performance monitoring.`),
11673
+ IPAddress: zod_1.z.string().nullable().describe(`
11674
+ * * Field Name: IPAddress
11675
+ * * Display Name: IP Address
11676
+ * * SQL Data Type: nvarchar(45)
11677
+ * * Description: Client IP address that made the request. Supports both IPv4 and IPv6 addresses (up to 45 characters).`),
11678
+ UserAgent: zod_1.z.string().nullable().describe(`
11679
+ * * Field Name: UserAgent
11680
+ * * Display Name: User Agent
11681
+ * * SQL Data Type: nvarchar(500)
11682
+ * * Description: User-Agent header from the HTTP request, identifying the client application or library making the API call.`),
11683
+ __mj_CreatedAt: zod_1.z.date().describe(`
11684
+ * * Field Name: __mj_CreatedAt
11685
+ * * Display Name: Created At
11686
+ * * SQL Data Type: datetimeoffset
11687
+ * * Default Value: getutcdate()`),
11688
+ __mj_UpdatedAt: zod_1.z.date().describe(`
11689
+ * * Field Name: __mj_UpdatedAt
11690
+ * * Display Name: Updated At
11691
+ * * SQL Data Type: datetimeoffset
11692
+ * * Default Value: getutcdate()`),
11693
+ ApplicationID: zod_1.z.string().nullable().describe(`
11694
+ * * Field Name: ApplicationID
11695
+ * * Display Name: Application ID
11696
+ * * SQL Data Type: uniqueidentifier
11697
+ * * Related Entity/Foreign Key: MJ: API Applications (vwAPIApplications.ID)
11698
+ * * Description: The application through which this request was made (MJAPI, MCPServer, etc.).`),
11699
+ RequestedResource: zod_1.z.string().nullable().describe(`
11700
+ * * Field Name: RequestedResource
11701
+ * * Display Name: Requested Resource
11702
+ * * SQL Data Type: nvarchar(500)
11703
+ * * Description: The specific resource that was requested (e.g., entity name, agent name, query name).`),
11704
+ ScopesEvaluated: zod_1.z.string().nullable().describe(`
11705
+ * * Field Name: ScopesEvaluated
11706
+ * * Display Name: Scopes Evaluated
11707
+ * * SQL Data Type: nvarchar(MAX)
11708
+ * * Description: JSON array containing detailed evaluation of each scope rule checked during authorization.`),
11709
+ AuthorizationResult: zod_1.z.union([zod_1.z.literal('Allowed'), zod_1.z.literal('Denied'), zod_1.z.literal('NoScopesRequired')]).describe(`
11710
+ * * Field Name: AuthorizationResult
11711
+ * * Display Name: Authorization Result
11712
+ * * SQL Data Type: nvarchar(20)
11713
+ * * Default Value: Allowed
11714
+ * * Value List Type: List
11715
+ * * Possible Values
11716
+ * * Allowed
11717
+ * * Denied
11718
+ * * NoScopesRequired
11719
+ * * Description: Final authorization result: Allowed, Denied, or NoScopesRequired (for operations that do not require scope checks).`),
11720
+ DeniedReason: zod_1.z.string().nullable().describe(`
11721
+ * * Field Name: DeniedReason
11722
+ * * Display Name: Denied Reason
11723
+ * * SQL Data Type: nvarchar(500)
11724
+ * * Description: When authorization is denied, explains why (e.g., app ceiling blocked, no matching key scope, explicit deny rule).`),
11725
+ APIKey: zod_1.z.string().describe(`
11726
+ * * Field Name: APIKey
11727
+ * * Display Name: API Key Value
11728
+ * * SQL Data Type: nvarchar(255)`),
11729
+ Application: zod_1.z.string().nullable().describe(`
11730
+ * * Field Name: Application
11731
+ * * Display Name: Application
11732
+ * * SQL Data Type: nvarchar(100)`),
11733
+ });
11734
+ /**
11735
+ * zod schema definition for the entity MJ: API Keys
11736
+ */
11737
+ exports.APIKeySchema = zod_1.z.object({
11738
+ ID: zod_1.z.string().describe(`
11739
+ * * Field Name: ID
11740
+ * * Display Name: ID
11741
+ * * SQL Data Type: uniqueidentifier
11742
+ * * Default Value: newsequentialid()`),
11743
+ Hash: zod_1.z.string().describe(`
11744
+ * * Field Name: Hash
11745
+ * * Display Name: Hash
11746
+ * * SQL Data Type: nvarchar(64)
11747
+ * * Description: SHA-256 hash of the raw API key (64 hexadecimal characters). The raw key is only shown once at creation time and cannot be recovered.`),
11748
+ UserID: zod_1.z.string().describe(`
11749
+ * * Field Name: UserID
11750
+ * * Display Name: User
11751
+ * * SQL Data Type: uniqueidentifier
11752
+ * * Related Entity/Foreign Key: Users (vwUsers.ID)`),
11753
+ Label: zod_1.z.string().describe(`
11754
+ * * Field Name: Label
11755
+ * * Display Name: Label
11756
+ * * SQL Data Type: nvarchar(255)
11757
+ * * Description: User-friendly name for identifying the key purpose (e.g., Cowork Integration, CI/CD Pipeline, Mobile App).`),
11758
+ Description: zod_1.z.string().nullable().describe(`
11759
+ * * Field Name: Description
11760
+ * * Display Name: Description
11761
+ * * SQL Data Type: nvarchar(1000)
11762
+ * * Description: Optional detailed description of the key's intended use, integration details, or other notes.`),
11763
+ Status: zod_1.z.union([zod_1.z.literal('Active'), zod_1.z.literal('Revoked')]).describe(`
11764
+ * * Field Name: Status
11765
+ * * Display Name: Status
11766
+ * * SQL Data Type: nvarchar(20)
11767
+ * * Default Value: Active
11768
+ * * Value List Type: List
11769
+ * * Possible Values
11770
+ * * Active
11771
+ * * Revoked
11772
+ * * Description: Current lifecycle status of the key. Active keys can be used for authentication; Revoked keys are permanently disabled.`),
11773
+ ExpiresAt: zod_1.z.date().nullable().describe(`
11774
+ * * Field Name: ExpiresAt
11775
+ * * Display Name: Expires At
11776
+ * * SQL Data Type: datetimeoffset
11777
+ * * Description: Optional expiration timestamp. Keys with NULL expiration never expire. Expired keys are rejected during authentication.`),
11778
+ LastUsedAt: zod_1.z.date().nullable().describe(`
11779
+ * * Field Name: LastUsedAt
11780
+ * * Display Name: Last Used At
11781
+ * * SQL Data Type: datetimeoffset
11782
+ * * Description: Timestamp of the most recent successful authentication using this key. Updated on each valid API request.`),
11783
+ CreatedByUserID: zod_1.z.string().describe(`
11784
+ * * Field Name: CreatedByUserID
11785
+ * * Display Name: Created By User
11786
+ * * SQL Data Type: uniqueidentifier
11787
+ * * Related Entity/Foreign Key: Users (vwUsers.ID)`),
11788
+ __mj_CreatedAt: zod_1.z.date().describe(`
11789
+ * * Field Name: __mj_CreatedAt
11790
+ * * Display Name: Created At
11791
+ * * SQL Data Type: datetimeoffset
11792
+ * * Default Value: getutcdate()`),
11793
+ __mj_UpdatedAt: zod_1.z.date().describe(`
11794
+ * * Field Name: __mj_UpdatedAt
11795
+ * * Display Name: Updated At
11796
+ * * SQL Data Type: datetimeoffset
11797
+ * * Default Value: getutcdate()`),
11798
+ User: zod_1.z.string().describe(`
11799
+ * * Field Name: User
11800
+ * * Display Name: User
11801
+ * * SQL Data Type: nvarchar(100)`),
11802
+ CreatedByUser: zod_1.z.string().describe(`
11803
+ * * Field Name: CreatedByUser
11804
+ * * Display Name: Created By User
11805
+ * * SQL Data Type: nvarchar(100)`),
11806
+ });
11807
+ /**
11808
+ * zod schema definition for the entity MJ: API Scopes
11809
+ */
11810
+ exports.APIScopeSchema = zod_1.z.object({
11811
+ ID: zod_1.z.string().describe(`
11812
+ * * Field Name: ID
11813
+ * * Display Name: ID
11814
+ * * SQL Data Type: uniqueidentifier
11815
+ * * Default Value: newsequentialid()`),
11816
+ Name: zod_1.z.string().describe(`
11817
+ * * Field Name: Name
11818
+ * * Display Name: Name
11819
+ * * SQL Data Type: nvarchar(100)
11820
+ * * Description: Unique scope identifier following the pattern category:permission (e.g., entities:read, agents:execute, admin:*). Supports wildcard (*) for broad permissions.`),
11821
+ Category: zod_1.z.string().describe(`
11822
+ * * Field Name: Category
11823
+ * * Display Name: Category
11824
+ * * SQL Data Type: nvarchar(100)
11825
+ * * Description: Grouping category for the scope (e.g., Entities, Agents, Admin). Used for organizing and filtering scopes in the UI.`),
11826
+ Description: zod_1.z.string().nullable().describe(`
11827
+ * * Field Name: Description
11828
+ * * Display Name: Description
11829
+ * * SQL Data Type: nvarchar(500)
11830
+ * * Description: Human-readable description explaining what permissions this scope grants.`),
11831
+ __mj_CreatedAt: zod_1.z.date().describe(`
11832
+ * * Field Name: __mj_CreatedAt
11833
+ * * Display Name: Created At
11834
+ * * SQL Data Type: datetimeoffset
11835
+ * * Default Value: getutcdate()`),
11836
+ __mj_UpdatedAt: zod_1.z.date().describe(`
11837
+ * * Field Name: __mj_UpdatedAt
11838
+ * * Display Name: Updated At
11839
+ * * SQL Data Type: datetimeoffset
11840
+ * * Default Value: getutcdate()`),
11841
+ ParentID: zod_1.z.string().nullable().describe(`
11842
+ * * Field Name: ParentID
11843
+ * * Display Name: Parent ID
11844
+ * * SQL Data Type: uniqueidentifier
11845
+ * * Related Entity/Foreign Key: MJ: API Scopes (vwAPIScopes.ID)
11846
+ * * Description: Reference to parent scope for hierarchical organization. NULL indicates a root-level scope.`),
11847
+ FullPath: zod_1.z.string().describe(`
11848
+ * * Field Name: FullPath
11849
+ * * Display Name: Full Path
11850
+ * * SQL Data Type: nvarchar(500)
11851
+ * * Description: Full hierarchical path of the scope (e.g., entity:runview, agent:execute). Used for matching during authorization.`),
11852
+ ResourceType: zod_1.z.string().nullable().describe(`
11853
+ * * Field Name: ResourceType
11854
+ * * Display Name: Resource Type
11855
+ * * SQL Data Type: nvarchar(50)
11856
+ * * Description: Type of resource this scope applies to (Entity, Agent, Query, Mutation, or NULL for abstract grouping scopes).`),
11857
+ IsActive: zod_1.z.boolean().describe(`
11858
+ * * Field Name: IsActive
11859
+ * * Display Name: Active
11860
+ * * SQL Data Type: bit
11861
+ * * Default Value: 1
11862
+ * * Description: Whether this scope is currently active. Inactive scopes are ignored during authorization.`),
11863
+ Parent: zod_1.z.string().nullable().describe(`
11864
+ * * Field Name: Parent
11865
+ * * Display Name: Parent
11866
+ * * SQL Data Type: nvarchar(100)`),
11867
+ RootParentID: zod_1.z.string().nullable().describe(`
11868
+ * * Field Name: RootParentID
11869
+ * * Display Name: Root Parent ID
11870
+ * * SQL Data Type: uniqueidentifier`),
11871
+ });
11351
11872
  /**
11352
11873
  * zod schema definition for the entity MJ: Artifact Permissions
11353
11874
  */
@@ -13559,6 +14080,57 @@ exports.EnvironmentSchema = zod_1.z.object({
13559
14080
  * * SQL Data Type: datetimeoffset
13560
14081
  * * Default Value: getutcdate()`),
13561
14082
  });
14083
+ /**
14084
+ * zod schema definition for the entity MJ: File Storage Accounts
14085
+ */
14086
+ exports.FileStorageAccountSchema = zod_1.z.object({
14087
+ ID: zod_1.z.string().describe(`
14088
+ * * Field Name: ID
14089
+ * * Display Name: ID
14090
+ * * SQL Data Type: uniqueidentifier
14091
+ * * Default Value: newsequentialid()
14092
+ * * Description: Primary key`),
14093
+ Name: zod_1.z.string().describe(`
14094
+ * * Field Name: Name
14095
+ * * Display Name: Name
14096
+ * * SQL Data Type: nvarchar(200)
14097
+ * * Description: Display name for the storage account (e.g., Marketing Files, Engineering Docs). Must be unique per provider.`),
14098
+ Description: zod_1.z.string().nullable().describe(`
14099
+ * * Field Name: Description
14100
+ * * Display Name: Description
14101
+ * * SQL Data Type: nvarchar(MAX)
14102
+ * * Description: Optional description providing additional context about the account purpose or contents.`),
14103
+ ProviderID: zod_1.z.string().describe(`
14104
+ * * Field Name: ProviderID
14105
+ * * Display Name: Provider
14106
+ * * SQL Data Type: uniqueidentifier
14107
+ * * Related Entity/Foreign Key: File Storage Providers (vwFileStorageProviders.ID)
14108
+ * * Description: Foreign key to FileStorageProvider indicating which storage service this account uses (Dropbox, Google Drive, S3, etc.).`),
14109
+ CredentialID: zod_1.z.string().describe(`
14110
+ * * Field Name: CredentialID
14111
+ * * Display Name: Credential
14112
+ * * SQL Data Type: uniqueidentifier
14113
+ * * Related Entity/Foreign Key: MJ: Credentials (vwCredentials.ID)
14114
+ * * Description: Foreign key to Credential containing the authentication details (OAuth tokens, API keys, etc.) for this account. Credentials are decrypted at runtime by the Credential Engine.`),
14115
+ __mj_CreatedAt: zod_1.z.date().describe(`
14116
+ * * Field Name: __mj_CreatedAt
14117
+ * * Display Name: Created At
14118
+ * * SQL Data Type: datetimeoffset
14119
+ * * Default Value: getutcdate()`),
14120
+ __mj_UpdatedAt: zod_1.z.date().describe(`
14121
+ * * Field Name: __mj_UpdatedAt
14122
+ * * Display Name: Updated At
14123
+ * * SQL Data Type: datetimeoffset
14124
+ * * Default Value: getutcdate()`),
14125
+ Provider: zod_1.z.string().describe(`
14126
+ * * Field Name: Provider
14127
+ * * Display Name: Provider Name
14128
+ * * SQL Data Type: nvarchar(50)`),
14129
+ Credential: zod_1.z.string().describe(`
14130
+ * * Field Name: Credential
14131
+ * * Display Name: Credential Name
14132
+ * * SQL Data Type: nvarchar(200)`),
14133
+ });
13562
14134
  /**
13563
14135
  * zod schema definition for the entity MJ: List Invitations
13564
14136
  */
@@ -15401,6 +15973,152 @@ exports.TestSchema = zod_1.z.object({
15401
15973
  * * Display Name: Type
15402
15974
  * * SQL Data Type: nvarchar(100)`),
15403
15975
  });
15976
+ /**
15977
+ * zod schema definition for the entity MJ: User Notification Preferences
15978
+ */
15979
+ exports.UserNotificationPreferenceSchema = zod_1.z.object({
15980
+ ID: zod_1.z.string().describe(`
15981
+ * * Field Name: ID
15982
+ * * Display Name: ID
15983
+ * * SQL Data Type: uniqueidentifier
15984
+ * * Default Value: newsequentialid()`),
15985
+ UserID: zod_1.z.string().describe(`
15986
+ * * Field Name: UserID
15987
+ * * Display Name: User
15988
+ * * SQL Data Type: uniqueidentifier
15989
+ * * Related Entity/Foreign Key: Users (vwUsers.ID)`),
15990
+ NotificationTypeID: zod_1.z.string().describe(`
15991
+ * * Field Name: NotificationTypeID
15992
+ * * Display Name: Notification Type
15993
+ * * SQL Data Type: uniqueidentifier
15994
+ * * Related Entity/Foreign Key: MJ: User Notification Types (vwUserNotificationTypes.ID)`),
15995
+ InAppEnabled: zod_1.z.boolean().nullable().describe(`
15996
+ * * Field Name: InAppEnabled
15997
+ * * Display Name: In-App Enabled
15998
+ * * SQL Data Type: bit
15999
+ * * Description: User preference for in-app notifications (NULL = use default)`),
16000
+ EmailEnabled: zod_1.z.boolean().nullable().describe(`
16001
+ * * Field Name: EmailEnabled
16002
+ * * Display Name: Email Enabled
16003
+ * * SQL Data Type: bit
16004
+ * * Description: User preference for email notifications (NULL = use default)`),
16005
+ SMSEnabled: zod_1.z.boolean().nullable().describe(`
16006
+ * * Field Name: SMSEnabled
16007
+ * * Display Name: SMS Enabled
16008
+ * * SQL Data Type: bit
16009
+ * * Description: User preference for SMS notifications (NULL = use default)`),
16010
+ Enabled: zod_1.z.boolean().nullable().describe(`
16011
+ * * Field Name: Enabled
16012
+ * * Display Name: Overall Enabled
16013
+ * * SQL Data Type: bit
16014
+ * * Default Value: 1`),
16015
+ __mj_CreatedAt: zod_1.z.date().describe(`
16016
+ * * Field Name: __mj_CreatedAt
16017
+ * * Display Name: Created At
16018
+ * * SQL Data Type: datetimeoffset
16019
+ * * Default Value: getutcdate()`),
16020
+ __mj_UpdatedAt: zod_1.z.date().describe(`
16021
+ * * Field Name: __mj_UpdatedAt
16022
+ * * Display Name: Updated At
16023
+ * * SQL Data Type: datetimeoffset
16024
+ * * Default Value: getutcdate()`),
16025
+ User: zod_1.z.string().describe(`
16026
+ * * Field Name: User
16027
+ * * Display Name: User Name
16028
+ * * SQL Data Type: nvarchar(100)`),
16029
+ NotificationType: zod_1.z.string().describe(`
16030
+ * * Field Name: NotificationType
16031
+ * * Display Name: Notification Type Name
16032
+ * * SQL Data Type: nvarchar(100)`),
16033
+ });
16034
+ /**
16035
+ * zod schema definition for the entity MJ: User Notification Types
16036
+ */
16037
+ exports.UserNotificationTypeSchema = zod_1.z.object({
16038
+ ID: zod_1.z.string().describe(`
16039
+ * * Field Name: ID
16040
+ * * Display Name: ID
16041
+ * * SQL Data Type: uniqueidentifier
16042
+ * * Default Value: newsequentialid()`),
16043
+ Name: zod_1.z.string().describe(`
16044
+ * * Field Name: Name
16045
+ * * Display Name: Name
16046
+ * * SQL Data Type: nvarchar(100)
16047
+ * * Description: Unique name for the notification type (e.g., 'Agent Completion')`),
16048
+ Description: zod_1.z.string().nullable().describe(`
16049
+ * * Field Name: Description
16050
+ * * Display Name: Description
16051
+ * * SQL Data Type: nvarchar(500)`),
16052
+ DefaultInApp: zod_1.z.boolean().describe(`
16053
+ * * Field Name: DefaultInApp
16054
+ * * Display Name: Default In-App
16055
+ * * SQL Data Type: bit
16056
+ * * Default Value: 1
16057
+ * * Description: Whether in-app notifications are enabled by default for this type`),
16058
+ DefaultEmail: zod_1.z.boolean().describe(`
16059
+ * * Field Name: DefaultEmail
16060
+ * * Display Name: Default Email
16061
+ * * SQL Data Type: bit
16062
+ * * Default Value: 0
16063
+ * * Description: Whether email notifications are enabled by default for this type`),
16064
+ DefaultSMS: zod_1.z.boolean().describe(`
16065
+ * * Field Name: DefaultSMS
16066
+ * * Display Name: Default SMS
16067
+ * * SQL Data Type: bit
16068
+ * * Default Value: 0
16069
+ * * Description: Whether SMS notifications are enabled by default for this type`),
16070
+ AllowUserPreference: zod_1.z.boolean().nullable().describe(`
16071
+ * * Field Name: AllowUserPreference
16072
+ * * Display Name: Allow User Preference
16073
+ * * SQL Data Type: bit
16074
+ * * Default Value: 1
16075
+ * * Description: Whether users can override the default delivery method`),
16076
+ EmailTemplateID: zod_1.z.string().nullable().describe(`
16077
+ * * Field Name: EmailTemplateID
16078
+ * * Display Name: Email Template
16079
+ * * SQL Data Type: uniqueidentifier
16080
+ * * Related Entity/Foreign Key: Templates (vwTemplates.ID)`),
16081
+ SMSTemplateID: zod_1.z.string().nullable().describe(`
16082
+ * * Field Name: SMSTemplateID
16083
+ * * Display Name: SMS Template
16084
+ * * SQL Data Type: uniqueidentifier
16085
+ * * Related Entity/Foreign Key: Templates (vwTemplates.ID)`),
16086
+ Icon: zod_1.z.string().nullable().describe(`
16087
+ * * Field Name: Icon
16088
+ * * Display Name: Icon
16089
+ * * SQL Data Type: nvarchar(100)`),
16090
+ Color: zod_1.z.string().nullable().describe(`
16091
+ * * Field Name: Color
16092
+ * * Display Name: Color
16093
+ * * SQL Data Type: nvarchar(50)`),
16094
+ AutoExpireDays: zod_1.z.number().nullable().describe(`
16095
+ * * Field Name: AutoExpireDays
16096
+ * * Display Name: Auto Expire Days
16097
+ * * SQL Data Type: int`),
16098
+ Priority: zod_1.z.number().nullable().describe(`
16099
+ * * Field Name: Priority
16100
+ * * Display Name: Priority
16101
+ * * SQL Data Type: int
16102
+ * * Default Value: 0`),
16103
+ __mj_CreatedAt: zod_1.z.date().describe(`
16104
+ * * Field Name: __mj_CreatedAt
16105
+ * * Display Name: Created At
16106
+ * * SQL Data Type: datetimeoffset
16107
+ * * Default Value: getutcdate()`),
16108
+ __mj_UpdatedAt: zod_1.z.date().describe(`
16109
+ * * Field Name: __mj_UpdatedAt
16110
+ * * Display Name: Updated At
16111
+ * * SQL Data Type: datetimeoffset
16112
+ * * Default Value: getutcdate()`),
16113
+ EmailTemplate: zod_1.z.string().nullable().describe(`
16114
+ * * Field Name: EmailTemplate
16115
+ * * Display Name: Email Template Name
16116
+ * * SQL Data Type: nvarchar(255)`),
16117
+ SMSTemplate: zod_1.z.string().nullable().describe(`
16118
+ * * Field Name: SMSTemplate
16119
+ * * Display Name: SMS Template Name
16120
+ * * SQL Data Type: nvarchar(255)`),
16121
+ });
15404
16122
  /**
15405
16123
  * zod schema definition for the entity MJ: User Settings
15406
16124
  */
@@ -18022,6 +18740,12 @@ exports.UserNotificationSchema = zod_1.z.object({
18022
18740
  * * Display Name: Resource Record
18023
18741
  * * SQL Data Type: uniqueidentifier
18024
18742
  * * Description: ID of the specific record this notification is about.`),
18743
+ NotificationTypeID: zod_1.z.string().nullable().describe(`
18744
+ * * Field Name: NotificationTypeID
18745
+ * * Display Name: Notification Type
18746
+ * * SQL Data Type: uniqueidentifier
18747
+ * * Related Entity/Foreign Key: MJ: User Notification Types (vwUserNotificationTypes.ID)
18748
+ * * Description: Optional reference to notification type for categorization and delivery preferences`),
18025
18749
  User: zod_1.z.string().describe(`
18026
18750
  * * Field Name: User
18027
18751
  * * Display Name: User
@@ -18030,6 +18754,10 @@ exports.UserNotificationSchema = zod_1.z.object({
18030
18754
  * * Field Name: ResourceType
18031
18755
  * * Display Name: Resource Type
18032
18756
  * * SQL Data Type: nvarchar(255)`),
18757
+ NotificationType: zod_1.z.string().nullable().describe(`
18758
+ * * Field Name: NotificationType
18759
+ * * Display Name: Notification Type
18760
+ * * SQL Data Type: nvarchar(100)`),
18033
18761
  });
18034
18762
  /**
18035
18763
  * zod schema definition for the entity User Record Logs
@@ -19929,9 +20657,9 @@ let ActionParamEntity = class ActionParamEntity extends core_1.BaseEntity {
19929
20657
  * * BaseEntity Sub-Class
19930
20658
  * * Other
19931
20659
  * * MediaOutput
19932
- * * Scalar
19933
20660
  * * Other
19934
20661
  * * Scalar
20662
+ * * Scalar
19935
20663
  * * Simple Object
19936
20664
  * * Simple Object
19937
20665
  * * Description: Tracks the basic value type of the parameter, additional information can be provided in the Description field
@@ -21426,7 +22154,7 @@ let AIAgentNoteEntity = class AIAgentNoteEntity extends core_1.BaseEntity {
21426
22154
  }
21427
22155
  /**
21428
22156
  * * Field Name: AgentID
21429
- * * Display Name: Agent ID
22157
+ * * Display Name: Agent
21430
22158
  * * SQL Data Type: uniqueidentifier
21431
22159
  * * Related Entity/Foreign Key: AI Agents (vwAIAgents.ID)
21432
22160
  */
@@ -21438,7 +22166,7 @@ let AIAgentNoteEntity = class AIAgentNoteEntity extends core_1.BaseEntity {
21438
22166
  }
21439
22167
  /**
21440
22168
  * * Field Name: AgentNoteTypeID
21441
- * * Display Name: Agent Note Type ID
22169
+ * * Display Name: Agent Note Type
21442
22170
  * * SQL Data Type: uniqueidentifier
21443
22171
  * * Related Entity/Foreign Key: AI Agent Note Types (vwAIAgentNoteTypes.ID)
21444
22172
  */
@@ -21480,7 +22208,7 @@ let AIAgentNoteEntity = class AIAgentNoteEntity extends core_1.BaseEntity {
21480
22208
  }
21481
22209
  /**
21482
22210
  * * Field Name: UserID
21483
- * * Display Name: User ID
22211
+ * * Display Name: User
21484
22212
  * * SQL Data Type: uniqueidentifier
21485
22213
  * * Related Entity/Foreign Key: Users (vwUsers.ID)
21486
22214
  * * Description: Foreign key referencing the ID column in the User table, indicating the user associated with the note. Used when Type=User
@@ -21513,7 +22241,7 @@ let AIAgentNoteEntity = class AIAgentNoteEntity extends core_1.BaseEntity {
21513
22241
  }
21514
22242
  /**
21515
22243
  * * Field Name: IsAutoGenerated
21516
- * * Display Name: Is Auto Generated
22244
+ * * Display Name: Auto Generated
21517
22245
  * * SQL Data Type: bit
21518
22246
  * * Default Value: 0
21519
22247
  * * Description: Indicates whether this note was automatically generated by an AI agent (1) or manually created (0).
@@ -21556,7 +22284,7 @@ let AIAgentNoteEntity = class AIAgentNoteEntity extends core_1.BaseEntity {
21556
22284
  }
21557
22285
  /**
21558
22286
  * * Field Name: SourceConversationID
21559
- * * Display Name: Source Conversation ID
22287
+ * * Display Name: Source Conversation
21560
22288
  * * SQL Data Type: uniqueidentifier
21561
22289
  * * Related Entity/Foreign Key: Conversations (vwConversations.ID)
21562
22290
  * * Description: Optional reference to the conversation that inspired or generated this note.
@@ -21569,7 +22297,7 @@ let AIAgentNoteEntity = class AIAgentNoteEntity extends core_1.BaseEntity {
21569
22297
  }
21570
22298
  /**
21571
22299
  * * Field Name: SourceConversationDetailID
21572
- * * Display Name: Source Conversation Detail ID
22300
+ * * Display Name: Source Conversation Detail
21573
22301
  * * SQL Data Type: uniqueidentifier
21574
22302
  * * Related Entity/Foreign Key: Conversation Details (vwConversationDetails.ID)
21575
22303
  * * Description: Optional reference to the specific conversation message that inspired this note.
@@ -21582,7 +22310,7 @@ let AIAgentNoteEntity = class AIAgentNoteEntity extends core_1.BaseEntity {
21582
22310
  }
21583
22311
  /**
21584
22312
  * * Field Name: SourceAIAgentRunID
21585
- * * Display Name: Source AI Agent Run ID
22313
+ * * Display Name: Source AI Agent Run
21586
22314
  * * SQL Data Type: uniqueidentifier
21587
22315
  * * Related Entity/Foreign Key: MJ: AI Agent Runs (vwAIAgentRuns.ID)
21588
22316
  * * Description: Optional reference to the AI agent run that generated this note.
@@ -21595,7 +22323,7 @@ let AIAgentNoteEntity = class AIAgentNoteEntity extends core_1.BaseEntity {
21595
22323
  }
21596
22324
  /**
21597
22325
  * * Field Name: CompanyID
21598
- * * Display Name: Company ID
22326
+ * * Display Name: Company
21599
22327
  * * SQL Data Type: uniqueidentifier
21600
22328
  * * Related Entity/Foreign Key: Companies (vwCompanies.ID)
21601
22329
  * * Description: Optional company scope for this note. When populated with UserID, creates org+user specific notes.
@@ -21620,7 +22348,7 @@ let AIAgentNoteEntity = class AIAgentNoteEntity extends core_1.BaseEntity {
21620
22348
  }
21621
22349
  /**
21622
22350
  * * Field Name: EmbeddingModelID
21623
- * * Display Name: Embedding Model ID
22351
+ * * Display Name: Embedding Model
21624
22352
  * * SQL Data Type: uniqueidentifier
21625
22353
  * * Related Entity/Foreign Key: AI Models (vwAIModels.ID)
21626
22354
  * * Description: Reference to the AI model used to generate the embedding vector.
@@ -21632,6 +22360,80 @@ let AIAgentNoteEntity = class AIAgentNoteEntity extends core_1.BaseEntity {
21632
22360
  this.Set('EmbeddingModelID', value);
21633
22361
  }
21634
22362
  /**
22363
+ * * Field Name: PrimaryScopeEntityID
22364
+ * * Display Name: Primary Scope Entity
22365
+ * * SQL Data Type: uniqueidentifier
22366
+ * * Related Entity/Foreign Key: Entities (vwEntities.ID)
22367
+ * * Description: Foreign key to Entity table identifying which entity type is used for primary scoping. NULL means this is a global note.
22368
+ */
22369
+ get PrimaryScopeEntityID() {
22370
+ return this.Get('PrimaryScopeEntityID');
22371
+ }
22372
+ set PrimaryScopeEntityID(value) {
22373
+ this.Set('PrimaryScopeEntityID', value);
22374
+ }
22375
+ /**
22376
+ * * Field Name: PrimaryScopeRecordID
22377
+ * * Display Name: Primary Scope Record
22378
+ * * SQL Data Type: nvarchar(100)
22379
+ * * Description: The record ID within the primary scope entity. NULL means global note. When set with empty SecondaryScopes, indicates primary-scope-only note.
22380
+ */
22381
+ get PrimaryScopeRecordID() {
22382
+ return this.Get('PrimaryScopeRecordID');
22383
+ }
22384
+ set PrimaryScopeRecordID(value) {
22385
+ this.Set('PrimaryScopeRecordID', value);
22386
+ }
22387
+ /**
22388
+ * * Field Name: SecondaryScopes
22389
+ * * Display Name: Secondary Scopes
22390
+ * * SQL Data Type: nvarchar(MAX)
22391
+ * * Description: JSON object containing additional scope dimensions. Empty/NULL with PrimaryScopeRecordID set = org-level note. Populated = fully-scoped note.
22392
+ */
22393
+ get SecondaryScopes() {
22394
+ return this.Get('SecondaryScopes');
22395
+ }
22396
+ set SecondaryScopes(value) {
22397
+ this.Set('SecondaryScopes', value);
22398
+ }
22399
+ /**
22400
+ * * Field Name: LastAccessedAt
22401
+ * * Display Name: Last Accessed At
22402
+ * * SQL Data Type: datetimeoffset
22403
+ * * Description: Timestamp of when this note was last accessed/injected into agent context. Used for lifecycle management and cleanup.
22404
+ */
22405
+ get LastAccessedAt() {
22406
+ return this.Get('LastAccessedAt');
22407
+ }
22408
+ set LastAccessedAt(value) {
22409
+ this.Set('LastAccessedAt', value);
22410
+ }
22411
+ /**
22412
+ * * Field Name: AccessCount
22413
+ * * Display Name: Access Count
22414
+ * * SQL Data Type: int
22415
+ * * Default Value: 0
22416
+ * * Description: Number of times this note has been accessed/injected into agent context. Used for analytics and determining note value.
22417
+ */
22418
+ get AccessCount() {
22419
+ return this.Get('AccessCount');
22420
+ }
22421
+ set AccessCount(value) {
22422
+ this.Set('AccessCount', value);
22423
+ }
22424
+ /**
22425
+ * * Field Name: ExpiresAt
22426
+ * * Display Name: Expires At
22427
+ * * SQL Data Type: datetimeoffset
22428
+ * * Description: Optional expiration timestamp. Notes past this date are candidates for archival. NULL means no expiration.
22429
+ */
22430
+ get ExpiresAt() {
22431
+ return this.Get('ExpiresAt');
22432
+ }
22433
+ set ExpiresAt(value) {
22434
+ this.Set('ExpiresAt', value);
22435
+ }
22436
+ /**
21635
22437
  * * Field Name: Agent
21636
22438
  * * Display Name: Agent
21637
22439
  * * SQL Data Type: nvarchar(255)
@@ -21695,6 +22497,14 @@ let AIAgentNoteEntity = class AIAgentNoteEntity extends core_1.BaseEntity {
21695
22497
  get EmbeddingModel() {
21696
22498
  return this.Get('EmbeddingModel');
21697
22499
  }
22500
+ /**
22501
+ * * Field Name: PrimaryScopeEntity
22502
+ * * Display Name: Primary Scope Entity
22503
+ * * SQL Data Type: nvarchar(255)
22504
+ */
22505
+ get PrimaryScopeEntity() {
22506
+ return this.Get('PrimaryScopeEntity');
22507
+ }
21698
22508
  };
21699
22509
  exports.AIAgentNoteEntity = AIAgentNoteEntity;
21700
22510
  exports.AIAgentNoteEntity = AIAgentNoteEntity = __decorate([
@@ -22114,7 +22924,7 @@ let AIAgentEntity = class AIAgentEntity extends core_1.BaseEntity {
22114
22924
  }
22115
22925
  /**
22116
22926
  * * Field Name: ParentID
22117
- * * Display Name: Parent Agent
22927
+ * * Display Name: Parent
22118
22928
  * * SQL Data Type: uniqueidentifier
22119
22929
  * * Related Entity/Foreign Key: AI Agents (vwAIAgents.ID)
22120
22930
  * * Description: References the parent agent in the hierarchical structure. If NULL, this is a root (top-level) agent.
@@ -22195,7 +23005,7 @@ let AIAgentEntity = class AIAgentEntity extends core_1.BaseEntity {
22195
23005
  }
22196
23006
  /**
22197
23007
  * * Field Name: ContextCompressionPromptID
22198
- * * Display Name: Context Compression Prompt
23008
+ * * Display Name: Context Compression Prompt ID
22199
23009
  * * SQL Data Type: uniqueidentifier
22200
23010
  * * Related Entity/Foreign Key: AI Prompts (vwAIPrompts.ID)
22201
23011
  */
@@ -22219,7 +23029,7 @@ let AIAgentEntity = class AIAgentEntity extends core_1.BaseEntity {
22219
23029
  }
22220
23030
  /**
22221
23031
  * * Field Name: TypeID
22222
- * * Display Name: Agent Type
23032
+ * * Display Name: Type
22223
23033
  * * SQL Data Type: uniqueidentifier
22224
23034
  * * Related Entity/Foreign Key: MJ: AI Agent Types (vwAIAgentTypes.ID)
22225
23035
  * * Description: Reference to the AIAgentType that defines the category and system-level behavior for this agent. Cannot be null.
@@ -22546,7 +23356,7 @@ if this limit is exceeded.
22546
23356
  }
22547
23357
  /**
22548
23358
  * * Field Name: OwnerUserID
22549
- * * Display Name: Owner User
23359
+ * * Display Name: Owner User ID
22550
23360
  * * SQL Data Type: uniqueidentifier
22551
23361
  * * Related Entity/Foreign Key: Users (vwUsers.ID)
22552
23362
  * * Default Value: ECAFCCEC-6A37-EF11-86D4-000D3A4E707E
@@ -22752,7 +23562,7 @@ if this limit is exceeded.
22752
23562
  }
22753
23563
  /**
22754
23564
  * * Field Name: AttachmentStorageProviderID
22755
- * * Display Name: Attachment Storage Provider
23565
+ * * Display Name: Attachment Storage Provider ID
22756
23566
  * * SQL Data Type: uniqueidentifier
22757
23567
  * * Related Entity/Foreign Key: File Storage Providers (vwFileStorageProviders.ID)
22758
23568
  * * Description: File storage provider for large attachments. Overrides the default from AIConfiguration. NULL uses system default.
@@ -22800,6 +23610,69 @@ if this limit is exceeded.
22800
23610
  this.Set('AgentTypePromptParams', value);
22801
23611
  }
22802
23612
  /**
23613
+ * * Field Name: ScopeConfig
23614
+ * * Display Name: Scope Config
23615
+ * * SQL Data Type: nvarchar(MAX)
23616
+ * * Description: JSON configuration defining scope dimensions for multi-tenant deployments. Example: {"dimensions":[{"name":"OrganizationID","entityId":"...","isPrimary":true,"required":true},{"name":"ContactID","entityId":"...","isPrimary":false,"required":false}],"inheritanceMode":"cascading"}
23617
+ */
23618
+ get ScopeConfig() {
23619
+ return this.Get('ScopeConfig');
23620
+ }
23621
+ set ScopeConfig(value) {
23622
+ this.Set('ScopeConfig', value);
23623
+ }
23624
+ /**
23625
+ * * Field Name: NoteRetentionDays
23626
+ * * Display Name: Note Retention Days
23627
+ * * SQL Data Type: int
23628
+ * * Default Value: 90
23629
+ * * Description: Number of days to retain notes before archiving due to inactivity. Default 90. NULL means use system default.
23630
+ */
23631
+ get NoteRetentionDays() {
23632
+ return this.Get('NoteRetentionDays');
23633
+ }
23634
+ set NoteRetentionDays(value) {
23635
+ this.Set('NoteRetentionDays', value);
23636
+ }
23637
+ /**
23638
+ * * Field Name: ExampleRetentionDays
23639
+ * * Display Name: Example Retention Days
23640
+ * * SQL Data Type: int
23641
+ * * Default Value: 180
23642
+ * * Description: Number of days to retain examples before archiving due to inactivity. Default 180. NULL means use system default.
23643
+ */
23644
+ get ExampleRetentionDays() {
23645
+ return this.Get('ExampleRetentionDays');
23646
+ }
23647
+ set ExampleRetentionDays(value) {
23648
+ this.Set('ExampleRetentionDays', value);
23649
+ }
23650
+ /**
23651
+ * * Field Name: AutoArchiveEnabled
23652
+ * * Display Name: Auto Archive Enabled
23653
+ * * SQL Data Type: bit
23654
+ * * Default Value: 1
23655
+ * * Description: Whether automatic archival of stale notes/examples is enabled for this agent. Default true.
23656
+ */
23657
+ get AutoArchiveEnabled() {
23658
+ return this.Get('AutoArchiveEnabled');
23659
+ }
23660
+ set AutoArchiveEnabled(value) {
23661
+ this.Set('AutoArchiveEnabled', value);
23662
+ }
23663
+ /**
23664
+ * * Field Name: RerankerConfiguration
23665
+ * * Display Name: Reranker Configuration
23666
+ * * SQL Data Type: nvarchar(MAX)
23667
+ * * Description: JSON configuration for optional reranking of retrieved memory items. Schema: { enabled: boolean, rerankerModelId: string, retrievalMultiplier: number (default 3), minRelevanceThreshold: number (default 0.5), rerankPromptId?: string, contextFields?: string[], fallbackOnError: boolean (default true) }. When null or disabled, vector search results are used directly without reranking.
23668
+ */
23669
+ get RerankerConfiguration() {
23670
+ return this.Get('RerankerConfiguration');
23671
+ }
23672
+ set RerankerConfiguration(value) {
23673
+ this.Set('RerankerConfiguration', value);
23674
+ }
23675
+ /**
22803
23676
  * * Field Name: Parent
22804
23677
  * * Display Name: Parent
22805
23678
  * * SQL Data Type: nvarchar(255)
@@ -37257,7 +38130,7 @@ let FileStorageProviderEntity = class FileStorageProviderEntity extends core_1.B
37257
38130
  }
37258
38131
  /**
37259
38132
  * * Field Name: IsActive
37260
- * * Display Name: Is Active
38133
+ * * Display Name: Active
37261
38134
  * * SQL Data Type: bit
37262
38135
  * * Default Value: 1
37263
38136
  * * Description: Whether this storage provider is currently available for use.
@@ -37299,6 +38172,31 @@ let FileStorageProviderEntity = class FileStorageProviderEntity extends core_1.B
37299
38172
  set SupportsSearch(value) {
37300
38173
  this.Set('SupportsSearch', value);
37301
38174
  }
38175
+ /**
38176
+ * * Field Name: Configuration
38177
+ * * Display Name: Configuration
38178
+ * * SQL Data Type: nvarchar(MAX)
38179
+ * * Description: Optional JSON configuration for providers that don't use Credential Engine. Used as fallback when CredentialID is not set on FileStorageAccount.
38180
+ */
38181
+ get Configuration() {
38182
+ return this.Get('Configuration');
38183
+ }
38184
+ set Configuration(value) {
38185
+ this.Set('Configuration', value);
38186
+ }
38187
+ /**
38188
+ * * Field Name: RequiresOAuth
38189
+ * * Display Name: Requires OAuth
38190
+ * * SQL Data Type: bit
38191
+ * * Default Value: 0
38192
+ * * Description: If true, this provider requires OAuth authentication. Enterprise OAuth integration via Credential Engine is planned but not yet implemented.
38193
+ */
38194
+ get RequiresOAuth() {
38195
+ return this.Get('RequiresOAuth');
38196
+ }
38197
+ set RequiresOAuth(value) {
38198
+ this.Set('RequiresOAuth', value);
38199
+ }
37302
38200
  };
37303
38201
  exports.FileStorageProviderEntity = FileStorageProviderEntity;
37304
38202
  exports.FileStorageProviderEntity = FileStorageProviderEntity = __decorate([
@@ -37466,167 +38364,6 @@ exports.FileEntity = FileEntity;
37466
38364
  exports.FileEntity = FileEntity = __decorate([
37467
38365
  (0, global_1.RegisterClass)(core_1.BaseEntity, 'Files')
37468
38366
  ], FileEntity);
37469
- /**
37470
- * Flyway _schema _histories - strongly typed entity sub-class
37471
- * * Schema: __mj
37472
- * * Base Table: flyway_schema_history
37473
- * * Base View: vwFlyway_schema_histories
37474
- * * Primary Key: installed_rank
37475
- * @extends {BaseEntity}
37476
- * @class
37477
- * @public
37478
- */
37479
- let flyway_schema_historyEntity = class flyway_schema_historyEntity extends core_1.BaseEntity {
37480
- /**
37481
- * Loads the Flyway _schema _histories record from the database
37482
- * @param installed_rank: number - primary key value to load the Flyway _schema _histories record.
37483
- * @param EntityRelationshipsToLoad - (optional) the relationships to load
37484
- * @returns {Promise<boolean>} - true if successful, false otherwise
37485
- * @public
37486
- * @async
37487
- * @memberof flyway_schema_historyEntity
37488
- * @method
37489
- * @override
37490
- */
37491
- async Load(installed_rank, EntityRelationshipsToLoad) {
37492
- const compositeKey = new core_1.CompositeKey();
37493
- compositeKey.KeyValuePairs.push({ FieldName: 'installed_rank', Value: installed_rank });
37494
- return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
37495
- }
37496
- /**
37497
- * * Field Name: installed_rank
37498
- * * Display Name: installed _rank
37499
- * * SQL Data Type: int
37500
- */
37501
- get installed_rank() {
37502
- return this.Get('installed_rank');
37503
- }
37504
- set installed_rank(value) {
37505
- this.Set('installed_rank', value);
37506
- }
37507
- /**
37508
- * * Field Name: version
37509
- * * Display Name: version
37510
- * * SQL Data Type: nvarchar(50)
37511
- */
37512
- get version() {
37513
- return this.Get('version');
37514
- }
37515
- set version(value) {
37516
- this.Set('version', value);
37517
- }
37518
- /**
37519
- * * Field Name: description
37520
- * * Display Name: description
37521
- * * SQL Data Type: nvarchar(200)
37522
- */
37523
- get description() {
37524
- return this.Get('description');
37525
- }
37526
- set description(value) {
37527
- this.Set('description', value);
37528
- }
37529
- /**
37530
- * * Field Name: type
37531
- * * Display Name: type
37532
- * * SQL Data Type: nvarchar(20)
37533
- */
37534
- get type() {
37535
- return this.Get('type');
37536
- }
37537
- set type(value) {
37538
- this.Set('type', value);
37539
- }
37540
- /**
37541
- * * Field Name: script
37542
- * * Display Name: script
37543
- * * SQL Data Type: nvarchar(1000)
37544
- */
37545
- get script() {
37546
- return this.Get('script');
37547
- }
37548
- set script(value) {
37549
- this.Set('script', value);
37550
- }
37551
- /**
37552
- * * Field Name: checksum
37553
- * * Display Name: checksum
37554
- * * SQL Data Type: int
37555
- */
37556
- get checksum() {
37557
- return this.Get('checksum');
37558
- }
37559
- set checksum(value) {
37560
- this.Set('checksum', value);
37561
- }
37562
- /**
37563
- * * Field Name: installed_by
37564
- * * Display Name: installed _by
37565
- * * SQL Data Type: nvarchar(100)
37566
- */
37567
- get installed_by() {
37568
- return this.Get('installed_by');
37569
- }
37570
- set installed_by(value) {
37571
- this.Set('installed_by', value);
37572
- }
37573
- /**
37574
- * * Field Name: installed_on
37575
- * * Display Name: installed _on
37576
- * * SQL Data Type: datetime
37577
- * * Default Value: getdate()
37578
- */
37579
- get installed_on() {
37580
- return this.Get('installed_on');
37581
- }
37582
- set installed_on(value) {
37583
- this.Set('installed_on', value);
37584
- }
37585
- /**
37586
- * * Field Name: execution_time
37587
- * * Display Name: execution _time
37588
- * * SQL Data Type: int
37589
- */
37590
- get execution_time() {
37591
- return this.Get('execution_time');
37592
- }
37593
- set execution_time(value) {
37594
- this.Set('execution_time', value);
37595
- }
37596
- /**
37597
- * * Field Name: success
37598
- * * Display Name: success
37599
- * * SQL Data Type: bit
37600
- */
37601
- get success() {
37602
- return this.Get('success');
37603
- }
37604
- set success(value) {
37605
- this.Set('success', value);
37606
- }
37607
- /**
37608
- * * Field Name: __mj_CreatedAt
37609
- * * Display Name: Created At
37610
- * * SQL Data Type: datetimeoffset
37611
- * * Default Value: getutcdate()
37612
- */
37613
- get __mj_CreatedAt() {
37614
- return this.Get('__mj_CreatedAt');
37615
- }
37616
- /**
37617
- * * Field Name: __mj_UpdatedAt
37618
- * * Display Name: Updated At
37619
- * * SQL Data Type: datetimeoffset
37620
- * * Default Value: getutcdate()
37621
- */
37622
- get __mj_UpdatedAt() {
37623
- return this.Get('__mj_UpdatedAt');
37624
- }
37625
- };
37626
- exports.flyway_schema_historyEntity = flyway_schema_historyEntity;
37627
- exports.flyway_schema_historyEntity = flyway_schema_historyEntity = __decorate([
37628
- (0, global_1.RegisterClass)(core_1.BaseEntity, 'Flyway _schema _histories')
37629
- ], flyway_schema_historyEntity);
37630
38367
  /**
37631
38368
  * Generated Code Categories - strongly typed entity sub-class
37632
38369
  * * Schema: __mj
@@ -39900,7 +40637,7 @@ let AIAgentExampleEntity = class AIAgentExampleEntity extends core_1.BaseEntity
39900
40637
  }
39901
40638
  /**
39902
40639
  * * Field Name: AgentID
39903
- * * Display Name: Agent ID
40640
+ * * Display Name: Agent
39904
40641
  * * SQL Data Type: uniqueidentifier
39905
40642
  * * Related Entity/Foreign Key: AI Agents (vwAIAgents.ID)
39906
40643
  * * Description: The AI agent this example is associated with. Examples are always agent-specific.
@@ -39913,7 +40650,7 @@ let AIAgentExampleEntity = class AIAgentExampleEntity extends core_1.BaseEntity
39913
40650
  }
39914
40651
  /**
39915
40652
  * * Field Name: UserID
39916
- * * Display Name: User ID
40653
+ * * Display Name: User
39917
40654
  * * SQL Data Type: uniqueidentifier
39918
40655
  * * Related Entity/Foreign Key: Users (vwUsers.ID)
39919
40656
  * * Description: Optional user scope. When populated, this example is specific to this user.
@@ -39926,7 +40663,7 @@ let AIAgentExampleEntity = class AIAgentExampleEntity extends core_1.BaseEntity
39926
40663
  }
39927
40664
  /**
39928
40665
  * * Field Name: CompanyID
39929
- * * Display Name: Company ID
40666
+ * * Display Name: Company
39930
40667
  * * SQL Data Type: uniqueidentifier
39931
40668
  * * Related Entity/Foreign Key: Companies (vwCompanies.ID)
39932
40669
  * * Description: Optional company scope. When populated, this example is specific to this company.
@@ -39996,7 +40733,7 @@ let AIAgentExampleEntity = class AIAgentExampleEntity extends core_1.BaseEntity
39996
40733
  }
39997
40734
  /**
39998
40735
  * * Field Name: SourceConversationID
39999
- * * Display Name: Source Conversation ID
40736
+ * * Display Name: Source Conversation
40000
40737
  * * SQL Data Type: uniqueidentifier
40001
40738
  * * Related Entity/Foreign Key: Conversations (vwConversations.ID)
40002
40739
  * * Description: Optional reference to the conversation where this example originated.
@@ -40009,7 +40746,7 @@ let AIAgentExampleEntity = class AIAgentExampleEntity extends core_1.BaseEntity
40009
40746
  }
40010
40747
  /**
40011
40748
  * * Field Name: SourceConversationDetailID
40012
- * * Display Name: Source Conversation Detail ID
40749
+ * * Display Name: Source Conversation Detail
40013
40750
  * * SQL Data Type: uniqueidentifier
40014
40751
  * * Related Entity/Foreign Key: Conversation Details (vwConversationDetails.ID)
40015
40752
  * * Description: Optional reference to the specific conversation message that represents this example.
@@ -40022,7 +40759,7 @@ let AIAgentExampleEntity = class AIAgentExampleEntity extends core_1.BaseEntity
40022
40759
  }
40023
40760
  /**
40024
40761
  * * Field Name: SourceAIAgentRunID
40025
- * * Display Name: Source AI Agent Run ID
40762
+ * * Display Name: Source AI Agent Run
40026
40763
  * * SQL Data Type: uniqueidentifier
40027
40764
  * * Related Entity/Foreign Key: MJ: AI Agent Runs (vwAIAgentRuns.ID)
40028
40765
  * * Description: Optional reference to the AI agent run that generated this example.
@@ -40107,7 +40844,7 @@ let AIAgentExampleEntity = class AIAgentExampleEntity extends core_1.BaseEntity
40107
40844
  }
40108
40845
  /**
40109
40846
  * * Field Name: EmbeddingModelID
40110
- * * Display Name: Embedding Model ID
40847
+ * * Display Name: Embedding Model
40111
40848
  * * SQL Data Type: uniqueidentifier
40112
40849
  * * Related Entity/Foreign Key: AI Models (vwAIModels.ID)
40113
40850
  * * Description: Reference to the AI model used to generate the embedding vector.
@@ -40119,6 +40856,80 @@ let AIAgentExampleEntity = class AIAgentExampleEntity extends core_1.BaseEntity
40119
40856
  this.Set('EmbeddingModelID', value);
40120
40857
  }
40121
40858
  /**
40859
+ * * Field Name: PrimaryScopeEntityID
40860
+ * * Display Name: Primary Scope Entity
40861
+ * * SQL Data Type: uniqueidentifier
40862
+ * * Related Entity/Foreign Key: Entities (vwEntities.ID)
40863
+ * * Description: Foreign key to Entity table identifying which entity type is used for primary scoping. NULL means this is a global example.
40864
+ */
40865
+ get PrimaryScopeEntityID() {
40866
+ return this.Get('PrimaryScopeEntityID');
40867
+ }
40868
+ set PrimaryScopeEntityID(value) {
40869
+ this.Set('PrimaryScopeEntityID', value);
40870
+ }
40871
+ /**
40872
+ * * Field Name: PrimaryScopeRecordID
40873
+ * * Display Name: Primary Scope Record
40874
+ * * SQL Data Type: nvarchar(100)
40875
+ * * Description: The record ID within the primary scope entity. NULL means global example. When set with empty SecondaryScopes, indicates primary-scope-only example.
40876
+ */
40877
+ get PrimaryScopeRecordID() {
40878
+ return this.Get('PrimaryScopeRecordID');
40879
+ }
40880
+ set PrimaryScopeRecordID(value) {
40881
+ this.Set('PrimaryScopeRecordID', value);
40882
+ }
40883
+ /**
40884
+ * * Field Name: SecondaryScopes
40885
+ * * Display Name: Secondary Scopes
40886
+ * * SQL Data Type: nvarchar(MAX)
40887
+ * * Description: JSON object containing additional scope dimensions. Empty/NULL with PrimaryScopeRecordID set = org-level example. Populated = fully-scoped example.
40888
+ */
40889
+ get SecondaryScopes() {
40890
+ return this.Get('SecondaryScopes');
40891
+ }
40892
+ set SecondaryScopes(value) {
40893
+ this.Set('SecondaryScopes', value);
40894
+ }
40895
+ /**
40896
+ * * Field Name: LastAccessedAt
40897
+ * * Display Name: Last Accessed At
40898
+ * * SQL Data Type: datetimeoffset
40899
+ * * Description: Timestamp of when this example was last accessed/used for agent context. Used for lifecycle management and cleanup.
40900
+ */
40901
+ get LastAccessedAt() {
40902
+ return this.Get('LastAccessedAt');
40903
+ }
40904
+ set LastAccessedAt(value) {
40905
+ this.Set('LastAccessedAt', value);
40906
+ }
40907
+ /**
40908
+ * * Field Name: AccessCount
40909
+ * * Display Name: Access Count
40910
+ * * SQL Data Type: int
40911
+ * * Default Value: 0
40912
+ * * Description: Number of times this example has been accessed/used. Used for analytics and determining example value.
40913
+ */
40914
+ get AccessCount() {
40915
+ return this.Get('AccessCount');
40916
+ }
40917
+ set AccessCount(value) {
40918
+ this.Set('AccessCount', value);
40919
+ }
40920
+ /**
40921
+ * * Field Name: ExpiresAt
40922
+ * * Display Name: Expires At
40923
+ * * SQL Data Type: datetimeoffset
40924
+ * * Description: Optional expiration timestamp. Examples past this date are candidates for archival. NULL means no expiration.
40925
+ */
40926
+ get ExpiresAt() {
40927
+ return this.Get('ExpiresAt');
40928
+ }
40929
+ set ExpiresAt(value) {
40930
+ this.Set('ExpiresAt', value);
40931
+ }
40932
+ /**
40122
40933
  * * Field Name: Agent
40123
40934
  * * Display Name: Agent
40124
40935
  * * SQL Data Type: nvarchar(255)
@@ -40174,6 +40985,14 @@ let AIAgentExampleEntity = class AIAgentExampleEntity extends core_1.BaseEntity
40174
40985
  get EmbeddingModel() {
40175
40986
  return this.Get('EmbeddingModel');
40176
40987
  }
40988
+ /**
40989
+ * * Field Name: PrimaryScopeEntity
40990
+ * * Display Name: Primary Scope Entity
40991
+ * * SQL Data Type: nvarchar(255)
40992
+ */
40993
+ get PrimaryScopeEntity() {
40994
+ return this.Get('PrimaryScopeEntity');
40995
+ }
40177
40996
  };
40178
40997
  exports.AIAgentExampleEntity = AIAgentExampleEntity;
40179
40998
  exports.AIAgentExampleEntity = AIAgentExampleEntity = __decorate([
@@ -41744,7 +42563,7 @@ let AIAgentRunEntity = class AIAgentRunEntity extends core_1.BaseEntity {
41744
42563
  }
41745
42564
  /**
41746
42565
  * * Field Name: AgentID
41747
- * * Display Name: Agent ID
42566
+ * * Display Name: Agent
41748
42567
  * * SQL Data Type: uniqueidentifier
41749
42568
  * * Related Entity/Foreign Key: AI Agents (vwAIAgents.ID)
41750
42569
  * * Description: Reference to the AIAgent that is being executed in this run
@@ -41839,7 +42658,7 @@ let AIAgentRunEntity = class AIAgentRunEntity extends core_1.BaseEntity {
41839
42658
  }
41840
42659
  /**
41841
42660
  * * Field Name: ConversationID
41842
- * * Display Name: Conversation ID
42661
+ * * Display Name: Conversation
41843
42662
  * * SQL Data Type: uniqueidentifier
41844
42663
  * * Related Entity/Foreign Key: Conversations (vwConversations.ID)
41845
42664
  * * Description: Identifier linking multiple agent runs that are part of the same conversation or user session
@@ -41852,7 +42671,7 @@ let AIAgentRunEntity = class AIAgentRunEntity extends core_1.BaseEntity {
41852
42671
  }
41853
42672
  /**
41854
42673
  * * Field Name: UserID
41855
- * * Display Name: User ID
42674
+ * * Display Name: User
41856
42675
  * * SQL Data Type: uniqueidentifier
41857
42676
  * * Related Entity/Foreign Key: Users (vwUsers.ID)
41858
42677
  * * Description: User context identifier for authentication and permissions during the agent run
@@ -42258,6 +43077,43 @@ each time the agent processes a prompt step.
42258
43077
  this.Set('TestRunID', value);
42259
43078
  }
42260
43079
  /**
43080
+ * * Field Name: PrimaryScopeEntityID
43081
+ * * Display Name: Primary Scope Entity ID
43082
+ * * SQL Data Type: uniqueidentifier
43083
+ * * Related Entity/Foreign Key: Entities (vwEntities.ID)
43084
+ * * Description: Foreign key to Entity table identifying which entity type is used for primary scoping (e.g., Organizations, Tenants)
43085
+ */
43086
+ get PrimaryScopeEntityID() {
43087
+ return this.Get('PrimaryScopeEntityID');
43088
+ }
43089
+ set PrimaryScopeEntityID(value) {
43090
+ this.Set('PrimaryScopeEntityID', value);
43091
+ }
43092
+ /**
43093
+ * * Field Name: PrimaryScopeRecordID
43094
+ * * Display Name: Primary Scope Record ID
43095
+ * * SQL Data Type: nvarchar(100)
43096
+ * * Description: The record ID within the primary scope entity (e.g., the specific OrganizationID). Indexed for fast multi-tenant filtering.
43097
+ */
43098
+ get PrimaryScopeRecordID() {
43099
+ return this.Get('PrimaryScopeRecordID');
43100
+ }
43101
+ set PrimaryScopeRecordID(value) {
43102
+ this.Set('PrimaryScopeRecordID', value);
43103
+ }
43104
+ /**
43105
+ * * Field Name: SecondaryScopes
43106
+ * * Display Name: Secondary Scopes
43107
+ * * SQL Data Type: nvarchar(MAX)
43108
+ * * Description: JSON object containing additional scope dimensions beyond the primary scope. Example: {"ContactID":"abc-123","TeamID":"team-456"}
43109
+ */
43110
+ get SecondaryScopes() {
43111
+ return this.Get('SecondaryScopes');
43112
+ }
43113
+ set SecondaryScopes(value) {
43114
+ this.Set('SecondaryScopes', value);
43115
+ }
43116
+ /**
42261
43117
  * * Field Name: Agent
42262
43118
  * * Display Name: Agent
42263
43119
  * * SQL Data Type: nvarchar(255)
@@ -42346,6 +43202,14 @@ each time the agent processes a prompt step.
42346
43202
  return this.Get('TestRun');
42347
43203
  }
42348
43204
  /**
43205
+ * * Field Name: PrimaryScopeEntity
43206
+ * * Display Name: Primary Scope Entity
43207
+ * * SQL Data Type: nvarchar(255)
43208
+ */
43209
+ get PrimaryScopeEntity() {
43210
+ return this.Get('PrimaryScopeEntity');
43211
+ }
43212
+ /**
42349
43213
  * * Field Name: RootParentRunID
42350
43214
  * * Display Name: Root Parent Run ID
42351
43215
  * * SQL Data Type: uniqueidentifier
@@ -47243,278 +48107,1388 @@ let AIVendorTypeDefinitionEntity = class AIVendorTypeDefinitionEntity extends co
47243
48107
  get __mj_UpdatedAt() {
47244
48108
  return this.Get('__mj_UpdatedAt');
47245
48109
  }
47246
- };
47247
- exports.AIVendorTypeDefinitionEntity = AIVendorTypeDefinitionEntity;
47248
- exports.AIVendorTypeDefinitionEntity = AIVendorTypeDefinitionEntity = __decorate([
47249
- (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: AI Vendor Type Definitions')
47250
- ], AIVendorTypeDefinitionEntity);
47251
- /**
47252
- * MJ: AI Vendor Types - strongly typed entity sub-class
47253
- * * Schema: __mj
47254
- * * Base Table: AIVendorType
47255
- * * Base View: vwAIVendorTypes
47256
- * * @description Associates vendors with their types (Model Developer, Inference Provider) and tracks the status of each role.
47257
- * * Primary Key: ID
47258
- * @extends {BaseEntity}
47259
- * @class
47260
- * @public
47261
- */
47262
- let AIVendorTypeEntity = class AIVendorTypeEntity extends core_1.BaseEntity {
48110
+ };
48111
+ exports.AIVendorTypeDefinitionEntity = AIVendorTypeDefinitionEntity;
48112
+ exports.AIVendorTypeDefinitionEntity = AIVendorTypeDefinitionEntity = __decorate([
48113
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: AI Vendor Type Definitions')
48114
+ ], AIVendorTypeDefinitionEntity);
48115
+ /**
48116
+ * MJ: AI Vendor Types - strongly typed entity sub-class
48117
+ * * Schema: __mj
48118
+ * * Base Table: AIVendorType
48119
+ * * Base View: vwAIVendorTypes
48120
+ * * @description Associates vendors with their types (Model Developer, Inference Provider) and tracks the status of each role.
48121
+ * * Primary Key: ID
48122
+ * @extends {BaseEntity}
48123
+ * @class
48124
+ * @public
48125
+ */
48126
+ let AIVendorTypeEntity = class AIVendorTypeEntity extends core_1.BaseEntity {
48127
+ /**
48128
+ * Loads the MJ: AI Vendor Types record from the database
48129
+ * @param ID: string - primary key value to load the MJ: AI Vendor Types record.
48130
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
48131
+ * @returns {Promise<boolean>} - true if successful, false otherwise
48132
+ * @public
48133
+ * @async
48134
+ * @memberof AIVendorTypeEntity
48135
+ * @method
48136
+ * @override
48137
+ */
48138
+ async Load(ID, EntityRelationshipsToLoad) {
48139
+ const compositeKey = new core_1.CompositeKey();
48140
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
48141
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
48142
+ }
48143
+ /**
48144
+ * Validate() method override for MJ: AI Vendor Types entity. This is an auto-generated method that invokes the generated validators for this entity for the following fields:
48145
+ * * Rank: This rule ensures that the Rank value cannot be negative. It must be zero or higher.
48146
+ * @public
48147
+ * @method
48148
+ * @override
48149
+ */
48150
+ Validate() {
48151
+ const result = super.Validate();
48152
+ this.ValidateRankIsNonNegative(result);
48153
+ result.Success = result.Success && (result.Errors.length === 0);
48154
+ return result;
48155
+ }
48156
+ /**
48157
+ * This rule ensures that the Rank value cannot be negative. It must be zero or higher.
48158
+ * @param result - the ValidationResult object to add any errors or warnings to
48159
+ * @public
48160
+ * @method
48161
+ */
48162
+ ValidateRankIsNonNegative(result) {
48163
+ if (this.Rank < 0) {
48164
+ result.Errors.push(new core_1.ValidationErrorInfo("Rank", "Rank must be zero or greater.", this.Rank, core_1.ValidationErrorType.Failure));
48165
+ }
48166
+ }
48167
+ /**
48168
+ * * Field Name: ID
48169
+ * * Display Name: ID
48170
+ * * SQL Data Type: uniqueidentifier
48171
+ * * Default Value: newsequentialid()
48172
+ */
48173
+ get ID() {
48174
+ return this.Get('ID');
48175
+ }
48176
+ set ID(value) {
48177
+ this.Set('ID', value);
48178
+ }
48179
+ /**
48180
+ * * Field Name: VendorID
48181
+ * * Display Name: Vendor ID
48182
+ * * SQL Data Type: uniqueidentifier
48183
+ * * Related Entity/Foreign Key: MJ: AI Vendors (vwAIVendors.ID)
48184
+ */
48185
+ get VendorID() {
48186
+ return this.Get('VendorID');
48187
+ }
48188
+ set VendorID(value) {
48189
+ this.Set('VendorID', value);
48190
+ }
48191
+ /**
48192
+ * * Field Name: TypeID
48193
+ * * Display Name: Type ID
48194
+ * * SQL Data Type: uniqueidentifier
48195
+ * * Related Entity/Foreign Key: MJ: AI Vendor Type Definitions (vwAIVendorTypeDefinitions.ID)
48196
+ */
48197
+ get TypeID() {
48198
+ return this.Get('TypeID');
48199
+ }
48200
+ set TypeID(value) {
48201
+ this.Set('TypeID', value);
48202
+ }
48203
+ /**
48204
+ * * Field Name: Rank
48205
+ * * Display Name: Rank
48206
+ * * SQL Data Type: int
48207
+ * * Default Value: 0
48208
+ * * Description: Determines the priority rank of this type for the vendor. Higher values indicate higher priority.
48209
+ */
48210
+ get Rank() {
48211
+ return this.Get('Rank');
48212
+ }
48213
+ set Rank(value) {
48214
+ this.Set('Rank', value);
48215
+ }
48216
+ /**
48217
+ * * Field Name: Status
48218
+ * * Display Name: Status
48219
+ * * SQL Data Type: nvarchar(20)
48220
+ * * Default Value: Active
48221
+ * * Value List Type: List
48222
+ * * Possible Values
48223
+ * * Active
48224
+ * * Deprecated
48225
+ * * Inactive
48226
+ * * Preview
48227
+ * * Description: The current status of this vendor type. Values include Active, Inactive, Deprecated, and Preview.
48228
+ */
48229
+ get Status() {
48230
+ return this.Get('Status');
48231
+ }
48232
+ set Status(value) {
48233
+ this.Set('Status', value);
48234
+ }
48235
+ /**
48236
+ * * Field Name: __mj_CreatedAt
48237
+ * * Display Name: Created At
48238
+ * * SQL Data Type: datetimeoffset
48239
+ * * Default Value: getutcdate()
48240
+ */
48241
+ get __mj_CreatedAt() {
48242
+ return this.Get('__mj_CreatedAt');
48243
+ }
48244
+ /**
48245
+ * * Field Name: __mj_UpdatedAt
48246
+ * * Display Name: Updated At
48247
+ * * SQL Data Type: datetimeoffset
48248
+ * * Default Value: getutcdate()
48249
+ */
48250
+ get __mj_UpdatedAt() {
48251
+ return this.Get('__mj_UpdatedAt');
48252
+ }
48253
+ /**
48254
+ * * Field Name: Vendor
48255
+ * * Display Name: Vendor
48256
+ * * SQL Data Type: nvarchar(50)
48257
+ */
48258
+ get Vendor() {
48259
+ return this.Get('Vendor');
48260
+ }
48261
+ /**
48262
+ * * Field Name: Type
48263
+ * * Display Name: Type
48264
+ * * SQL Data Type: nvarchar(50)
48265
+ */
48266
+ get Type() {
48267
+ return this.Get('Type');
48268
+ }
48269
+ };
48270
+ exports.AIVendorTypeEntity = AIVendorTypeEntity;
48271
+ exports.AIVendorTypeEntity = AIVendorTypeEntity = __decorate([
48272
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: AI Vendor Types')
48273
+ ], AIVendorTypeEntity);
48274
+ /**
48275
+ * MJ: AI Vendors - strongly typed entity sub-class
48276
+ * * Schema: __mj
48277
+ * * Base Table: AIVendor
48278
+ * * Base View: vwAIVendors
48279
+ * * @description Stores information about AI vendors providing models and/or inference services.
48280
+ * * Primary Key: ID
48281
+ * @extends {BaseEntity}
48282
+ * @class
48283
+ * @public
48284
+ */
48285
+ let AIVendorEntity = class AIVendorEntity extends core_1.BaseEntity {
48286
+ /**
48287
+ * Loads the MJ: AI Vendors record from the database
48288
+ * @param ID: string - primary key value to load the MJ: AI Vendors record.
48289
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
48290
+ * @returns {Promise<boolean>} - true if successful, false otherwise
48291
+ * @public
48292
+ * @async
48293
+ * @memberof AIVendorEntity
48294
+ * @method
48295
+ * @override
48296
+ */
48297
+ async Load(ID, EntityRelationshipsToLoad) {
48298
+ const compositeKey = new core_1.CompositeKey();
48299
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
48300
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
48301
+ }
48302
+ /**
48303
+ * * Field Name: ID
48304
+ * * Display Name: ID
48305
+ * * SQL Data Type: uniqueidentifier
48306
+ * * Default Value: newsequentialid()
48307
+ */
48308
+ get ID() {
48309
+ return this.Get('ID');
48310
+ }
48311
+ set ID(value) {
48312
+ this.Set('ID', value);
48313
+ }
48314
+ /**
48315
+ * * Field Name: Name
48316
+ * * Display Name: Name
48317
+ * * SQL Data Type: nvarchar(50)
48318
+ * * Description: The unique name of the vendor.
48319
+ */
48320
+ get Name() {
48321
+ return this.Get('Name');
48322
+ }
48323
+ set Name(value) {
48324
+ this.Set('Name', value);
48325
+ }
48326
+ /**
48327
+ * * Field Name: Description
48328
+ * * Display Name: Description
48329
+ * * SQL Data Type: nvarchar(MAX)
48330
+ * * Description: Detailed description of the vendor and their AI offerings.
48331
+ */
48332
+ get Description() {
48333
+ return this.Get('Description');
48334
+ }
48335
+ set Description(value) {
48336
+ this.Set('Description', value);
48337
+ }
48338
+ /**
48339
+ * * Field Name: __mj_CreatedAt
48340
+ * * Display Name: Created At
48341
+ * * SQL Data Type: datetimeoffset
48342
+ * * Default Value: getutcdate()
48343
+ */
48344
+ get __mj_CreatedAt() {
48345
+ return this.Get('__mj_CreatedAt');
48346
+ }
48347
+ /**
48348
+ * * Field Name: __mj_UpdatedAt
48349
+ * * Display Name: Updated At
48350
+ * * SQL Data Type: datetimeoffset
48351
+ * * Default Value: getutcdate()
48352
+ */
48353
+ get __mj_UpdatedAt() {
48354
+ return this.Get('__mj_UpdatedAt');
48355
+ }
48356
+ /**
48357
+ * * Field Name: CredentialTypeID
48358
+ * * Display Name: Credential Type ID
48359
+ * * SQL Data Type: uniqueidentifier
48360
+ * * Related Entity/Foreign Key: MJ: Credential Types (vwCredentialTypes.ID)
48361
+ * * Description: Reference to the type of credential this vendor expects (e.g., API Key, GCP Service Account, Azure Service Principal). Used for type-based default credential resolution when no explicit binding exists, and for UI guidance when creating credentials.
48362
+ */
48363
+ get CredentialTypeID() {
48364
+ return this.Get('CredentialTypeID');
48365
+ }
48366
+ set CredentialTypeID(value) {
48367
+ this.Set('CredentialTypeID', value);
48368
+ }
48369
+ /**
48370
+ * * Field Name: CredentialType
48371
+ * * Display Name: Credential Type
48372
+ * * SQL Data Type: nvarchar(100)
48373
+ */
48374
+ get CredentialType() {
48375
+ return this.Get('CredentialType');
48376
+ }
48377
+ };
48378
+ exports.AIVendorEntity = AIVendorEntity;
48379
+ exports.AIVendorEntity = AIVendorEntity = __decorate([
48380
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: AI Vendors')
48381
+ ], AIVendorEntity);
48382
+ /**
48383
+ * MJ: API Application Scopes - strongly typed entity sub-class
48384
+ * * Schema: __mj
48385
+ * * Base Table: APIApplicationScope
48386
+ * * Base View: vwAPIApplicationScopes
48387
+ * * @description Defines the scope ceiling for each application with pattern-based rules. Controls which scopes and resource patterns an application can use, regardless of what API keys grant.
48388
+ * * Primary Key: ID
48389
+ * @extends {BaseEntity}
48390
+ * @class
48391
+ * @public
48392
+ */
48393
+ let APIApplicationScopeEntity = class APIApplicationScopeEntity extends core_1.BaseEntity {
48394
+ /**
48395
+ * Loads the MJ: API Application Scopes record from the database
48396
+ * @param ID: string - primary key value to load the MJ: API Application Scopes record.
48397
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
48398
+ * @returns {Promise<boolean>} - true if successful, false otherwise
48399
+ * @public
48400
+ * @async
48401
+ * @memberof APIApplicationScopeEntity
48402
+ * @method
48403
+ * @override
48404
+ */
48405
+ async Load(ID, EntityRelationshipsToLoad) {
48406
+ const compositeKey = new core_1.CompositeKey();
48407
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
48408
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
48409
+ }
48410
+ /**
48411
+ * * Field Name: ID
48412
+ * * Display Name: ID
48413
+ * * SQL Data Type: uniqueidentifier
48414
+ * * Default Value: newsequentialid()
48415
+ */
48416
+ get ID() {
48417
+ return this.Get('ID');
48418
+ }
48419
+ set ID(value) {
48420
+ this.Set('ID', value);
48421
+ }
48422
+ /**
48423
+ * * Field Name: ApplicationID
48424
+ * * Display Name: Application
48425
+ * * SQL Data Type: uniqueidentifier
48426
+ * * Related Entity/Foreign Key: MJ: API Applications (vwAPIApplications.ID)
48427
+ * * Description: Reference to the application this ceiling rule applies to.
48428
+ */
48429
+ get ApplicationID() {
48430
+ return this.Get('ApplicationID');
48431
+ }
48432
+ set ApplicationID(value) {
48433
+ this.Set('ApplicationID', value);
48434
+ }
48435
+ /**
48436
+ * * Field Name: ScopeID
48437
+ * * Display Name: Scope
48438
+ * * SQL Data Type: uniqueidentifier
48439
+ * * Related Entity/Foreign Key: MJ: API Scopes (vwAPIScopes.ID)
48440
+ * * Description: Reference to the scope this rule applies to.
48441
+ */
48442
+ get ScopeID() {
48443
+ return this.Get('ScopeID');
48444
+ }
48445
+ set ScopeID(value) {
48446
+ this.Set('ScopeID', value);
48447
+ }
48448
+ /**
48449
+ * * Field Name: ResourcePattern
48450
+ * * Display Name: Resource Pattern
48451
+ * * SQL Data Type: nvarchar(750)
48452
+ * * Description: Glob pattern for matching resources (e.g., Users,Accounts or Skip* or *). NULL means match all resources.
48453
+ */
48454
+ get ResourcePattern() {
48455
+ return this.Get('ResourcePattern');
48456
+ }
48457
+ set ResourcePattern(value) {
48458
+ this.Set('ResourcePattern', value);
48459
+ }
48460
+ /**
48461
+ * * Field Name: PatternType
48462
+ * * Display Name: Pattern Type
48463
+ * * SQL Data Type: nvarchar(20)
48464
+ * * Default Value: Include
48465
+ * * Value List Type: List
48466
+ * * Possible Values
48467
+ * * Exclude
48468
+ * * Include
48469
+ * * Description: How to interpret the pattern: Include (grant if matches) or Exclude (grant if does NOT match).
48470
+ */
48471
+ get PatternType() {
48472
+ return this.Get('PatternType');
48473
+ }
48474
+ set PatternType(value) {
48475
+ this.Set('PatternType', value);
48476
+ }
48477
+ /**
48478
+ * * Field Name: IsDeny
48479
+ * * Display Name: Deny
48480
+ * * SQL Data Type: bit
48481
+ * * Default Value: 0
48482
+ * * Description: If true, this rule explicitly DENIES access. Deny rules trump allow rules at the same priority level.
48483
+ */
48484
+ get IsDeny() {
48485
+ return this.Get('IsDeny');
48486
+ }
48487
+ set IsDeny(value) {
48488
+ this.Set('IsDeny', value);
48489
+ }
48490
+ /**
48491
+ * * Field Name: Priority
48492
+ * * Display Name: Priority
48493
+ * * SQL Data Type: int
48494
+ * * Default Value: 0
48495
+ * * Description: Rule evaluation order. Higher priority rules are evaluated first. Within same priority, deny rules are evaluated before allow rules.
48496
+ */
48497
+ get Priority() {
48498
+ return this.Get('Priority');
48499
+ }
48500
+ set Priority(value) {
48501
+ this.Set('Priority', value);
48502
+ }
48503
+ /**
48504
+ * * Field Name: __mj_CreatedAt
48505
+ * * Display Name: Created At
48506
+ * * SQL Data Type: datetimeoffset
48507
+ * * Default Value: getutcdate()
48508
+ */
48509
+ get __mj_CreatedAt() {
48510
+ return this.Get('__mj_CreatedAt');
48511
+ }
48512
+ /**
48513
+ * * Field Name: __mj_UpdatedAt
48514
+ * * Display Name: Updated At
48515
+ * * SQL Data Type: datetimeoffset
48516
+ * * Default Value: getutcdate()
48517
+ */
48518
+ get __mj_UpdatedAt() {
48519
+ return this.Get('__mj_UpdatedAt');
48520
+ }
48521
+ /**
48522
+ * * Field Name: Application
48523
+ * * Display Name: Application Name
48524
+ * * SQL Data Type: nvarchar(100)
48525
+ */
48526
+ get Application() {
48527
+ return this.Get('Application');
48528
+ }
48529
+ /**
48530
+ * * Field Name: Scope
48531
+ * * Display Name: Scope Name
48532
+ * * SQL Data Type: nvarchar(100)
48533
+ */
48534
+ get Scope() {
48535
+ return this.Get('Scope');
48536
+ }
48537
+ };
48538
+ exports.APIApplicationScopeEntity = APIApplicationScopeEntity;
48539
+ exports.APIApplicationScopeEntity = APIApplicationScopeEntity = __decorate([
48540
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: API Application Scopes')
48541
+ ], APIApplicationScopeEntity);
48542
+ /**
48543
+ * MJ: API Applications - strongly typed entity sub-class
48544
+ * * Schema: __mj
48545
+ * * Base Table: APIApplication
48546
+ * * Base View: vwAPIApplications
48547
+ * * @description Registry of applications that can consume MemberJunction APIs. Each application defines a scope ceiling that limits what API keys can access when used with that application.
48548
+ * * Primary Key: ID
48549
+ * @extends {BaseEntity}
48550
+ * @class
48551
+ * @public
48552
+ */
48553
+ let APIApplicationEntity = class APIApplicationEntity extends core_1.BaseEntity {
48554
+ /**
48555
+ * Loads the MJ: API Applications record from the database
48556
+ * @param ID: string - primary key value to load the MJ: API Applications record.
48557
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
48558
+ * @returns {Promise<boolean>} - true if successful, false otherwise
48559
+ * @public
48560
+ * @async
48561
+ * @memberof APIApplicationEntity
48562
+ * @method
48563
+ * @override
48564
+ */
48565
+ async Load(ID, EntityRelationshipsToLoad) {
48566
+ const compositeKey = new core_1.CompositeKey();
48567
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
48568
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
48569
+ }
48570
+ /**
48571
+ * * Field Name: ID
48572
+ * * Display Name: ID
48573
+ * * SQL Data Type: uniqueidentifier
48574
+ * * Default Value: newsequentialid()
48575
+ */
48576
+ get ID() {
48577
+ return this.Get('ID');
48578
+ }
48579
+ set ID(value) {
48580
+ this.Set('ID', value);
48581
+ }
48582
+ /**
48583
+ * * Field Name: Name
48584
+ * * Display Name: Name
48585
+ * * SQL Data Type: nvarchar(100)
48586
+ * * Description: Unique name identifying the application (e.g., MJAPI, MCPServer, Portal, CLI).
48587
+ */
48588
+ get Name() {
48589
+ return this.Get('Name');
48590
+ }
48591
+ set Name(value) {
48592
+ this.Set('Name', value);
48593
+ }
48594
+ /**
48595
+ * * Field Name: Description
48596
+ * * Display Name: Description
48597
+ * * SQL Data Type: nvarchar(500)
48598
+ * * Description: Human-readable description of the application and its purpose.
48599
+ */
48600
+ get Description() {
48601
+ return this.Get('Description');
48602
+ }
48603
+ set Description(value) {
48604
+ this.Set('Description', value);
48605
+ }
48606
+ /**
48607
+ * * Field Name: IsActive
48608
+ * * Display Name: Active
48609
+ * * SQL Data Type: bit
48610
+ * * Default Value: 1
48611
+ * * Description: Whether this application is currently active. Inactive applications reject all API key authentication.
48612
+ */
48613
+ get IsActive() {
48614
+ return this.Get('IsActive');
48615
+ }
48616
+ set IsActive(value) {
48617
+ this.Set('IsActive', value);
48618
+ }
48619
+ /**
48620
+ * * Field Name: __mj_CreatedAt
48621
+ * * Display Name: Created At
48622
+ * * SQL Data Type: datetimeoffset
48623
+ * * Default Value: getutcdate()
48624
+ */
48625
+ get __mj_CreatedAt() {
48626
+ return this.Get('__mj_CreatedAt');
48627
+ }
48628
+ /**
48629
+ * * Field Name: __mj_UpdatedAt
48630
+ * * Display Name: Updated At
48631
+ * * SQL Data Type: datetimeoffset
48632
+ * * Default Value: getutcdate()
48633
+ */
48634
+ get __mj_UpdatedAt() {
48635
+ return this.Get('__mj_UpdatedAt');
48636
+ }
48637
+ };
48638
+ exports.APIApplicationEntity = APIApplicationEntity;
48639
+ exports.APIApplicationEntity = APIApplicationEntity = __decorate([
48640
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: API Applications')
48641
+ ], APIApplicationEntity);
48642
+ /**
48643
+ * MJ: API Key Applications - strongly typed entity sub-class
48644
+ * * Schema: __mj
48645
+ * * Base Table: APIKeyApplication
48646
+ * * Base View: vwAPIKeyApplications
48647
+ * * @description Optional binding of API keys to specific applications. If no records exist for a key, it works with all applications. If records exist, the key only works with those specific applications.
48648
+ * * Primary Key: ID
48649
+ * @extends {BaseEntity}
48650
+ * @class
48651
+ * @public
48652
+ */
48653
+ let APIKeyApplicationEntity = class APIKeyApplicationEntity extends core_1.BaseEntity {
48654
+ /**
48655
+ * Loads the MJ: API Key Applications record from the database
48656
+ * @param ID: string - primary key value to load the MJ: API Key Applications record.
48657
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
48658
+ * @returns {Promise<boolean>} - true if successful, false otherwise
48659
+ * @public
48660
+ * @async
48661
+ * @memberof APIKeyApplicationEntity
48662
+ * @method
48663
+ * @override
48664
+ */
48665
+ async Load(ID, EntityRelationshipsToLoad) {
48666
+ const compositeKey = new core_1.CompositeKey();
48667
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
48668
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
48669
+ }
48670
+ /**
48671
+ * * Field Name: ID
48672
+ * * Display Name: ID
48673
+ * * SQL Data Type: uniqueidentifier
48674
+ * * Default Value: newsequentialid()
48675
+ */
48676
+ get ID() {
48677
+ return this.Get('ID');
48678
+ }
48679
+ set ID(value) {
48680
+ this.Set('ID', value);
48681
+ }
48682
+ /**
48683
+ * * Field Name: APIKeyID
48684
+ * * Display Name: API Key
48685
+ * * SQL Data Type: uniqueidentifier
48686
+ * * Related Entity/Foreign Key: MJ: API Keys (vwAPIKeys.ID)
48687
+ * * Description: Reference to the API key being bound to an application.
48688
+ */
48689
+ get APIKeyID() {
48690
+ return this.Get('APIKeyID');
48691
+ }
48692
+ set APIKeyID(value) {
48693
+ this.Set('APIKeyID', value);
48694
+ }
48695
+ /**
48696
+ * * Field Name: ApplicationID
48697
+ * * Display Name: Application
48698
+ * * SQL Data Type: uniqueidentifier
48699
+ * * Related Entity/Foreign Key: MJ: API Applications (vwAPIApplications.ID)
48700
+ * * Description: Reference to the application this key is authorized to use.
48701
+ */
48702
+ get ApplicationID() {
48703
+ return this.Get('ApplicationID');
48704
+ }
48705
+ set ApplicationID(value) {
48706
+ this.Set('ApplicationID', value);
48707
+ }
48708
+ /**
48709
+ * * Field Name: __mj_CreatedAt
48710
+ * * Display Name: Created At
48711
+ * * SQL Data Type: datetimeoffset
48712
+ * * Default Value: getutcdate()
48713
+ */
48714
+ get __mj_CreatedAt() {
48715
+ return this.Get('__mj_CreatedAt');
48716
+ }
48717
+ /**
48718
+ * * Field Name: __mj_UpdatedAt
48719
+ * * Display Name: Updated At
48720
+ * * SQL Data Type: datetimeoffset
48721
+ * * Default Value: getutcdate()
48722
+ */
48723
+ get __mj_UpdatedAt() {
48724
+ return this.Get('__mj_UpdatedAt');
48725
+ }
48726
+ /**
48727
+ * * Field Name: APIKey
48728
+ * * Display Name: API Key Value
48729
+ * * SQL Data Type: nvarchar(255)
48730
+ */
48731
+ get APIKey() {
48732
+ return this.Get('APIKey');
48733
+ }
48734
+ /**
48735
+ * * Field Name: Application
48736
+ * * Display Name: Application Name
48737
+ * * SQL Data Type: nvarchar(100)
48738
+ */
48739
+ get Application() {
48740
+ return this.Get('Application');
48741
+ }
48742
+ };
48743
+ exports.APIKeyApplicationEntity = APIKeyApplicationEntity;
48744
+ exports.APIKeyApplicationEntity = APIKeyApplicationEntity = __decorate([
48745
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: API Key Applications')
48746
+ ], APIKeyApplicationEntity);
48747
+ /**
48748
+ * MJ: API Key Scopes - strongly typed entity sub-class
48749
+ * * Schema: __mj
48750
+ * * Base Table: APIKeyScope
48751
+ * * Base View: vwAPIKeyScopes
48752
+ * * @description Junction table linking API keys to their assigned permission scopes. Each key can have multiple scopes, and scopes can be shared across multiple keys.
48753
+ * * Primary Key: ID
48754
+ * @extends {BaseEntity}
48755
+ * @class
48756
+ * @public
48757
+ */
48758
+ let APIKeyScopeEntity = class APIKeyScopeEntity extends core_1.BaseEntity {
48759
+ /**
48760
+ * Loads the MJ: API Key Scopes record from the database
48761
+ * @param ID: string - primary key value to load the MJ: API Key Scopes record.
48762
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
48763
+ * @returns {Promise<boolean>} - true if successful, false otherwise
48764
+ * @public
48765
+ * @async
48766
+ * @memberof APIKeyScopeEntity
48767
+ * @method
48768
+ * @override
48769
+ */
48770
+ async Load(ID, EntityRelationshipsToLoad) {
48771
+ const compositeKey = new core_1.CompositeKey();
48772
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
48773
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
48774
+ }
48775
+ /**
48776
+ * * Field Name: ID
48777
+ * * Display Name: ID
48778
+ * * SQL Data Type: uniqueidentifier
48779
+ * * Default Value: newsequentialid()
48780
+ */
48781
+ get ID() {
48782
+ return this.Get('ID');
48783
+ }
48784
+ set ID(value) {
48785
+ this.Set('ID', value);
48786
+ }
48787
+ /**
48788
+ * * Field Name: APIKeyID
48789
+ * * Display Name: API Key
48790
+ * * SQL Data Type: uniqueidentifier
48791
+ * * Related Entity/Foreign Key: MJ: API Keys (vwAPIKeys.ID)
48792
+ */
48793
+ get APIKeyID() {
48794
+ return this.Get('APIKeyID');
48795
+ }
48796
+ set APIKeyID(value) {
48797
+ this.Set('APIKeyID', value);
48798
+ }
48799
+ /**
48800
+ * * Field Name: ScopeID
48801
+ * * Display Name: Scope ID
48802
+ * * SQL Data Type: uniqueidentifier
48803
+ * * Related Entity/Foreign Key: MJ: API Scopes (vwAPIScopes.ID)
48804
+ */
48805
+ get ScopeID() {
48806
+ return this.Get('ScopeID');
48807
+ }
48808
+ set ScopeID(value) {
48809
+ this.Set('ScopeID', value);
48810
+ }
48811
+ /**
48812
+ * * Field Name: __mj_CreatedAt
48813
+ * * Display Name: Created At
48814
+ * * SQL Data Type: datetimeoffset
48815
+ * * Default Value: getutcdate()
48816
+ */
48817
+ get __mj_CreatedAt() {
48818
+ return this.Get('__mj_CreatedAt');
48819
+ }
48820
+ /**
48821
+ * * Field Name: __mj_UpdatedAt
48822
+ * * Display Name: Updated At
48823
+ * * SQL Data Type: datetimeoffset
48824
+ * * Default Value: getutcdate()
48825
+ */
48826
+ get __mj_UpdatedAt() {
48827
+ return this.Get('__mj_UpdatedAt');
48828
+ }
48829
+ /**
48830
+ * * Field Name: ResourcePattern
48831
+ * * Display Name: Resource Pattern
48832
+ * * SQL Data Type: nvarchar(750)
48833
+ * * Description: Glob pattern for matching resources (e.g., Users,Accounts or Skip* or *). NULL means match all resources under this scope.
48834
+ */
48835
+ get ResourcePattern() {
48836
+ return this.Get('ResourcePattern');
48837
+ }
48838
+ set ResourcePattern(value) {
48839
+ this.Set('ResourcePattern', value);
48840
+ }
48841
+ /**
48842
+ * * Field Name: PatternType
48843
+ * * Display Name: Pattern Type
48844
+ * * SQL Data Type: nvarchar(20)
48845
+ * * Default Value: Include
48846
+ * * Value List Type: List
48847
+ * * Possible Values
48848
+ * * Exclude
48849
+ * * Include
48850
+ * * Description: How to interpret the pattern: Include (grant if matches) or Exclude (grant if does NOT match).
48851
+ */
48852
+ get PatternType() {
48853
+ return this.Get('PatternType');
48854
+ }
48855
+ set PatternType(value) {
48856
+ this.Set('PatternType', value);
48857
+ }
48858
+ /**
48859
+ * * Field Name: IsDeny
48860
+ * * Display Name: Deny Rule
48861
+ * * SQL Data Type: bit
48862
+ * * Default Value: 0
48863
+ * * Description: If true, this rule explicitly DENIES access. Deny rules trump allow rules at the same priority level.
48864
+ */
48865
+ get IsDeny() {
48866
+ return this.Get('IsDeny');
48867
+ }
48868
+ set IsDeny(value) {
48869
+ this.Set('IsDeny', value);
48870
+ }
48871
+ /**
48872
+ * * Field Name: Priority
48873
+ * * Display Name: Priority
48874
+ * * SQL Data Type: int
48875
+ * * Default Value: 0
48876
+ * * Description: Rule evaluation order. Higher priority rules are evaluated first. Within same priority, deny rules are evaluated before allow rules.
48877
+ */
48878
+ get Priority() {
48879
+ return this.Get('Priority');
48880
+ }
48881
+ set Priority(value) {
48882
+ this.Set('Priority', value);
48883
+ }
48884
+ /**
48885
+ * * Field Name: APIKey
48886
+ * * Display Name: API Key Name
48887
+ * * SQL Data Type: nvarchar(255)
48888
+ */
48889
+ get APIKey() {
48890
+ return this.Get('APIKey');
48891
+ }
48892
+ /**
48893
+ * * Field Name: Scope
48894
+ * * Display Name: Scope
48895
+ * * SQL Data Type: nvarchar(100)
48896
+ */
48897
+ get Scope() {
48898
+ return this.Get('Scope');
48899
+ }
48900
+ };
48901
+ exports.APIKeyScopeEntity = APIKeyScopeEntity;
48902
+ exports.APIKeyScopeEntity = APIKeyScopeEntity = __decorate([
48903
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: API Key Scopes')
48904
+ ], APIKeyScopeEntity);
48905
+ /**
48906
+ * MJ: API Key Usage Logs - strongly typed entity sub-class
48907
+ * * Schema: __mj
48908
+ * * Base Table: APIKeyUsageLog
48909
+ * * Base View: vwAPIKeyUsageLogs
48910
+ * * @description Audit log tracking all API key usage for analytics, debugging, and security monitoring. Records each request including endpoint, response status, timing, and client information.
48911
+ * * Primary Key: ID
48912
+ * @extends {BaseEntity}
48913
+ * @class
48914
+ * @public
48915
+ */
48916
+ let APIKeyUsageLogEntity = class APIKeyUsageLogEntity extends core_1.BaseEntity {
48917
+ /**
48918
+ * Loads the MJ: API Key Usage Logs record from the database
48919
+ * @param ID: string - primary key value to load the MJ: API Key Usage Logs record.
48920
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
48921
+ * @returns {Promise<boolean>} - true if successful, false otherwise
48922
+ * @public
48923
+ * @async
48924
+ * @memberof APIKeyUsageLogEntity
48925
+ * @method
48926
+ * @override
48927
+ */
48928
+ async Load(ID, EntityRelationshipsToLoad) {
48929
+ const compositeKey = new core_1.CompositeKey();
48930
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
48931
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
48932
+ }
48933
+ /**
48934
+ * * Field Name: ID
48935
+ * * Display Name: ID
48936
+ * * SQL Data Type: uniqueidentifier
48937
+ * * Default Value: newsequentialid()
48938
+ */
48939
+ get ID() {
48940
+ return this.Get('ID');
48941
+ }
48942
+ set ID(value) {
48943
+ this.Set('ID', value);
48944
+ }
48945
+ /**
48946
+ * * Field Name: APIKeyID
48947
+ * * Display Name: API Key
48948
+ * * SQL Data Type: uniqueidentifier
48949
+ * * Related Entity/Foreign Key: MJ: API Keys (vwAPIKeys.ID)
48950
+ */
48951
+ get APIKeyID() {
48952
+ return this.Get('APIKeyID');
48953
+ }
48954
+ set APIKeyID(value) {
48955
+ this.Set('APIKeyID', value);
48956
+ }
48957
+ /**
48958
+ * * Field Name: Endpoint
48959
+ * * Display Name: Endpoint
48960
+ * * SQL Data Type: nvarchar(500)
48961
+ * * Description: The API endpoint path that was accessed (e.g., /mcp, /graphql, /api/v1/entities).
48962
+ */
48963
+ get Endpoint() {
48964
+ return this.Get('Endpoint');
48965
+ }
48966
+ set Endpoint(value) {
48967
+ this.Set('Endpoint', value);
48968
+ }
48969
+ /**
48970
+ * * Field Name: Operation
48971
+ * * Display Name: Operation
48972
+ * * SQL Data Type: nvarchar(255)
48973
+ * * Description: The specific operation performed, such as the GraphQL operation name or MCP tool invoked (e.g., Get_Users_Record, Run_Agent).
48974
+ */
48975
+ get Operation() {
48976
+ return this.Get('Operation');
48977
+ }
48978
+ set Operation(value) {
48979
+ this.Set('Operation', value);
48980
+ }
48981
+ /**
48982
+ * * Field Name: Method
48983
+ * * Display Name: Method
48984
+ * * SQL Data Type: nvarchar(10)
48985
+ * * Description: HTTP method used for the request (GET, POST, PUT, DELETE, etc.).
48986
+ */
48987
+ get Method() {
48988
+ return this.Get('Method');
48989
+ }
48990
+ set Method(value) {
48991
+ this.Set('Method', value);
48992
+ }
48993
+ /**
48994
+ * * Field Name: StatusCode
48995
+ * * Display Name: Status Code
48996
+ * * SQL Data Type: int
48997
+ * * Description: HTTP response status code returned to the client (e.g., 200 for success, 401 for unauthorized, 500 for server error).
48998
+ */
48999
+ get StatusCode() {
49000
+ return this.Get('StatusCode');
49001
+ }
49002
+ set StatusCode(value) {
49003
+ this.Set('StatusCode', value);
49004
+ }
49005
+ /**
49006
+ * * Field Name: ResponseTimeMs
49007
+ * * Display Name: Response Time
49008
+ * * SQL Data Type: int
49009
+ * * Description: Total time in milliseconds to process the request and return a response. Useful for performance monitoring.
49010
+ */
49011
+ get ResponseTimeMs() {
49012
+ return this.Get('ResponseTimeMs');
49013
+ }
49014
+ set ResponseTimeMs(value) {
49015
+ this.Set('ResponseTimeMs', value);
49016
+ }
49017
+ /**
49018
+ * * Field Name: IPAddress
49019
+ * * Display Name: IP Address
49020
+ * * SQL Data Type: nvarchar(45)
49021
+ * * Description: Client IP address that made the request. Supports both IPv4 and IPv6 addresses (up to 45 characters).
49022
+ */
49023
+ get IPAddress() {
49024
+ return this.Get('IPAddress');
49025
+ }
49026
+ set IPAddress(value) {
49027
+ this.Set('IPAddress', value);
49028
+ }
49029
+ /**
49030
+ * * Field Name: UserAgent
49031
+ * * Display Name: User Agent
49032
+ * * SQL Data Type: nvarchar(500)
49033
+ * * Description: User-Agent header from the HTTP request, identifying the client application or library making the API call.
49034
+ */
49035
+ get UserAgent() {
49036
+ return this.Get('UserAgent');
49037
+ }
49038
+ set UserAgent(value) {
49039
+ this.Set('UserAgent', value);
49040
+ }
49041
+ /**
49042
+ * * Field Name: __mj_CreatedAt
49043
+ * * Display Name: Created At
49044
+ * * SQL Data Type: datetimeoffset
49045
+ * * Default Value: getutcdate()
49046
+ */
49047
+ get __mj_CreatedAt() {
49048
+ return this.Get('__mj_CreatedAt');
49049
+ }
49050
+ /**
49051
+ * * Field Name: __mj_UpdatedAt
49052
+ * * Display Name: Updated At
49053
+ * * SQL Data Type: datetimeoffset
49054
+ * * Default Value: getutcdate()
49055
+ */
49056
+ get __mj_UpdatedAt() {
49057
+ return this.Get('__mj_UpdatedAt');
49058
+ }
49059
+ /**
49060
+ * * Field Name: ApplicationID
49061
+ * * Display Name: Application ID
49062
+ * * SQL Data Type: uniqueidentifier
49063
+ * * Related Entity/Foreign Key: MJ: API Applications (vwAPIApplications.ID)
49064
+ * * Description: The application through which this request was made (MJAPI, MCPServer, etc.).
49065
+ */
49066
+ get ApplicationID() {
49067
+ return this.Get('ApplicationID');
49068
+ }
49069
+ set ApplicationID(value) {
49070
+ this.Set('ApplicationID', value);
49071
+ }
49072
+ /**
49073
+ * * Field Name: RequestedResource
49074
+ * * Display Name: Requested Resource
49075
+ * * SQL Data Type: nvarchar(500)
49076
+ * * Description: The specific resource that was requested (e.g., entity name, agent name, query name).
49077
+ */
49078
+ get RequestedResource() {
49079
+ return this.Get('RequestedResource');
49080
+ }
49081
+ set RequestedResource(value) {
49082
+ this.Set('RequestedResource', value);
49083
+ }
49084
+ /**
49085
+ * * Field Name: ScopesEvaluated
49086
+ * * Display Name: Scopes Evaluated
49087
+ * * SQL Data Type: nvarchar(MAX)
49088
+ * * Description: JSON array containing detailed evaluation of each scope rule checked during authorization.
49089
+ */
49090
+ get ScopesEvaluated() {
49091
+ return this.Get('ScopesEvaluated');
49092
+ }
49093
+ set ScopesEvaluated(value) {
49094
+ this.Set('ScopesEvaluated', value);
49095
+ }
49096
+ /**
49097
+ * * Field Name: AuthorizationResult
49098
+ * * Display Name: Authorization Result
49099
+ * * SQL Data Type: nvarchar(20)
49100
+ * * Default Value: Allowed
49101
+ * * Value List Type: List
49102
+ * * Possible Values
49103
+ * * Allowed
49104
+ * * Denied
49105
+ * * NoScopesRequired
49106
+ * * Description: Final authorization result: Allowed, Denied, or NoScopesRequired (for operations that do not require scope checks).
49107
+ */
49108
+ get AuthorizationResult() {
49109
+ return this.Get('AuthorizationResult');
49110
+ }
49111
+ set AuthorizationResult(value) {
49112
+ this.Set('AuthorizationResult', value);
49113
+ }
49114
+ /**
49115
+ * * Field Name: DeniedReason
49116
+ * * Display Name: Denied Reason
49117
+ * * SQL Data Type: nvarchar(500)
49118
+ * * Description: When authorization is denied, explains why (e.g., app ceiling blocked, no matching key scope, explicit deny rule).
49119
+ */
49120
+ get DeniedReason() {
49121
+ return this.Get('DeniedReason');
49122
+ }
49123
+ set DeniedReason(value) {
49124
+ this.Set('DeniedReason', value);
49125
+ }
49126
+ /**
49127
+ * * Field Name: APIKey
49128
+ * * Display Name: API Key Value
49129
+ * * SQL Data Type: nvarchar(255)
49130
+ */
49131
+ get APIKey() {
49132
+ return this.Get('APIKey');
49133
+ }
49134
+ /**
49135
+ * * Field Name: Application
49136
+ * * Display Name: Application
49137
+ * * SQL Data Type: nvarchar(100)
49138
+ */
49139
+ get Application() {
49140
+ return this.Get('Application');
49141
+ }
49142
+ };
49143
+ exports.APIKeyUsageLogEntity = APIKeyUsageLogEntity;
49144
+ exports.APIKeyUsageLogEntity = APIKeyUsageLogEntity = __decorate([
49145
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: API Key Usage Logs')
49146
+ ], APIKeyUsageLogEntity);
49147
+ /**
49148
+ * MJ: API Keys - strongly typed entity sub-class
49149
+ * * Schema: __mj
49150
+ * * Base Table: APIKey
49151
+ * * Base View: vwAPIKeys
49152
+ * * @description Stores API keys for programmatic access to MemberJunction services. Keys are stored as SHA-256 hashes for security. Each key is associated with a user context and can have multiple permission scopes assigned.
49153
+ * * Primary Key: ID
49154
+ * @extends {BaseEntity}
49155
+ * @class
49156
+ * @public
49157
+ */
49158
+ let APIKeyEntity = class APIKeyEntity extends core_1.BaseEntity {
49159
+ /**
49160
+ * Loads the MJ: API Keys record from the database
49161
+ * @param ID: string - primary key value to load the MJ: API Keys record.
49162
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
49163
+ * @returns {Promise<boolean>} - true if successful, false otherwise
49164
+ * @public
49165
+ * @async
49166
+ * @memberof APIKeyEntity
49167
+ * @method
49168
+ * @override
49169
+ */
49170
+ async Load(ID, EntityRelationshipsToLoad) {
49171
+ const compositeKey = new core_1.CompositeKey();
49172
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
49173
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
49174
+ }
49175
+ /**
49176
+ * * Field Name: ID
49177
+ * * Display Name: ID
49178
+ * * SQL Data Type: uniqueidentifier
49179
+ * * Default Value: newsequentialid()
49180
+ */
49181
+ get ID() {
49182
+ return this.Get('ID');
49183
+ }
49184
+ set ID(value) {
49185
+ this.Set('ID', value);
49186
+ }
49187
+ /**
49188
+ * * Field Name: Hash
49189
+ * * Display Name: Hash
49190
+ * * SQL Data Type: nvarchar(64)
49191
+ * * Description: SHA-256 hash of the raw API key (64 hexadecimal characters). The raw key is only shown once at creation time and cannot be recovered.
49192
+ */
49193
+ get Hash() {
49194
+ return this.Get('Hash');
49195
+ }
49196
+ set Hash(value) {
49197
+ this.Set('Hash', value);
49198
+ }
49199
+ /**
49200
+ * * Field Name: UserID
49201
+ * * Display Name: User
49202
+ * * SQL Data Type: uniqueidentifier
49203
+ * * Related Entity/Foreign Key: Users (vwUsers.ID)
49204
+ */
49205
+ get UserID() {
49206
+ return this.Get('UserID');
49207
+ }
49208
+ set UserID(value) {
49209
+ this.Set('UserID', value);
49210
+ }
49211
+ /**
49212
+ * * Field Name: Label
49213
+ * * Display Name: Label
49214
+ * * SQL Data Type: nvarchar(255)
49215
+ * * Description: User-friendly name for identifying the key purpose (e.g., Cowork Integration, CI/CD Pipeline, Mobile App).
49216
+ */
49217
+ get Label() {
49218
+ return this.Get('Label');
49219
+ }
49220
+ set Label(value) {
49221
+ this.Set('Label', value);
49222
+ }
49223
+ /**
49224
+ * * Field Name: Description
49225
+ * * Display Name: Description
49226
+ * * SQL Data Type: nvarchar(1000)
49227
+ * * Description: Optional detailed description of the key's intended use, integration details, or other notes.
49228
+ */
49229
+ get Description() {
49230
+ return this.Get('Description');
49231
+ }
49232
+ set Description(value) {
49233
+ this.Set('Description', value);
49234
+ }
49235
+ /**
49236
+ * * Field Name: Status
49237
+ * * Display Name: Status
49238
+ * * SQL Data Type: nvarchar(20)
49239
+ * * Default Value: Active
49240
+ * * Value List Type: List
49241
+ * * Possible Values
49242
+ * * Active
49243
+ * * Revoked
49244
+ * * Description: Current lifecycle status of the key. Active keys can be used for authentication; Revoked keys are permanently disabled.
49245
+ */
49246
+ get Status() {
49247
+ return this.Get('Status');
49248
+ }
49249
+ set Status(value) {
49250
+ this.Set('Status', value);
49251
+ }
49252
+ /**
49253
+ * * Field Name: ExpiresAt
49254
+ * * Display Name: Expires At
49255
+ * * SQL Data Type: datetimeoffset
49256
+ * * Description: Optional expiration timestamp. Keys with NULL expiration never expire. Expired keys are rejected during authentication.
49257
+ */
49258
+ get ExpiresAt() {
49259
+ return this.Get('ExpiresAt');
49260
+ }
49261
+ set ExpiresAt(value) {
49262
+ this.Set('ExpiresAt', value);
49263
+ }
49264
+ /**
49265
+ * * Field Name: LastUsedAt
49266
+ * * Display Name: Last Used At
49267
+ * * SQL Data Type: datetimeoffset
49268
+ * * Description: Timestamp of the most recent successful authentication using this key. Updated on each valid API request.
49269
+ */
49270
+ get LastUsedAt() {
49271
+ return this.Get('LastUsedAt');
49272
+ }
49273
+ set LastUsedAt(value) {
49274
+ this.Set('LastUsedAt', value);
49275
+ }
49276
+ /**
49277
+ * * Field Name: CreatedByUserID
49278
+ * * Display Name: Created By User
49279
+ * * SQL Data Type: uniqueidentifier
49280
+ * * Related Entity/Foreign Key: Users (vwUsers.ID)
49281
+ */
49282
+ get CreatedByUserID() {
49283
+ return this.Get('CreatedByUserID');
49284
+ }
49285
+ set CreatedByUserID(value) {
49286
+ this.Set('CreatedByUserID', value);
49287
+ }
49288
+ /**
49289
+ * * Field Name: __mj_CreatedAt
49290
+ * * Display Name: Created At
49291
+ * * SQL Data Type: datetimeoffset
49292
+ * * Default Value: getutcdate()
49293
+ */
49294
+ get __mj_CreatedAt() {
49295
+ return this.Get('__mj_CreatedAt');
49296
+ }
49297
+ /**
49298
+ * * Field Name: __mj_UpdatedAt
49299
+ * * Display Name: Updated At
49300
+ * * SQL Data Type: datetimeoffset
49301
+ * * Default Value: getutcdate()
49302
+ */
49303
+ get __mj_UpdatedAt() {
49304
+ return this.Get('__mj_UpdatedAt');
49305
+ }
49306
+ /**
49307
+ * * Field Name: User
49308
+ * * Display Name: User
49309
+ * * SQL Data Type: nvarchar(100)
49310
+ */
49311
+ get User() {
49312
+ return this.Get('User');
49313
+ }
49314
+ /**
49315
+ * * Field Name: CreatedByUser
49316
+ * * Display Name: Created By User
49317
+ * * SQL Data Type: nvarchar(100)
49318
+ */
49319
+ get CreatedByUser() {
49320
+ return this.Get('CreatedByUser');
49321
+ }
49322
+ };
49323
+ exports.APIKeyEntity = APIKeyEntity;
49324
+ exports.APIKeyEntity = APIKeyEntity = __decorate([
49325
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: API Keys')
49326
+ ], APIKeyEntity);
49327
+ /**
49328
+ * MJ: API Scopes - strongly typed entity sub-class
49329
+ * * Schema: __mj
49330
+ * * Base Table: APIScope
49331
+ * * Base View: vwAPIScopes
49332
+ * * @description Defines reusable permission scopes that can be assigned to API keys. Scopes follow a hierarchical naming convention (e.g., entities:read, agents:execute, admin:*) and are grouped by category for organizational purposes.
49333
+ * * Primary Key: ID
49334
+ * @extends {BaseEntity}
49335
+ * @class
49336
+ * @public
49337
+ */
49338
+ let APIScopeEntity = class APIScopeEntity extends core_1.BaseEntity {
49339
+ /**
49340
+ * Loads the MJ: API Scopes record from the database
49341
+ * @param ID: string - primary key value to load the MJ: API Scopes record.
49342
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
49343
+ * @returns {Promise<boolean>} - true if successful, false otherwise
49344
+ * @public
49345
+ * @async
49346
+ * @memberof APIScopeEntity
49347
+ * @method
49348
+ * @override
49349
+ */
49350
+ async Load(ID, EntityRelationshipsToLoad) {
49351
+ const compositeKey = new core_1.CompositeKey();
49352
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
49353
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
49354
+ }
49355
+ /**
49356
+ * * Field Name: ID
49357
+ * * Display Name: ID
49358
+ * * SQL Data Type: uniqueidentifier
49359
+ * * Default Value: newsequentialid()
49360
+ */
49361
+ get ID() {
49362
+ return this.Get('ID');
49363
+ }
49364
+ set ID(value) {
49365
+ this.Set('ID', value);
49366
+ }
49367
+ /**
49368
+ * * Field Name: Name
49369
+ * * Display Name: Name
49370
+ * * SQL Data Type: nvarchar(100)
49371
+ * * Description: Unique scope identifier following the pattern category:permission (e.g., entities:read, agents:execute, admin:*). Supports wildcard (*) for broad permissions.
49372
+ */
49373
+ get Name() {
49374
+ return this.Get('Name');
49375
+ }
49376
+ set Name(value) {
49377
+ this.Set('Name', value);
49378
+ }
49379
+ /**
49380
+ * * Field Name: Category
49381
+ * * Display Name: Category
49382
+ * * SQL Data Type: nvarchar(100)
49383
+ * * Description: Grouping category for the scope (e.g., Entities, Agents, Admin). Used for organizing and filtering scopes in the UI.
49384
+ */
49385
+ get Category() {
49386
+ return this.Get('Category');
49387
+ }
49388
+ set Category(value) {
49389
+ this.Set('Category', value);
49390
+ }
49391
+ /**
49392
+ * * Field Name: Description
49393
+ * * Display Name: Description
49394
+ * * SQL Data Type: nvarchar(500)
49395
+ * * Description: Human-readable description explaining what permissions this scope grants.
49396
+ */
49397
+ get Description() {
49398
+ return this.Get('Description');
49399
+ }
49400
+ set Description(value) {
49401
+ this.Set('Description', value);
49402
+ }
49403
+ /**
49404
+ * * Field Name: __mj_CreatedAt
49405
+ * * Display Name: Created At
49406
+ * * SQL Data Type: datetimeoffset
49407
+ * * Default Value: getutcdate()
49408
+ */
49409
+ get __mj_CreatedAt() {
49410
+ return this.Get('__mj_CreatedAt');
49411
+ }
49412
+ /**
49413
+ * * Field Name: __mj_UpdatedAt
49414
+ * * Display Name: Updated At
49415
+ * * SQL Data Type: datetimeoffset
49416
+ * * Default Value: getutcdate()
49417
+ */
49418
+ get __mj_UpdatedAt() {
49419
+ return this.Get('__mj_UpdatedAt');
49420
+ }
47263
49421
  /**
47264
- * Loads the MJ: AI Vendor Types record from the database
47265
- * @param ID: string - primary key value to load the MJ: AI Vendor Types record.
47266
- * @param EntityRelationshipsToLoad - (optional) the relationships to load
47267
- * @returns {Promise<boolean>} - true if successful, false otherwise
47268
- * @public
47269
- * @async
47270
- * @memberof AIVendorTypeEntity
47271
- * @method
47272
- * @override
47273
- */
47274
- async Load(ID, EntityRelationshipsToLoad) {
47275
- const compositeKey = new core_1.CompositeKey();
47276
- compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
47277
- return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
47278
- }
47279
- /**
47280
- * Validate() method override for MJ: AI Vendor Types entity. This is an auto-generated method that invokes the generated validators for this entity for the following fields:
47281
- * * Rank: This rule ensures that the Rank value cannot be negative. It must be zero or higher.
47282
- * @public
47283
- * @method
47284
- * @override
47285
- */
47286
- Validate() {
47287
- const result = super.Validate();
47288
- this.ValidateRankIsNonNegative(result);
47289
- result.Success = result.Success && (result.Errors.length === 0);
47290
- return result;
47291
- }
47292
- /**
47293
- * This rule ensures that the Rank value cannot be negative. It must be zero or higher.
47294
- * @param result - the ValidationResult object to add any errors or warnings to
47295
- * @public
47296
- * @method
47297
- */
47298
- ValidateRankIsNonNegative(result) {
47299
- if (this.Rank < 0) {
47300
- result.Errors.push(new core_1.ValidationErrorInfo("Rank", "Rank must be zero or greater.", this.Rank, core_1.ValidationErrorType.Failure));
47301
- }
47302
- }
47303
- /**
47304
- * * Field Name: ID
47305
- * * Display Name: ID
47306
- * * SQL Data Type: uniqueidentifier
47307
- * * Default Value: newsequentialid()
47308
- */
47309
- get ID() {
47310
- return this.Get('ID');
47311
- }
47312
- set ID(value) {
47313
- this.Set('ID', value);
47314
- }
47315
- /**
47316
- * * Field Name: VendorID
47317
- * * Display Name: Vendor ID
47318
- * * SQL Data Type: uniqueidentifier
47319
- * * Related Entity/Foreign Key: MJ: AI Vendors (vwAIVendors.ID)
47320
- */
47321
- get VendorID() {
47322
- return this.Get('VendorID');
47323
- }
47324
- set VendorID(value) {
47325
- this.Set('VendorID', value);
47326
- }
47327
- /**
47328
- * * Field Name: TypeID
47329
- * * Display Name: Type ID
49422
+ * * Field Name: ParentID
49423
+ * * Display Name: Parent ID
47330
49424
  * * SQL Data Type: uniqueidentifier
47331
- * * Related Entity/Foreign Key: MJ: AI Vendor Type Definitions (vwAIVendorTypeDefinitions.ID)
47332
- */
47333
- get TypeID() {
47334
- return this.Get('TypeID');
47335
- }
47336
- set TypeID(value) {
47337
- this.Set('TypeID', value);
47338
- }
47339
- /**
47340
- * * Field Name: Rank
47341
- * * Display Name: Rank
47342
- * * SQL Data Type: int
47343
- * * Default Value: 0
47344
- * * Description: Determines the priority rank of this type for the vendor. Higher values indicate higher priority.
49425
+ * * Related Entity/Foreign Key: MJ: API Scopes (vwAPIScopes.ID)
49426
+ * * Description: Reference to parent scope for hierarchical organization. NULL indicates a root-level scope.
47345
49427
  */
47346
- get Rank() {
47347
- return this.Get('Rank');
47348
- }
47349
- set Rank(value) {
47350
- this.Set('Rank', value);
47351
- }
47352
- /**
47353
- * * Field Name: Status
47354
- * * Display Name: Status
47355
- * * SQL Data Type: nvarchar(20)
47356
- * * Default Value: Active
47357
- * * Value List Type: List
47358
- * * Possible Values
47359
- * * Active
47360
- * * Deprecated
47361
- * * Inactive
47362
- * * Preview
47363
- * * Description: The current status of this vendor type. Values include Active, Inactive, Deprecated, and Preview.
47364
- */
47365
- get Status() {
47366
- return this.Get('Status');
47367
- }
47368
- set Status(value) {
47369
- this.Set('Status', value);
47370
- }
47371
- /**
47372
- * * Field Name: __mj_CreatedAt
47373
- * * Display Name: Created At
47374
- * * SQL Data Type: datetimeoffset
47375
- * * Default Value: getutcdate()
47376
- */
47377
- get __mj_CreatedAt() {
47378
- return this.Get('__mj_CreatedAt');
47379
- }
47380
- /**
47381
- * * Field Name: __mj_UpdatedAt
47382
- * * Display Name: Updated At
47383
- * * SQL Data Type: datetimeoffset
47384
- * * Default Value: getutcdate()
47385
- */
47386
- get __mj_UpdatedAt() {
47387
- return this.Get('__mj_UpdatedAt');
47388
- }
47389
- /**
47390
- * * Field Name: Vendor
47391
- * * Display Name: Vendor
47392
- * * SQL Data Type: nvarchar(50)
47393
- */
47394
- get Vendor() {
47395
- return this.Get('Vendor');
47396
- }
47397
- /**
47398
- * * Field Name: Type
47399
- * * Display Name: Type
47400
- * * SQL Data Type: nvarchar(50)
47401
- */
47402
- get Type() {
47403
- return this.Get('Type');
49428
+ get ParentID() {
49429
+ return this.Get('ParentID');
47404
49430
  }
47405
- };
47406
- exports.AIVendorTypeEntity = AIVendorTypeEntity;
47407
- exports.AIVendorTypeEntity = AIVendorTypeEntity = __decorate([
47408
- (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: AI Vendor Types')
47409
- ], AIVendorTypeEntity);
47410
- /**
47411
- * MJ: AI Vendors - strongly typed entity sub-class
47412
- * * Schema: __mj
47413
- * * Base Table: AIVendor
47414
- * * Base View: vwAIVendors
47415
- * * @description Stores information about AI vendors providing models and/or inference services.
47416
- * * Primary Key: ID
47417
- * @extends {BaseEntity}
47418
- * @class
47419
- * @public
47420
- */
47421
- let AIVendorEntity = class AIVendorEntity extends core_1.BaseEntity {
47422
- /**
47423
- * Loads the MJ: AI Vendors record from the database
47424
- * @param ID: string - primary key value to load the MJ: AI Vendors record.
47425
- * @param EntityRelationshipsToLoad - (optional) the relationships to load
47426
- * @returns {Promise<boolean>} - true if successful, false otherwise
47427
- * @public
47428
- * @async
47429
- * @memberof AIVendorEntity
47430
- * @method
47431
- * @override
47432
- */
47433
- async Load(ID, EntityRelationshipsToLoad) {
47434
- const compositeKey = new core_1.CompositeKey();
47435
- compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
47436
- return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
49431
+ set ParentID(value) {
49432
+ this.Set('ParentID', value);
47437
49433
  }
47438
49434
  /**
47439
- * * Field Name: ID
47440
- * * Display Name: ID
47441
- * * SQL Data Type: uniqueidentifier
47442
- * * Default Value: newsequentialid()
49435
+ * * Field Name: FullPath
49436
+ * * Display Name: Full Path
49437
+ * * SQL Data Type: nvarchar(500)
49438
+ * * Description: Full hierarchical path of the scope (e.g., entity:runview, agent:execute). Used for matching during authorization.
47443
49439
  */
47444
- get ID() {
47445
- return this.Get('ID');
49440
+ get FullPath() {
49441
+ return this.Get('FullPath');
47446
49442
  }
47447
- set ID(value) {
47448
- this.Set('ID', value);
49443
+ set FullPath(value) {
49444
+ this.Set('FullPath', value);
47449
49445
  }
47450
49446
  /**
47451
- * * Field Name: Name
47452
- * * Display Name: Name
49447
+ * * Field Name: ResourceType
49448
+ * * Display Name: Resource Type
47453
49449
  * * SQL Data Type: nvarchar(50)
47454
- * * Description: The unique name of the vendor.
49450
+ * * Description: Type of resource this scope applies to (Entity, Agent, Query, Mutation, or NULL for abstract grouping scopes).
47455
49451
  */
47456
- get Name() {
47457
- return this.Get('Name');
49452
+ get ResourceType() {
49453
+ return this.Get('ResourceType');
47458
49454
  }
47459
- set Name(value) {
47460
- this.Set('Name', value);
49455
+ set ResourceType(value) {
49456
+ this.Set('ResourceType', value);
47461
49457
  }
47462
49458
  /**
47463
- * * Field Name: Description
47464
- * * Display Name: Description
47465
- * * SQL Data Type: nvarchar(MAX)
47466
- * * Description: Detailed description of the vendor and their AI offerings.
49459
+ * * Field Name: IsActive
49460
+ * * Display Name: Active
49461
+ * * SQL Data Type: bit
49462
+ * * Default Value: 1
49463
+ * * Description: Whether this scope is currently active. Inactive scopes are ignored during authorization.
47467
49464
  */
47468
- get Description() {
47469
- return this.Get('Description');
47470
- }
47471
- set Description(value) {
47472
- this.Set('Description', value);
49465
+ get IsActive() {
49466
+ return this.Get('IsActive');
47473
49467
  }
47474
- /**
47475
- * * Field Name: __mj_CreatedAt
47476
- * * Display Name: Created At
47477
- * * SQL Data Type: datetimeoffset
47478
- * * Default Value: getutcdate()
47479
- */
47480
- get __mj_CreatedAt() {
47481
- return this.Get('__mj_CreatedAt');
49468
+ set IsActive(value) {
49469
+ this.Set('IsActive', value);
47482
49470
  }
47483
49471
  /**
47484
- * * Field Name: __mj_UpdatedAt
47485
- * * Display Name: Updated At
47486
- * * SQL Data Type: datetimeoffset
47487
- * * Default Value: getutcdate()
49472
+ * * Field Name: Parent
49473
+ * * Display Name: Parent
49474
+ * * SQL Data Type: nvarchar(100)
47488
49475
  */
47489
- get __mj_UpdatedAt() {
47490
- return this.Get('__mj_UpdatedAt');
49476
+ get Parent() {
49477
+ return this.Get('Parent');
47491
49478
  }
47492
49479
  /**
47493
- * * Field Name: CredentialTypeID
47494
- * * Display Name: Credential Type ID
49480
+ * * Field Name: RootParentID
49481
+ * * Display Name: Root Parent ID
47495
49482
  * * SQL Data Type: uniqueidentifier
47496
- * * Related Entity/Foreign Key: MJ: Credential Types (vwCredentialTypes.ID)
47497
- * * Description: Reference to the type of credential this vendor expects (e.g., API Key, GCP Service Account, Azure Service Principal). Used for type-based default credential resolution when no explicit binding exists, and for UI guidance when creating credentials.
47498
- */
47499
- get CredentialTypeID() {
47500
- return this.Get('CredentialTypeID');
47501
- }
47502
- set CredentialTypeID(value) {
47503
- this.Set('CredentialTypeID', value);
47504
- }
47505
- /**
47506
- * * Field Name: CredentialType
47507
- * * Display Name: Credential Type
47508
- * * SQL Data Type: nvarchar(100)
47509
49483
  */
47510
- get CredentialType() {
47511
- return this.Get('CredentialType');
49484
+ get RootParentID() {
49485
+ return this.Get('RootParentID');
47512
49486
  }
47513
49487
  };
47514
- exports.AIVendorEntity = AIVendorEntity;
47515
- exports.AIVendorEntity = AIVendorEntity = __decorate([
47516
- (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: AI Vendors')
47517
- ], AIVendorEntity);
49488
+ exports.APIScopeEntity = APIScopeEntity;
49489
+ exports.APIScopeEntity = APIScopeEntity = __decorate([
49490
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: API Scopes')
49491
+ ], APIScopeEntity);
47518
49492
  /**
47519
49493
  * MJ: Artifact Permissions - strongly typed entity sub-class
47520
49494
  * * Schema: __mj
@@ -53129,6 +55103,136 @@ exports.EnvironmentEntity = EnvironmentEntity;
53129
55103
  exports.EnvironmentEntity = EnvironmentEntity = __decorate([
53130
55104
  (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: Environments')
53131
55105
  ], EnvironmentEntity);
55106
+ /**
55107
+ * MJ: File Storage Accounts - strongly typed entity sub-class
55108
+ * * Schema: __mj
55109
+ * * Base Table: FileStorageAccount
55110
+ * * Base View: vwFileStorageAccounts
55111
+ * * @description Enterprise-level file storage accounts. Each account represents a configured connection to a storage provider (e.g., Marketing Dropbox, Engineering Google Drive) with credentials managed centrally.
55112
+ * * Primary Key: ID
55113
+ * @extends {BaseEntity}
55114
+ * @class
55115
+ * @public
55116
+ */
55117
+ let FileStorageAccountEntity = class FileStorageAccountEntity extends core_1.BaseEntity {
55118
+ /**
55119
+ * Loads the MJ: File Storage Accounts record from the database
55120
+ * @param ID: string - primary key value to load the MJ: File Storage Accounts record.
55121
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
55122
+ * @returns {Promise<boolean>} - true if successful, false otherwise
55123
+ * @public
55124
+ * @async
55125
+ * @memberof FileStorageAccountEntity
55126
+ * @method
55127
+ * @override
55128
+ */
55129
+ async Load(ID, EntityRelationshipsToLoad) {
55130
+ const compositeKey = new core_1.CompositeKey();
55131
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
55132
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
55133
+ }
55134
+ /**
55135
+ * * Field Name: ID
55136
+ * * Display Name: ID
55137
+ * * SQL Data Type: uniqueidentifier
55138
+ * * Default Value: newsequentialid()
55139
+ * * Description: Primary key
55140
+ */
55141
+ get ID() {
55142
+ return this.Get('ID');
55143
+ }
55144
+ set ID(value) {
55145
+ this.Set('ID', value);
55146
+ }
55147
+ /**
55148
+ * * Field Name: Name
55149
+ * * Display Name: Name
55150
+ * * SQL Data Type: nvarchar(200)
55151
+ * * Description: Display name for the storage account (e.g., Marketing Files, Engineering Docs). Must be unique per provider.
55152
+ */
55153
+ get Name() {
55154
+ return this.Get('Name');
55155
+ }
55156
+ set Name(value) {
55157
+ this.Set('Name', value);
55158
+ }
55159
+ /**
55160
+ * * Field Name: Description
55161
+ * * Display Name: Description
55162
+ * * SQL Data Type: nvarchar(MAX)
55163
+ * * Description: Optional description providing additional context about the account purpose or contents.
55164
+ */
55165
+ get Description() {
55166
+ return this.Get('Description');
55167
+ }
55168
+ set Description(value) {
55169
+ this.Set('Description', value);
55170
+ }
55171
+ /**
55172
+ * * Field Name: ProviderID
55173
+ * * Display Name: Provider
55174
+ * * SQL Data Type: uniqueidentifier
55175
+ * * Related Entity/Foreign Key: File Storage Providers (vwFileStorageProviders.ID)
55176
+ * * Description: Foreign key to FileStorageProvider indicating which storage service this account uses (Dropbox, Google Drive, S3, etc.).
55177
+ */
55178
+ get ProviderID() {
55179
+ return this.Get('ProviderID');
55180
+ }
55181
+ set ProviderID(value) {
55182
+ this.Set('ProviderID', value);
55183
+ }
55184
+ /**
55185
+ * * Field Name: CredentialID
55186
+ * * Display Name: Credential
55187
+ * * SQL Data Type: uniqueidentifier
55188
+ * * Related Entity/Foreign Key: MJ: Credentials (vwCredentials.ID)
55189
+ * * Description: Foreign key to Credential containing the authentication details (OAuth tokens, API keys, etc.) for this account. Credentials are decrypted at runtime by the Credential Engine.
55190
+ */
55191
+ get CredentialID() {
55192
+ return this.Get('CredentialID');
55193
+ }
55194
+ set CredentialID(value) {
55195
+ this.Set('CredentialID', value);
55196
+ }
55197
+ /**
55198
+ * * Field Name: __mj_CreatedAt
55199
+ * * Display Name: Created At
55200
+ * * SQL Data Type: datetimeoffset
55201
+ * * Default Value: getutcdate()
55202
+ */
55203
+ get __mj_CreatedAt() {
55204
+ return this.Get('__mj_CreatedAt');
55205
+ }
55206
+ /**
55207
+ * * Field Name: __mj_UpdatedAt
55208
+ * * Display Name: Updated At
55209
+ * * SQL Data Type: datetimeoffset
55210
+ * * Default Value: getutcdate()
55211
+ */
55212
+ get __mj_UpdatedAt() {
55213
+ return this.Get('__mj_UpdatedAt');
55214
+ }
55215
+ /**
55216
+ * * Field Name: Provider
55217
+ * * Display Name: Provider Name
55218
+ * * SQL Data Type: nvarchar(50)
55219
+ */
55220
+ get Provider() {
55221
+ return this.Get('Provider');
55222
+ }
55223
+ /**
55224
+ * * Field Name: Credential
55225
+ * * Display Name: Credential Name
55226
+ * * SQL Data Type: nvarchar(200)
55227
+ */
55228
+ get Credential() {
55229
+ return this.Get('Credential');
55230
+ }
55231
+ };
55232
+ exports.FileStorageAccountEntity = FileStorageAccountEntity;
55233
+ exports.FileStorageAccountEntity = FileStorageAccountEntity = __decorate([
55234
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: File Storage Accounts')
55235
+ ], FileStorageAccountEntity);
53132
55236
  /**
53133
55237
  * MJ: List Invitations - strongly typed entity sub-class
53134
55238
  * * Schema: __mj
@@ -57772,6 +59876,380 @@ exports.TestEntity = TestEntity;
57772
59876
  exports.TestEntity = TestEntity = __decorate([
57773
59877
  (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: Tests')
57774
59878
  ], TestEntity);
59879
+ /**
59880
+ * MJ: User Notification Preferences - strongly typed entity sub-class
59881
+ * * Schema: __mj
59882
+ * * Base Table: UserNotificationPreference
59883
+ * * Base View: vwUserNotificationPreferences
59884
+ * * @description Per-user preferences for each notification type (delivery method overrides)
59885
+ * * Primary Key: ID
59886
+ * @extends {BaseEntity}
59887
+ * @class
59888
+ * @public
59889
+ */
59890
+ let UserNotificationPreferenceEntity = class UserNotificationPreferenceEntity extends core_1.BaseEntity {
59891
+ /**
59892
+ * Loads the MJ: User Notification Preferences record from the database
59893
+ * @param ID: string - primary key value to load the MJ: User Notification Preferences record.
59894
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
59895
+ * @returns {Promise<boolean>} - true if successful, false otherwise
59896
+ * @public
59897
+ * @async
59898
+ * @memberof UserNotificationPreferenceEntity
59899
+ * @method
59900
+ * @override
59901
+ */
59902
+ async Load(ID, EntityRelationshipsToLoad) {
59903
+ const compositeKey = new core_1.CompositeKey();
59904
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
59905
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
59906
+ }
59907
+ /**
59908
+ * * Field Name: ID
59909
+ * * Display Name: ID
59910
+ * * SQL Data Type: uniqueidentifier
59911
+ * * Default Value: newsequentialid()
59912
+ */
59913
+ get ID() {
59914
+ return this.Get('ID');
59915
+ }
59916
+ set ID(value) {
59917
+ this.Set('ID', value);
59918
+ }
59919
+ /**
59920
+ * * Field Name: UserID
59921
+ * * Display Name: User
59922
+ * * SQL Data Type: uniqueidentifier
59923
+ * * Related Entity/Foreign Key: Users (vwUsers.ID)
59924
+ */
59925
+ get UserID() {
59926
+ return this.Get('UserID');
59927
+ }
59928
+ set UserID(value) {
59929
+ this.Set('UserID', value);
59930
+ }
59931
+ /**
59932
+ * * Field Name: NotificationTypeID
59933
+ * * Display Name: Notification Type
59934
+ * * SQL Data Type: uniqueidentifier
59935
+ * * Related Entity/Foreign Key: MJ: User Notification Types (vwUserNotificationTypes.ID)
59936
+ */
59937
+ get NotificationTypeID() {
59938
+ return this.Get('NotificationTypeID');
59939
+ }
59940
+ set NotificationTypeID(value) {
59941
+ this.Set('NotificationTypeID', value);
59942
+ }
59943
+ /**
59944
+ * * Field Name: InAppEnabled
59945
+ * * Display Name: In-App Enabled
59946
+ * * SQL Data Type: bit
59947
+ * * Description: User preference for in-app notifications (NULL = use default)
59948
+ */
59949
+ get InAppEnabled() {
59950
+ return this.Get('InAppEnabled');
59951
+ }
59952
+ set InAppEnabled(value) {
59953
+ this.Set('InAppEnabled', value);
59954
+ }
59955
+ /**
59956
+ * * Field Name: EmailEnabled
59957
+ * * Display Name: Email Enabled
59958
+ * * SQL Data Type: bit
59959
+ * * Description: User preference for email notifications (NULL = use default)
59960
+ */
59961
+ get EmailEnabled() {
59962
+ return this.Get('EmailEnabled');
59963
+ }
59964
+ set EmailEnabled(value) {
59965
+ this.Set('EmailEnabled', value);
59966
+ }
59967
+ /**
59968
+ * * Field Name: SMSEnabled
59969
+ * * Display Name: SMS Enabled
59970
+ * * SQL Data Type: bit
59971
+ * * Description: User preference for SMS notifications (NULL = use default)
59972
+ */
59973
+ get SMSEnabled() {
59974
+ return this.Get('SMSEnabled');
59975
+ }
59976
+ set SMSEnabled(value) {
59977
+ this.Set('SMSEnabled', value);
59978
+ }
59979
+ /**
59980
+ * * Field Name: Enabled
59981
+ * * Display Name: Overall Enabled
59982
+ * * SQL Data Type: bit
59983
+ * * Default Value: 1
59984
+ */
59985
+ get Enabled() {
59986
+ return this.Get('Enabled');
59987
+ }
59988
+ set Enabled(value) {
59989
+ this.Set('Enabled', value);
59990
+ }
59991
+ /**
59992
+ * * Field Name: __mj_CreatedAt
59993
+ * * Display Name: Created At
59994
+ * * SQL Data Type: datetimeoffset
59995
+ * * Default Value: getutcdate()
59996
+ */
59997
+ get __mj_CreatedAt() {
59998
+ return this.Get('__mj_CreatedAt');
59999
+ }
60000
+ /**
60001
+ * * Field Name: __mj_UpdatedAt
60002
+ * * Display Name: Updated At
60003
+ * * SQL Data Type: datetimeoffset
60004
+ * * Default Value: getutcdate()
60005
+ */
60006
+ get __mj_UpdatedAt() {
60007
+ return this.Get('__mj_UpdatedAt');
60008
+ }
60009
+ /**
60010
+ * * Field Name: User
60011
+ * * Display Name: User Name
60012
+ * * SQL Data Type: nvarchar(100)
60013
+ */
60014
+ get User() {
60015
+ return this.Get('User');
60016
+ }
60017
+ /**
60018
+ * * Field Name: NotificationType
60019
+ * * Display Name: Notification Type Name
60020
+ * * SQL Data Type: nvarchar(100)
60021
+ */
60022
+ get NotificationType() {
60023
+ return this.Get('NotificationType');
60024
+ }
60025
+ };
60026
+ exports.UserNotificationPreferenceEntity = UserNotificationPreferenceEntity;
60027
+ exports.UserNotificationPreferenceEntity = UserNotificationPreferenceEntity = __decorate([
60028
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: User Notification Preferences')
60029
+ ], UserNotificationPreferenceEntity);
60030
+ /**
60031
+ * MJ: User Notification Types - strongly typed entity sub-class
60032
+ * * Schema: __mj
60033
+ * * Base Table: UserNotificationType
60034
+ * * Base View: vwUserNotificationTypes
60035
+ * * @description Defines categories of notifications with delivery configuration and template associations
60036
+ * * Primary Key: ID
60037
+ * @extends {BaseEntity}
60038
+ * @class
60039
+ * @public
60040
+ */
60041
+ let UserNotificationTypeEntity = class UserNotificationTypeEntity extends core_1.BaseEntity {
60042
+ /**
60043
+ * Loads the MJ: User Notification Types record from the database
60044
+ * @param ID: string - primary key value to load the MJ: User Notification Types record.
60045
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
60046
+ * @returns {Promise<boolean>} - true if successful, false otherwise
60047
+ * @public
60048
+ * @async
60049
+ * @memberof UserNotificationTypeEntity
60050
+ * @method
60051
+ * @override
60052
+ */
60053
+ async Load(ID, EntityRelationshipsToLoad) {
60054
+ const compositeKey = new core_1.CompositeKey();
60055
+ compositeKey.KeyValuePairs.push({ FieldName: 'ID', Value: ID });
60056
+ return await super.InnerLoad(compositeKey, EntityRelationshipsToLoad);
60057
+ }
60058
+ /**
60059
+ * * Field Name: ID
60060
+ * * Display Name: ID
60061
+ * * SQL Data Type: uniqueidentifier
60062
+ * * Default Value: newsequentialid()
60063
+ */
60064
+ get ID() {
60065
+ return this.Get('ID');
60066
+ }
60067
+ set ID(value) {
60068
+ this.Set('ID', value);
60069
+ }
60070
+ /**
60071
+ * * Field Name: Name
60072
+ * * Display Name: Name
60073
+ * * SQL Data Type: nvarchar(100)
60074
+ * * Description: Unique name for the notification type (e.g., 'Agent Completion')
60075
+ */
60076
+ get Name() {
60077
+ return this.Get('Name');
60078
+ }
60079
+ set Name(value) {
60080
+ this.Set('Name', value);
60081
+ }
60082
+ /**
60083
+ * * Field Name: Description
60084
+ * * Display Name: Description
60085
+ * * SQL Data Type: nvarchar(500)
60086
+ */
60087
+ get Description() {
60088
+ return this.Get('Description');
60089
+ }
60090
+ set Description(value) {
60091
+ this.Set('Description', value);
60092
+ }
60093
+ /**
60094
+ * * Field Name: DefaultInApp
60095
+ * * Display Name: Default In-App
60096
+ * * SQL Data Type: bit
60097
+ * * Default Value: 1
60098
+ * * Description: Whether in-app notifications are enabled by default for this type
60099
+ */
60100
+ get DefaultInApp() {
60101
+ return this.Get('DefaultInApp');
60102
+ }
60103
+ set DefaultInApp(value) {
60104
+ this.Set('DefaultInApp', value);
60105
+ }
60106
+ /**
60107
+ * * Field Name: DefaultEmail
60108
+ * * Display Name: Default Email
60109
+ * * SQL Data Type: bit
60110
+ * * Default Value: 0
60111
+ * * Description: Whether email notifications are enabled by default for this type
60112
+ */
60113
+ get DefaultEmail() {
60114
+ return this.Get('DefaultEmail');
60115
+ }
60116
+ set DefaultEmail(value) {
60117
+ this.Set('DefaultEmail', value);
60118
+ }
60119
+ /**
60120
+ * * Field Name: DefaultSMS
60121
+ * * Display Name: Default SMS
60122
+ * * SQL Data Type: bit
60123
+ * * Default Value: 0
60124
+ * * Description: Whether SMS notifications are enabled by default for this type
60125
+ */
60126
+ get DefaultSMS() {
60127
+ return this.Get('DefaultSMS');
60128
+ }
60129
+ set DefaultSMS(value) {
60130
+ this.Set('DefaultSMS', value);
60131
+ }
60132
+ /**
60133
+ * * Field Name: AllowUserPreference
60134
+ * * Display Name: Allow User Preference
60135
+ * * SQL Data Type: bit
60136
+ * * Default Value: 1
60137
+ * * Description: Whether users can override the default delivery method
60138
+ */
60139
+ get AllowUserPreference() {
60140
+ return this.Get('AllowUserPreference');
60141
+ }
60142
+ set AllowUserPreference(value) {
60143
+ this.Set('AllowUserPreference', value);
60144
+ }
60145
+ /**
60146
+ * * Field Name: EmailTemplateID
60147
+ * * Display Name: Email Template
60148
+ * * SQL Data Type: uniqueidentifier
60149
+ * * Related Entity/Foreign Key: Templates (vwTemplates.ID)
60150
+ */
60151
+ get EmailTemplateID() {
60152
+ return this.Get('EmailTemplateID');
60153
+ }
60154
+ set EmailTemplateID(value) {
60155
+ this.Set('EmailTemplateID', value);
60156
+ }
60157
+ /**
60158
+ * * Field Name: SMSTemplateID
60159
+ * * Display Name: SMS Template
60160
+ * * SQL Data Type: uniqueidentifier
60161
+ * * Related Entity/Foreign Key: Templates (vwTemplates.ID)
60162
+ */
60163
+ get SMSTemplateID() {
60164
+ return this.Get('SMSTemplateID');
60165
+ }
60166
+ set SMSTemplateID(value) {
60167
+ this.Set('SMSTemplateID', value);
60168
+ }
60169
+ /**
60170
+ * * Field Name: Icon
60171
+ * * Display Name: Icon
60172
+ * * SQL Data Type: nvarchar(100)
60173
+ */
60174
+ get Icon() {
60175
+ return this.Get('Icon');
60176
+ }
60177
+ set Icon(value) {
60178
+ this.Set('Icon', value);
60179
+ }
60180
+ /**
60181
+ * * Field Name: Color
60182
+ * * Display Name: Color
60183
+ * * SQL Data Type: nvarchar(50)
60184
+ */
60185
+ get Color() {
60186
+ return this.Get('Color');
60187
+ }
60188
+ set Color(value) {
60189
+ this.Set('Color', value);
60190
+ }
60191
+ /**
60192
+ * * Field Name: AutoExpireDays
60193
+ * * Display Name: Auto Expire Days
60194
+ * * SQL Data Type: int
60195
+ */
60196
+ get AutoExpireDays() {
60197
+ return this.Get('AutoExpireDays');
60198
+ }
60199
+ set AutoExpireDays(value) {
60200
+ this.Set('AutoExpireDays', value);
60201
+ }
60202
+ /**
60203
+ * * Field Name: Priority
60204
+ * * Display Name: Priority
60205
+ * * SQL Data Type: int
60206
+ * * Default Value: 0
60207
+ */
60208
+ get Priority() {
60209
+ return this.Get('Priority');
60210
+ }
60211
+ set Priority(value) {
60212
+ this.Set('Priority', value);
60213
+ }
60214
+ /**
60215
+ * * Field Name: __mj_CreatedAt
60216
+ * * Display Name: Created At
60217
+ * * SQL Data Type: datetimeoffset
60218
+ * * Default Value: getutcdate()
60219
+ */
60220
+ get __mj_CreatedAt() {
60221
+ return this.Get('__mj_CreatedAt');
60222
+ }
60223
+ /**
60224
+ * * Field Name: __mj_UpdatedAt
60225
+ * * Display Name: Updated At
60226
+ * * SQL Data Type: datetimeoffset
60227
+ * * Default Value: getutcdate()
60228
+ */
60229
+ get __mj_UpdatedAt() {
60230
+ return this.Get('__mj_UpdatedAt');
60231
+ }
60232
+ /**
60233
+ * * Field Name: EmailTemplate
60234
+ * * Display Name: Email Template Name
60235
+ * * SQL Data Type: nvarchar(255)
60236
+ */
60237
+ get EmailTemplate() {
60238
+ return this.Get('EmailTemplate');
60239
+ }
60240
+ /**
60241
+ * * Field Name: SMSTemplate
60242
+ * * Display Name: SMS Template Name
60243
+ * * SQL Data Type: nvarchar(255)
60244
+ */
60245
+ get SMSTemplate() {
60246
+ return this.Get('SMSTemplate');
60247
+ }
60248
+ };
60249
+ exports.UserNotificationTypeEntity = UserNotificationTypeEntity;
60250
+ exports.UserNotificationTypeEntity = UserNotificationTypeEntity = __decorate([
60251
+ (0, global_1.RegisterClass)(core_1.BaseEntity, 'MJ: User Notification Types')
60252
+ ], UserNotificationTypeEntity);
57775
60253
  /**
57776
60254
  * MJ: User Settings - strongly typed entity sub-class
57777
60255
  * * Schema: __mj
@@ -64605,6 +67083,19 @@ let UserNotificationEntity = class UserNotificationEntity extends core_1.BaseEnt
64605
67083
  this.Set('ResourceRecordID', value);
64606
67084
  }
64607
67085
  /**
67086
+ * * Field Name: NotificationTypeID
67087
+ * * Display Name: Notification Type
67088
+ * * SQL Data Type: uniqueidentifier
67089
+ * * Related Entity/Foreign Key: MJ: User Notification Types (vwUserNotificationTypes.ID)
67090
+ * * Description: Optional reference to notification type for categorization and delivery preferences
67091
+ */
67092
+ get NotificationTypeID() {
67093
+ return this.Get('NotificationTypeID');
67094
+ }
67095
+ set NotificationTypeID(value) {
67096
+ this.Set('NotificationTypeID', value);
67097
+ }
67098
+ /**
64608
67099
  * * Field Name: User
64609
67100
  * * Display Name: User
64610
67101
  * * SQL Data Type: nvarchar(100)
@@ -64620,6 +67111,14 @@ let UserNotificationEntity = class UserNotificationEntity extends core_1.BaseEnt
64620
67111
  get ResourceType() {
64621
67112
  return this.Get('ResourceType');
64622
67113
  }
67114
+ /**
67115
+ * * Field Name: NotificationType
67116
+ * * Display Name: Notification Type
67117
+ * * SQL Data Type: nvarchar(100)
67118
+ */
67119
+ get NotificationType() {
67120
+ return this.Get('NotificationType');
67121
+ }
64623
67122
  };
64624
67123
  exports.UserNotificationEntity = UserNotificationEntity;
64625
67124
  exports.UserNotificationEntity = UserNotificationEntity = __decorate([