@memberjunction/core-entities 5.41.0 → 5.43.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.
@@ -9160,6 +9160,7 @@ export declare const MJEntityActionInvocationSchema: z.ZodObject<{
9160
9160
  Status: z.ZodUnion<[z.ZodLiteral<"Active">, z.ZodLiteral<"Disabled">, z.ZodLiteral<"Pending">]>;
9161
9161
  __mj_CreatedAt: z.ZodDate;
9162
9162
  __mj_UpdatedAt: z.ZodDate;
9163
+ RuntimeUXDriverClass: z.ZodNullable<z.ZodString>;
9163
9164
  EntityAction: z.ZodString;
9164
9165
  InvocationType: z.ZodString;
9165
9166
  }, "strip", z.ZodTypeAny, {
@@ -9170,6 +9171,7 @@ export declare const MJEntityActionInvocationSchema: z.ZodObject<{
9170
9171
  EntityActionID?: string;
9171
9172
  EntityAction?: string;
9172
9173
  InvocationTypeID?: string;
9174
+ RuntimeUXDriverClass?: string;
9173
9175
  InvocationType?: string;
9174
9176
  }, {
9175
9177
  ID?: string;
@@ -9179,6 +9181,7 @@ export declare const MJEntityActionInvocationSchema: z.ZodObject<{
9179
9181
  EntityActionID?: string;
9180
9182
  EntityAction?: string;
9181
9183
  InvocationTypeID?: string;
9184
+ RuntimeUXDriverClass?: string;
9182
9185
  InvocationType?: string;
9183
9186
  }>;
9184
9187
  export type MJEntityActionInvocationEntityType = z.infer<typeof MJEntityActionInvocationSchema>;
@@ -10883,6 +10886,12 @@ export declare const MJIntegrationObjectSchema: z.ZodObject<{
10883
10886
  DeleteIDLocation: z.ZodNullable<z.ZodUnion<[z.ZodLiteral<"body">, z.ZodLiteral<"header">, z.ZodLiteral<"n/a">, z.ZodLiteral<"path">]>>;
10884
10887
  IncrementalWatermarkField: z.ZodNullable<z.ZodString>;
10885
10888
  MetadataSource: z.ZodUnion<[z.ZodLiteral<"Custom">, z.ZodLiteral<"Declared">, z.ZodLiteral<"Discovered">]>;
10889
+ SupportsCreate: z.ZodBoolean;
10890
+ SupportsUpdate: z.ZodBoolean;
10891
+ SupportsDelete: z.ZodBoolean;
10892
+ SyncStrategy: z.ZodNullable<z.ZodString>;
10893
+ ContentHashApplicable: z.ZodBoolean;
10894
+ StableOrderingKey: z.ZodNullable<z.ZodString>;
10886
10895
  Integration: z.ZodString;
10887
10896
  }, "strip", z.ZodTypeAny, {
10888
10897
  ID?: string;
@@ -10923,6 +10932,12 @@ export declare const MJIntegrationObjectSchema: z.ZodObject<{
10923
10932
  DeleteAPIPath?: string;
10924
10933
  DeleteIDLocation?: "path" | "body" | "header" | "n/a";
10925
10934
  IncrementalWatermarkField?: string;
10935
+ SupportsCreate?: boolean;
10936
+ SupportsUpdate?: boolean;
10937
+ SupportsDelete?: boolean;
10938
+ SyncStrategy?: string;
10939
+ ContentHashApplicable?: boolean;
10940
+ StableOrderingKey?: string;
10926
10941
  }, {
10927
10942
  ID?: string;
10928
10943
  __mj_CreatedAt?: Date;
@@ -10962,6 +10977,12 @@ export declare const MJIntegrationObjectSchema: z.ZodObject<{
10962
10977
  DeleteAPIPath?: string;
10963
10978
  DeleteIDLocation?: "path" | "body" | "header" | "n/a";
10964
10979
  IncrementalWatermarkField?: string;
10980
+ SupportsCreate?: boolean;
10981
+ SupportsUpdate?: boolean;
10982
+ SupportsDelete?: boolean;
10983
+ SyncStrategy?: string;
10984
+ ContentHashApplicable?: boolean;
10985
+ StableOrderingKey?: string;
10965
10986
  }>;
10966
10987
  export type MJIntegrationObjectEntityType = z.infer<typeof MJIntegrationObjectSchema>;
10967
10988
  /**
@@ -11050,6 +11071,7 @@ export declare const MJIntegrationSchema: z.ZodObject<{
11050
11071
  ID: z.ZodString;
11051
11072
  CredentialTypeID: z.ZodNullable<z.ZodString>;
11052
11073
  Icon: z.ZodNullable<z.ZodString>;
11074
+ Configuration: z.ZodNullable<z.ZodString>;
11053
11075
  CredentialType: z.ZodNullable<z.ZodString>;
11054
11076
  }, "strip", z.ZodTypeAny, {
11055
11077
  ID?: string;
@@ -11057,6 +11079,7 @@ export declare const MJIntegrationSchema: z.ZodObject<{
11057
11079
  __mj_UpdatedAt?: Date;
11058
11080
  Name?: string;
11059
11081
  Description?: string;
11082
+ Configuration?: string;
11060
11083
  Icon?: string;
11061
11084
  CredentialTypeID?: string;
11062
11085
  CredentialType?: string;
@@ -11071,6 +11094,7 @@ export declare const MJIntegrationSchema: z.ZodObject<{
11071
11094
  __mj_UpdatedAt?: Date;
11072
11095
  Name?: string;
11073
11096
  Description?: string;
11097
+ Configuration?: string;
11074
11098
  Icon?: string;
11075
11099
  CredentialTypeID?: string;
11076
11100
  CredentialType?: string;
@@ -12383,6 +12407,7 @@ export declare const MJOpenAppSchema: z.ZodObject<{
12383
12407
  Status: z.ZodUnion<[z.ZodLiteral<"Active">, z.ZodLiteral<"Disabled">, z.ZodLiteral<"Error">, z.ZodLiteral<"Installing">, z.ZodLiteral<"Removed">, z.ZodLiteral<"Removing">, z.ZodLiteral<"Upgrading">]>;
12384
12408
  __mj_CreatedAt: z.ZodDate;
12385
12409
  __mj_UpdatedAt: z.ZodDate;
12410
+ Subpath: z.ZodNullable<z.ZodString>;
12386
12411
  InstalledByUser: z.ZodString;
12387
12412
  }, "strip", z.ZodTypeAny, {
12388
12413
  ID?: string;
@@ -12405,6 +12430,7 @@ export declare const MJOpenAppSchema: z.ZodObject<{
12405
12430
  License?: string;
12406
12431
  ConfigurationSchemaJSON?: string;
12407
12432
  InstalledByUserID?: string;
12433
+ Subpath?: string;
12408
12434
  InstalledByUser?: string;
12409
12435
  }, {
12410
12436
  ID?: string;
@@ -12427,6 +12453,7 @@ export declare const MJOpenAppSchema: z.ZodObject<{
12427
12453
  License?: string;
12428
12454
  ConfigurationSchemaJSON?: string;
12429
12455
  InstalledByUserID?: string;
12456
+ Subpath?: string;
12430
12457
  InstalledByUser?: string;
12431
12458
  }>;
12432
12459
  export type MJOpenAppEntityType = z.infer<typeof MJOpenAppSchema>;
@@ -12552,6 +12579,166 @@ export declare const MJPermissionDomainSchema: z.ZodObject<{
12552
12579
  SupportsHierarchyInheritance?: boolean;
12553
12580
  }>;
12554
12581
  export type MJPermissionDomainEntityType = z.infer<typeof MJPermissionDomainSchema>;
12582
+ /**
12583
+ * zod schema definition for the entity MJ: Process Run Details
12584
+ */
12585
+ export declare const MJProcessRunDetailSchema: z.ZodObject<{
12586
+ ID: z.ZodString;
12587
+ ProcessRunID: z.ZodString;
12588
+ EntityID: z.ZodString;
12589
+ RecordID: z.ZodString;
12590
+ Status: z.ZodUnion<[z.ZodLiteral<"Failed">, z.ZodLiteral<"Pending">, z.ZodLiteral<"Skipped">, z.ZodLiteral<"Succeeded">]>;
12591
+ StartedAt: z.ZodNullable<z.ZodDate>;
12592
+ CompletedAt: z.ZodNullable<z.ZodDate>;
12593
+ DurationMs: z.ZodNullable<z.ZodNumber>;
12594
+ AttemptCount: z.ZodNumber;
12595
+ ResultPayload: z.ZodNullable<z.ZodString>;
12596
+ ErrorMessage: z.ZodNullable<z.ZodString>;
12597
+ ActionExecutionLogID: z.ZodNullable<z.ZodString>;
12598
+ AIAgentRunID: z.ZodNullable<z.ZodString>;
12599
+ __mj_CreatedAt: z.ZodDate;
12600
+ __mj_UpdatedAt: z.ZodDate;
12601
+ Entity: z.ZodString;
12602
+ ActionExecutionLog: z.ZodNullable<z.ZodString>;
12603
+ AIAgentRun: z.ZodNullable<z.ZodString>;
12604
+ }, "strip", z.ZodTypeAny, {
12605
+ ID?: string;
12606
+ EntityID?: string;
12607
+ RecordID?: string;
12608
+ __mj_CreatedAt?: Date;
12609
+ __mj_UpdatedAt?: Date;
12610
+ Entity?: string;
12611
+ Status?: "Pending" | "Failed" | "Skipped" | "Succeeded";
12612
+ StartedAt?: Date;
12613
+ CompletedAt?: Date;
12614
+ ErrorMessage?: string;
12615
+ DurationMs?: number;
12616
+ ProcessRunID?: string;
12617
+ AttemptCount?: number;
12618
+ ResultPayload?: string;
12619
+ ActionExecutionLogID?: string;
12620
+ AIAgentRunID?: string;
12621
+ ActionExecutionLog?: string;
12622
+ AIAgentRun?: string;
12623
+ }, {
12624
+ ID?: string;
12625
+ EntityID?: string;
12626
+ RecordID?: string;
12627
+ __mj_CreatedAt?: Date;
12628
+ __mj_UpdatedAt?: Date;
12629
+ Entity?: string;
12630
+ Status?: "Pending" | "Failed" | "Skipped" | "Succeeded";
12631
+ StartedAt?: Date;
12632
+ CompletedAt?: Date;
12633
+ ErrorMessage?: string;
12634
+ DurationMs?: number;
12635
+ ProcessRunID?: string;
12636
+ AttemptCount?: number;
12637
+ ResultPayload?: string;
12638
+ ActionExecutionLogID?: string;
12639
+ AIAgentRunID?: string;
12640
+ ActionExecutionLog?: string;
12641
+ AIAgentRun?: string;
12642
+ }>;
12643
+ export type MJProcessRunDetailEntityType = z.infer<typeof MJProcessRunDetailSchema>;
12644
+ /**
12645
+ * zod schema definition for the entity MJ: Process Runs
12646
+ */
12647
+ export declare const MJProcessRunSchema: z.ZodObject<{
12648
+ ID: z.ZodString;
12649
+ RecordProcessID: z.ZodNullable<z.ZodString>;
12650
+ EntityID: z.ZodNullable<z.ZodString>;
12651
+ TriggeredBy: z.ZodUnion<[z.ZodLiteral<"Manual">, z.ZodLiteral<"OnChange">, z.ZodLiteral<"OnDemand">, z.ZodLiteral<"Schedule">]>;
12652
+ SourceType: z.ZodUnion<[z.ZodLiteral<"Array">, z.ZodLiteral<"Filter">, z.ZodLiteral<"Keyset">, z.ZodLiteral<"List">, z.ZodLiteral<"SingleRecord">, z.ZodLiteral<"View">]>;
12653
+ SourceID: z.ZodNullable<z.ZodString>;
12654
+ SourceFilter: z.ZodNullable<z.ZodString>;
12655
+ ScheduledJobRunID: z.ZodNullable<z.ZodString>;
12656
+ Status: z.ZodUnion<[z.ZodLiteral<"Cancelled">, z.ZodLiteral<"Completed">, z.ZodLiteral<"Failed">, z.ZodLiteral<"Paused">, z.ZodLiteral<"Pending">, z.ZodLiteral<"Running">]>;
12657
+ StartTime: z.ZodNullable<z.ZodDate>;
12658
+ EndTime: z.ZodNullable<z.ZodDate>;
12659
+ TotalItemCount: z.ZodNullable<z.ZodNumber>;
12660
+ ProcessedItems: z.ZodNumber;
12661
+ SuccessCount: z.ZodNumber;
12662
+ ErrorCount: z.ZodNumber;
12663
+ SkippedCount: z.ZodNumber;
12664
+ LastProcessedOffset: z.ZodNullable<z.ZodNumber>;
12665
+ LastProcessedKey: z.ZodNullable<z.ZodString>;
12666
+ BatchSize: z.ZodNullable<z.ZodNumber>;
12667
+ CancellationRequested: z.ZodBoolean;
12668
+ Configuration: z.ZodNullable<z.ZodString>;
12669
+ ErrorMessage: z.ZodNullable<z.ZodString>;
12670
+ StartedByUserID: z.ZodNullable<z.ZodString>;
12671
+ __mj_CreatedAt: z.ZodDate;
12672
+ __mj_UpdatedAt: z.ZodDate;
12673
+ DryRun: z.ZodBoolean;
12674
+ RecordProcess: z.ZodNullable<z.ZodString>;
12675
+ Entity: z.ZodNullable<z.ZodString>;
12676
+ ScheduledJobRun: z.ZodNullable<z.ZodString>;
12677
+ StartedByUser: z.ZodNullable<z.ZodString>;
12678
+ }, "strip", z.ZodTypeAny, {
12679
+ ID?: string;
12680
+ EntityID?: string;
12681
+ __mj_CreatedAt?: Date;
12682
+ __mj_UpdatedAt?: Date;
12683
+ Entity?: string;
12684
+ Status?: "Pending" | "Failed" | "Cancelled" | "Completed" | "Running" | "Paused";
12685
+ Configuration?: string;
12686
+ SourceType?: "View" | "List" | "Array" | "Filter" | "Keyset" | "SingleRecord";
12687
+ ErrorMessage?: string;
12688
+ ScheduledJobRunID?: string;
12689
+ ScheduledJobRun?: string;
12690
+ BatchSize?: number;
12691
+ ErrorCount?: number;
12692
+ StartTime?: Date;
12693
+ EndTime?: Date;
12694
+ SourceID?: string;
12695
+ ProcessedItems?: number;
12696
+ StartedByUserID?: string;
12697
+ TotalItemCount?: number;
12698
+ LastProcessedOffset?: number;
12699
+ CancellationRequested?: boolean;
12700
+ StartedByUser?: string;
12701
+ RecordProcessID?: string;
12702
+ TriggeredBy?: "OnDemand" | "Manual" | "OnChange" | "Schedule";
12703
+ SourceFilter?: string;
12704
+ SuccessCount?: number;
12705
+ SkippedCount?: number;
12706
+ LastProcessedKey?: string;
12707
+ DryRun?: boolean;
12708
+ RecordProcess?: string;
12709
+ }, {
12710
+ ID?: string;
12711
+ EntityID?: string;
12712
+ __mj_CreatedAt?: Date;
12713
+ __mj_UpdatedAt?: Date;
12714
+ Entity?: string;
12715
+ Status?: "Pending" | "Failed" | "Cancelled" | "Completed" | "Running" | "Paused";
12716
+ Configuration?: string;
12717
+ SourceType?: "View" | "List" | "Array" | "Filter" | "Keyset" | "SingleRecord";
12718
+ ErrorMessage?: string;
12719
+ ScheduledJobRunID?: string;
12720
+ ScheduledJobRun?: string;
12721
+ BatchSize?: number;
12722
+ ErrorCount?: number;
12723
+ StartTime?: Date;
12724
+ EndTime?: Date;
12725
+ SourceID?: string;
12726
+ ProcessedItems?: number;
12727
+ StartedByUserID?: string;
12728
+ TotalItemCount?: number;
12729
+ LastProcessedOffset?: number;
12730
+ CancellationRequested?: boolean;
12731
+ StartedByUser?: string;
12732
+ RecordProcessID?: string;
12733
+ TriggeredBy?: "OnDemand" | "Manual" | "OnChange" | "Schedule";
12734
+ SourceFilter?: string;
12735
+ SuccessCount?: number;
12736
+ SkippedCount?: number;
12737
+ LastProcessedKey?: string;
12738
+ DryRun?: boolean;
12739
+ RecordProcess?: string;
12740
+ }>;
12741
+ export type MJProcessRunEntityType = z.infer<typeof MJProcessRunSchema>;
12555
12742
  /**
12556
12743
  * zod schema definition for the entity MJ: Projects
12557
12744
  */
@@ -13630,6 +13817,328 @@ export declare const MJRecordMergeLogSchema: z.ZodObject<{
13630
13817
  InitiatedByUser?: string;
13631
13818
  }>;
13632
13819
  export type MJRecordMergeLogEntityType = z.infer<typeof MJRecordMergeLogSchema>;
13820
+ /**
13821
+ * zod schema definition for the entity MJ: Record Process Categories
13822
+ */
13823
+ export declare const MJRecordProcessCategorySchema: z.ZodObject<{
13824
+ ID: z.ZodString;
13825
+ Name: z.ZodString;
13826
+ Description: z.ZodNullable<z.ZodString>;
13827
+ ParentID: z.ZodNullable<z.ZodString>;
13828
+ __mj_CreatedAt: z.ZodDate;
13829
+ __mj_UpdatedAt: z.ZodDate;
13830
+ Parent: z.ZodNullable<z.ZodString>;
13831
+ RootParentID: z.ZodNullable<z.ZodString>;
13832
+ }, "strip", z.ZodTypeAny, {
13833
+ ID?: string;
13834
+ __mj_CreatedAt?: Date;
13835
+ __mj_UpdatedAt?: Date;
13836
+ Name?: string;
13837
+ Description?: string;
13838
+ ParentID?: string;
13839
+ Parent?: string;
13840
+ RootParentID?: string;
13841
+ }, {
13842
+ ID?: string;
13843
+ __mj_CreatedAt?: Date;
13844
+ __mj_UpdatedAt?: Date;
13845
+ Name?: string;
13846
+ Description?: string;
13847
+ ParentID?: string;
13848
+ Parent?: string;
13849
+ RootParentID?: string;
13850
+ }>;
13851
+ export type MJRecordProcessCategoryEntityType = z.infer<typeof MJRecordProcessCategorySchema>;
13852
+ /**
13853
+ * zod schema definition for the entity MJ: Record Process Watermarks
13854
+ */
13855
+ export declare const MJRecordProcessWatermarkSchema: z.ZodObject<{
13856
+ ID: z.ZodString;
13857
+ RecordProcessID: z.ZodString;
13858
+ EntityID: z.ZodString;
13859
+ RecordID: z.ZodString;
13860
+ Hash: z.ZodString;
13861
+ LastProcessedAt: z.ZodDate;
13862
+ __mj_CreatedAt: z.ZodDate;
13863
+ __mj_UpdatedAt: z.ZodDate;
13864
+ RecordProcess: z.ZodString;
13865
+ Entity: z.ZodString;
13866
+ }, "strip", z.ZodTypeAny, {
13867
+ ID?: string;
13868
+ EntityID?: string;
13869
+ RecordID?: string;
13870
+ __mj_CreatedAt?: Date;
13871
+ __mj_UpdatedAt?: Date;
13872
+ Entity?: string;
13873
+ Hash?: string;
13874
+ RecordProcessID?: string;
13875
+ RecordProcess?: string;
13876
+ LastProcessedAt?: Date;
13877
+ }, {
13878
+ ID?: string;
13879
+ EntityID?: string;
13880
+ RecordID?: string;
13881
+ __mj_CreatedAt?: Date;
13882
+ __mj_UpdatedAt?: Date;
13883
+ Entity?: string;
13884
+ Hash?: string;
13885
+ RecordProcessID?: string;
13886
+ RecordProcess?: string;
13887
+ LastProcessedAt?: Date;
13888
+ }>;
13889
+ export type MJRecordProcessWatermarkEntityType = z.infer<typeof MJRecordProcessWatermarkSchema>;
13890
+ /**
13891
+ * zod schema definition for the entity MJ: Record Processes
13892
+ */
13893
+ export declare const MJRecordProcessSchema: z.ZodObject<{
13894
+ ID: z.ZodString;
13895
+ Name: z.ZodString;
13896
+ Description: z.ZodNullable<z.ZodString>;
13897
+ CategoryID: z.ZodNullable<z.ZodString>;
13898
+ EntityID: z.ZodString;
13899
+ Status: z.ZodUnion<[z.ZodLiteral<"Active">, z.ZodLiteral<"Disabled">, z.ZodLiteral<"Draft">]>;
13900
+ WorkType: z.ZodUnion<[z.ZodLiteral<"Action">, z.ZodLiteral<"Agent">, z.ZodLiteral<"FieldRules">, z.ZodLiteral<"Infer">]>;
13901
+ ActionID: z.ZodNullable<z.ZodString>;
13902
+ AgentID: z.ZodNullable<z.ZodString>;
13903
+ PromptID: z.ZodNullable<z.ZodString>;
13904
+ ScopeType: z.ZodUnion<[z.ZodLiteral<"Filter">, z.ZodLiteral<"List">, z.ZodLiteral<"SingleRecord">, z.ZodLiteral<"View">]>;
13905
+ ScopeViewID: z.ZodNullable<z.ZodString>;
13906
+ ScopeListID: z.ZodNullable<z.ZodString>;
13907
+ ScopeFilter: z.ZodNullable<z.ZodString>;
13908
+ OnChangeEnabled: z.ZodBoolean;
13909
+ OnChangeInvocationType: z.ZodNullable<z.ZodUnion<[z.ZodLiteral<"AfterCreate">, z.ZodLiteral<"AfterDelete">, z.ZodLiteral<"AfterUpdate">, z.ZodLiteral<"Validate">]>>;
13910
+ OnChangeFilter: z.ZodNullable<z.ZodString>;
13911
+ ScheduleEnabled: z.ZodBoolean;
13912
+ CronExpression: z.ZodNullable<z.ZodString>;
13913
+ Timezone: z.ZodNullable<z.ZodString>;
13914
+ OnDemandEnabled: z.ZodBoolean;
13915
+ InputMapping: z.ZodNullable<z.ZodString>;
13916
+ OutputMapping: z.ZodNullable<z.ZodString>;
13917
+ SkipUnchanged: z.ZodBoolean;
13918
+ WatermarkStrategy: z.ZodNullable<z.ZodUnion<[z.ZodLiteral<"Checksum">, z.ZodLiteral<"None">, z.ZodLiteral<"UpdatedAt">]>>;
13919
+ BatchSize: z.ZodNullable<z.ZodNumber>;
13920
+ MaxConcurrency: z.ZodNullable<z.ZodNumber>;
13921
+ __mj_CreatedAt: z.ZodDate;
13922
+ __mj_UpdatedAt: z.ZodDate;
13923
+ Configuration: z.ZodNullable<z.ZodString>;
13924
+ Category: z.ZodNullable<z.ZodString>;
13925
+ Entity: z.ZodString;
13926
+ Action: z.ZodNullable<z.ZodString>;
13927
+ Agent: z.ZodNullable<z.ZodString>;
13928
+ Prompt: z.ZodNullable<z.ZodString>;
13929
+ ScopeView: z.ZodNullable<z.ZodString>;
13930
+ ScopeList: z.ZodNullable<z.ZodString>;
13931
+ }, "strip", z.ZodTypeAny, {
13932
+ ID?: string;
13933
+ EntityID?: string;
13934
+ __mj_CreatedAt?: Date;
13935
+ __mj_UpdatedAt?: Date;
13936
+ Entity?: string;
13937
+ ActionID?: string;
13938
+ Action?: string;
13939
+ Name?: string;
13940
+ Description?: string;
13941
+ Status?: "Active" | "Disabled" | "Draft";
13942
+ CategoryID?: string;
13943
+ Category?: string;
13944
+ AgentID?: string;
13945
+ Agent?: string;
13946
+ Configuration?: string;
13947
+ PromptID?: string;
13948
+ Prompt?: string;
13949
+ BatchSize?: number;
13950
+ ScheduleEnabled?: boolean;
13951
+ CronExpression?: string;
13952
+ WorkType?: "Action" | "Agent" | "FieldRules" | "Infer";
13953
+ ScopeType?: "View" | "List" | "Filter" | "SingleRecord";
13954
+ ScopeViewID?: string;
13955
+ ScopeListID?: string;
13956
+ ScopeFilter?: string;
13957
+ OnChangeEnabled?: boolean;
13958
+ OnChangeInvocationType?: "AfterCreate" | "AfterDelete" | "AfterUpdate" | "Validate";
13959
+ OnChangeFilter?: string;
13960
+ Timezone?: string;
13961
+ OnDemandEnabled?: boolean;
13962
+ InputMapping?: string;
13963
+ OutputMapping?: string;
13964
+ SkipUnchanged?: boolean;
13965
+ WatermarkStrategy?: "None" | "Checksum" | "UpdatedAt";
13966
+ MaxConcurrency?: number;
13967
+ ScopeView?: string;
13968
+ ScopeList?: string;
13969
+ }, {
13970
+ ID?: string;
13971
+ EntityID?: string;
13972
+ __mj_CreatedAt?: Date;
13973
+ __mj_UpdatedAt?: Date;
13974
+ Entity?: string;
13975
+ ActionID?: string;
13976
+ Action?: string;
13977
+ Name?: string;
13978
+ Description?: string;
13979
+ Status?: "Active" | "Disabled" | "Draft";
13980
+ CategoryID?: string;
13981
+ Category?: string;
13982
+ AgentID?: string;
13983
+ Agent?: string;
13984
+ Configuration?: string;
13985
+ PromptID?: string;
13986
+ Prompt?: string;
13987
+ BatchSize?: number;
13988
+ ScheduleEnabled?: boolean;
13989
+ CronExpression?: string;
13990
+ WorkType?: "Action" | "Agent" | "FieldRules" | "Infer";
13991
+ ScopeType?: "View" | "List" | "Filter" | "SingleRecord";
13992
+ ScopeViewID?: string;
13993
+ ScopeListID?: string;
13994
+ ScopeFilter?: string;
13995
+ OnChangeEnabled?: boolean;
13996
+ OnChangeInvocationType?: "AfterCreate" | "AfterDelete" | "AfterUpdate" | "Validate";
13997
+ OnChangeFilter?: string;
13998
+ Timezone?: string;
13999
+ OnDemandEnabled?: boolean;
14000
+ InputMapping?: string;
14001
+ OutputMapping?: string;
14002
+ SkipUnchanged?: boolean;
14003
+ WatermarkStrategy?: "None" | "Checksum" | "UpdatedAt";
14004
+ MaxConcurrency?: number;
14005
+ ScopeView?: string;
14006
+ ScopeList?: string;
14007
+ }>;
14008
+ export type MJRecordProcessEntityType = z.infer<typeof MJRecordProcessSchema>;
14009
+ /**
14010
+ * zod schema definition for the entity MJ: Remote Operation Categories
14011
+ */
14012
+ export declare const MJRemoteOperationCategorySchema: z.ZodObject<{
14013
+ ID: z.ZodString;
14014
+ Name: z.ZodString;
14015
+ Description: z.ZodNullable<z.ZodString>;
14016
+ ParentID: z.ZodNullable<z.ZodString>;
14017
+ __mj_CreatedAt: z.ZodDate;
14018
+ __mj_UpdatedAt: z.ZodDate;
14019
+ Parent: z.ZodNullable<z.ZodString>;
14020
+ RootParentID: z.ZodNullable<z.ZodString>;
14021
+ }, "strip", z.ZodTypeAny, {
14022
+ ID?: string;
14023
+ __mj_CreatedAt?: Date;
14024
+ __mj_UpdatedAt?: Date;
14025
+ Name?: string;
14026
+ Description?: string;
14027
+ ParentID?: string;
14028
+ Parent?: string;
14029
+ RootParentID?: string;
14030
+ }, {
14031
+ ID?: string;
14032
+ __mj_CreatedAt?: Date;
14033
+ __mj_UpdatedAt?: Date;
14034
+ Name?: string;
14035
+ Description?: string;
14036
+ ParentID?: string;
14037
+ Parent?: string;
14038
+ RootParentID?: string;
14039
+ }>;
14040
+ export type MJRemoteOperationCategoryEntityType = z.infer<typeof MJRemoteOperationCategorySchema>;
14041
+ /**
14042
+ * zod schema definition for the entity MJ: Remote Operations
14043
+ */
14044
+ export declare const MJRemoteOperationSchema: z.ZodObject<{
14045
+ ID: z.ZodString;
14046
+ Name: z.ZodString;
14047
+ OperationKey: z.ZodString;
14048
+ CategoryID: z.ZodNullable<z.ZodString>;
14049
+ Description: z.ZodNullable<z.ZodString>;
14050
+ InputTypeName: z.ZodNullable<z.ZodString>;
14051
+ InputTypeDefinition: z.ZodNullable<z.ZodString>;
14052
+ InputTypeIsArray: z.ZodBoolean;
14053
+ OutputTypeName: z.ZodNullable<z.ZodString>;
14054
+ OutputTypeDefinition: z.ZodNullable<z.ZodString>;
14055
+ OutputTypeIsArray: z.ZodBoolean;
14056
+ ExecutionMode: z.ZodUnion<[z.ZodLiteral<"LongRunning">, z.ZodLiteral<"Sync">]>;
14057
+ RequiredScope: z.ZodNullable<z.ZodString>;
14058
+ RequiresSystemUser: z.ZodBoolean;
14059
+ GenerationType: z.ZodUnion<[z.ZodLiteral<"AI">, z.ZodLiteral<"Default">, z.ZodLiteral<"Manual">]>;
14060
+ Code: z.ZodNullable<z.ZodString>;
14061
+ CodeApprovalStatus: z.ZodUnion<[z.ZodLiteral<"Approved">, z.ZodLiteral<"Pending">, z.ZodLiteral<"Rejected">]>;
14062
+ CodeApprovedByUserID: z.ZodNullable<z.ZodString>;
14063
+ CodeApprovedAt: z.ZodNullable<z.ZodDate>;
14064
+ ContractFingerprint: z.ZodNullable<z.ZodString>;
14065
+ Status: z.ZodUnion<[z.ZodLiteral<"Active">, z.ZodLiteral<"Disabled">, z.ZodLiteral<"Pending">]>;
14066
+ CacheTTLSeconds: z.ZodNullable<z.ZodNumber>;
14067
+ TimeoutMS: z.ZodNullable<z.ZodNumber>;
14068
+ MaxConcurrency: z.ZodNullable<z.ZodNumber>;
14069
+ __mj_CreatedAt: z.ZodDate;
14070
+ __mj_UpdatedAt: z.ZodDate;
14071
+ CodeLocked: z.ZodBoolean;
14072
+ CodeComments: z.ZodNullable<z.ZodString>;
14073
+ Libraries: z.ZodNullable<z.ZodAny>;
14074
+ Category: z.ZodNullable<z.ZodString>;
14075
+ CodeApprovedByUser: z.ZodNullable<z.ZodString>;
14076
+ }, "strip", z.ZodTypeAny, {
14077
+ ID?: string;
14078
+ __mj_CreatedAt?: Date;
14079
+ __mj_UpdatedAt?: Date;
14080
+ Name?: string;
14081
+ Description?: string;
14082
+ Status?: "Active" | "Disabled" | "Pending";
14083
+ Code?: string;
14084
+ CategoryID?: string;
14085
+ CodeComments?: string;
14086
+ CodeApprovalStatus?: "Pending" | "Approved" | "Rejected";
14087
+ CodeApprovedByUserID?: string;
14088
+ CodeApprovedAt?: Date;
14089
+ CodeLocked?: boolean;
14090
+ Category?: string;
14091
+ CodeApprovedByUser?: string;
14092
+ ExecutionMode?: "Sync" | "LongRunning";
14093
+ CacheTTLSeconds?: number;
14094
+ MaxConcurrency?: number;
14095
+ OperationKey?: string;
14096
+ InputTypeName?: string;
14097
+ InputTypeDefinition?: string;
14098
+ InputTypeIsArray?: boolean;
14099
+ OutputTypeName?: string;
14100
+ OutputTypeDefinition?: string;
14101
+ OutputTypeIsArray?: boolean;
14102
+ RequiredScope?: string;
14103
+ RequiresSystemUser?: boolean;
14104
+ GenerationType?: "Default" | "Manual" | "AI";
14105
+ ContractFingerprint?: string;
14106
+ TimeoutMS?: number;
14107
+ Libraries?: any;
14108
+ }, {
14109
+ ID?: string;
14110
+ __mj_CreatedAt?: Date;
14111
+ __mj_UpdatedAt?: Date;
14112
+ Name?: string;
14113
+ Description?: string;
14114
+ Status?: "Active" | "Disabled" | "Pending";
14115
+ Code?: string;
14116
+ CategoryID?: string;
14117
+ CodeComments?: string;
14118
+ CodeApprovalStatus?: "Pending" | "Approved" | "Rejected";
14119
+ CodeApprovedByUserID?: string;
14120
+ CodeApprovedAt?: Date;
14121
+ CodeLocked?: boolean;
14122
+ Category?: string;
14123
+ CodeApprovedByUser?: string;
14124
+ ExecutionMode?: "Sync" | "LongRunning";
14125
+ CacheTTLSeconds?: number;
14126
+ MaxConcurrency?: number;
14127
+ OperationKey?: string;
14128
+ InputTypeName?: string;
14129
+ InputTypeDefinition?: string;
14130
+ InputTypeIsArray?: boolean;
14131
+ OutputTypeName?: string;
14132
+ OutputTypeDefinition?: string;
14133
+ OutputTypeIsArray?: boolean;
14134
+ RequiredScope?: string;
14135
+ RequiresSystemUser?: boolean;
14136
+ GenerationType?: "Default" | "Manual" | "AI";
14137
+ ContractFingerprint?: string;
14138
+ TimeoutMS?: number;
14139
+ Libraries?: any;
14140
+ }>;
14141
+ export type MJRemoteOperationEntityType = z.infer<typeof MJRemoteOperationSchema>;
13633
14142
  /**
13634
14143
  * zod schema definition for the entity MJ: Report Categories
13635
14144
  */
@@ -14298,12 +14807,12 @@ export declare const MJScheduledJobSchema: z.ZodObject<{
14298
14807
  CronExpression?: string;
14299
14808
  LockedAt?: Date;
14300
14809
  LockedByInstance?: string;
14810
+ SuccessCount?: number;
14301
14811
  Timezone?: string;
14302
14812
  JobTypeID?: string;
14303
14813
  LastRunAt?: Date;
14304
14814
  NextRunAt?: Date;
14305
14815
  RunCount?: number;
14306
- SuccessCount?: number;
14307
14816
  FailureCount?: number;
14308
14817
  NotifyOnSuccess?: boolean;
14309
14818
  NotifyOnFailure?: boolean;
@@ -14332,12 +14841,12 @@ export declare const MJScheduledJobSchema: z.ZodObject<{
14332
14841
  CronExpression?: string;
14333
14842
  LockedAt?: Date;
14334
14843
  LockedByInstance?: string;
14844
+ SuccessCount?: number;
14335
14845
  Timezone?: string;
14336
14846
  JobTypeID?: string;
14337
14847
  LastRunAt?: Date;
14338
14848
  NextRunAt?: Date;
14339
14849
  RunCount?: number;
14340
- SuccessCount?: number;
14341
14850
  FailureCount?: number;
14342
14851
  NotifyOnSuccess?: boolean;
14343
14852
  NotifyOnFailure?: boolean;
@@ -21360,7 +21869,7 @@ export declare class MJAIAgentNoteEntity extends BaseEntity<MJAIAgentNoteEntityT
21360
21869
  get SourceConversation(): string | null;
21361
21870
  /**
21362
21871
  * * Field Name: SourceConversationDetail
21363
- * * Display Name: Source Conversation Detail
21872
+ * * Display Name: Source Conversation Detail Name
21364
21873
  * * SQL Data Type: nvarchar(100)
21365
21874
  */
21366
21875
  get SourceConversationDetail(): string | null;
@@ -44642,6 +45151,14 @@ export declare class MJEntityActionInvocationEntity extends BaseEntity<MJEntityA
44642
45151
  */
44643
45152
  get __mj_UpdatedAt(): Date;
44644
45153
  /**
45154
+ * * Field Name: RuntimeUXDriverClass
45155
+ * * Display Name: Runtime UX Driver Class
45156
+ * * SQL Data Type: nvarchar(255)
45157
+ * * Description: Optional class name of a registered runtime-UX driver component (a BaseEntityActionRuntimeUX subclass resolved via MJGlobal.ClassFactory) that owns this invocation's interaction — parameter collection, dry-run preview, confirmation, and progress. NULL invokes the action directly with no custom UX. This lets any action opt into a richer, reusable runtime experience while the grid/toolbar stays operation-agnostic.
45158
+ */
45159
+ get RuntimeUXDriverClass(): string | null;
45160
+ set RuntimeUXDriverClass(value: string | null);
45161
+ /**
44645
45162
  * * Field Name: EntityAction
44646
45163
  * * Display Name: Entity Action Name
44647
45164
  * * SQL Data Type: nvarchar(425)
@@ -45444,6 +45961,16 @@ export declare class MJEntityDocumentEntity extends BaseEntity<MJEntityDocumentE
45444
45961
  */
45445
45962
  Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
45446
45963
  /**
45964
+ * MJ: Entity Documents - Delete method override to wrap in transaction since CascadeDeletes is true.
45965
+ * Wrapping in a transaction ensures that all cascade delete operations are handled atomically.
45966
+ * @public
45967
+ * @method
45968
+ * @override
45969
+ * @memberof MJEntityDocumentEntity
45970
+ * @returns {Promise<boolean>} - true if successful, false otherwise
45971
+ */
45972
+ Delete(options?: EntityDeleteOptions): Promise<boolean>;
45973
+ /**
45447
45974
  * Validate() method override for MJ: Entity Documents entity. This is an auto-generated method that invokes the generated validators for this entity for the following fields:
45448
45975
  * * Table-Level: This rule ensures that both the Potential Match Threshold and the Absolute Match Threshold are numbers between 0 and 1, inclusive. Additionally, the Potential Match Threshold must not be higher than the Absolute Match Threshold.
45449
45976
  * @public
@@ -49325,7 +49852,7 @@ export declare class MJIntegrationObjectEntity extends BaseEntity<MJIntegrationO
49325
49852
  set ID(value: string);
49326
49853
  /**
49327
49854
  * * Field Name: IntegrationID
49328
- * * Display Name: Integration
49855
+ * * Display Name: Integration ID
49329
49856
  * * SQL Data Type: uniqueidentifier
49330
49857
  * * Related Entity/Foreign Key: MJ: Integrations (vwIntegrations.ID)
49331
49858
  * * Description: Foreign key to the Integration that owns this object
@@ -49666,8 +50193,60 @@ export declare class MJIntegrationObjectEntity extends BaseEntity<MJIntegrationO
49666
50193
  get MetadataSource(): 'Custom' | 'Declared' | 'Discovered';
49667
50194
  set MetadataSource(value: 'Custom' | 'Declared' | 'Discovered');
49668
50195
  /**
50196
+ * * Field Name: SupportsCreate
50197
+ * * Display Name: Supports Create
50198
+ * * SQL Data Type: bit
50199
+ * * Default Value: 0
50200
+ * * Description: Whether this object supports record creation in the external system (per-operation granularity beyond SupportsWrite). Drives whether the generic CreateRecord path is wired and whether the object is offered for write-back create.
50201
+ */
50202
+ get SupportsCreate(): boolean;
50203
+ set SupportsCreate(value: boolean);
50204
+ /**
50205
+ * * Field Name: SupportsUpdate
50206
+ * * Display Name: Supports Update
50207
+ * * SQL Data Type: bit
50208
+ * * Default Value: 0
50209
+ * * Description: Whether this object supports record updates in the external system (per-operation granularity beyond SupportsWrite).
50210
+ */
50211
+ get SupportsUpdate(): boolean;
50212
+ set SupportsUpdate(value: boolean);
50213
+ /**
50214
+ * * Field Name: SupportsDelete
50215
+ * * Display Name: Supports Delete
50216
+ * * SQL Data Type: bit
50217
+ * * Default Value: 0
50218
+ * * Description: Whether this object supports record deletion/tombstoning in the external system (per-operation granularity beyond SupportsWrite).
50219
+ */
50220
+ get SupportsDelete(): boolean;
50221
+ set SupportsDelete(value: boolean);
50222
+ /**
50223
+ * * Field Name: SyncStrategy
50224
+ * * Display Name: Sync Strategy
50225
+ * * SQL Data Type: nvarchar(50)
50226
+ * * Description: Declared incremental sync strategy for this object (e.g. WatermarkIncremental, ContentHash, FullSnapshot). Informs how the engine narrows subsequent syncs.
50227
+ */
50228
+ get SyncStrategy(): string | null;
50229
+ set SyncStrategy(value: string | null);
50230
+ /**
50231
+ * * Field Name: ContentHashApplicable
50232
+ * * Display Name: Content Hash Applicable
50233
+ * * SQL Data Type: bit
50234
+ * * Default Value: 1
50235
+ * * Description: Whether per-record content hashing is meaningful for this object (false for append-only/event streams where every row is new). Controls whether the engine uses content-hash to skip unchanged-row writes.
50236
+ */
50237
+ get ContentHashApplicable(): boolean;
50238
+ set ContentHashApplicable(value: boolean);
50239
+ /**
50240
+ * * Field Name: StableOrderingKey
50241
+ * * Display Name: Stable Ordering Key
50242
+ * * SQL Data Type: nvarchar(255)
50243
+ * * Description: Stable, monotonic ordering column (usually the PK) used for keyset/no-watermark resume of a scan. Null when the object has no stable key.
50244
+ */
50245
+ get StableOrderingKey(): string | null;
50246
+ set StableOrderingKey(value: string | null);
50247
+ /**
49669
50248
  * * Field Name: Integration
49670
- * * Display Name: Integration Name
50249
+ * * Display Name: Integration
49671
50250
  * * SQL Data Type: nvarchar(100)
49672
50251
  */
49673
50252
  get Integration(): string;
@@ -49979,6 +50558,14 @@ export declare class MJIntegrationEntity extends BaseEntity<MJIntegrationEntityT
49979
50558
  get Icon(): string | null;
49980
50559
  set Icon(value: string | null);
49981
50560
  /**
50561
+ * * Field Name: Configuration
50562
+ * * Display Name: Configuration
50563
+ * * SQL Data Type: nvarchar(MAX)
50564
+ * * Description: Integration-level connector configuration JSON (e.g. out-of-scope object families, vendor-specific tuning). Free-form JSON the connector reads at runtime.
50565
+ */
50566
+ get Configuration(): string | null;
50567
+ set Configuration(value: string | null);
50568
+ /**
49982
50569
  * * Field Name: CredentialType
49983
50570
  * * Display Name: Credential Type Name
49984
50571
  * * SQL Data Type: nvarchar(100)
@@ -53691,6 +54278,14 @@ export declare class MJOpenAppEntity extends BaseEntity<MJOpenAppEntityType> {
53691
54278
  */
53692
54279
  get __mj_UpdatedAt(): Date;
53693
54280
  /**
54281
+ * * Field Name: Subpath
54282
+ * * Display Name: Subpath
54283
+ * * SQL Data Type: nvarchar(500)
54284
+ * * Description: In-repo subdirectory the app was installed from for multi-app repositories (e.g. 'CRM/HubSpot'). NULL when the app's mj-app.json is at the repository root.
54285
+ */
54286
+ get Subpath(): string | null;
54287
+ set Subpath(value: string | null);
54288
+ /**
53694
54289
  * * Field Name: InstalledByUser
53695
54290
  * * Display Name: Installed By User
53696
54291
  * * SQL Data Type: nvarchar(100)
@@ -54031,6 +54626,467 @@ export declare class MJPermissionDomainEntity extends BaseEntity<MJPermissionDom
54031
54626
  */
54032
54627
  get __mj_UpdatedAt(): Date;
54033
54628
  }
54629
+ /**
54630
+ * MJ: Process Run Details - strongly typed entity sub-class
54631
+ * * Schema: __mj
54632
+ * * Base Table: ProcessRunDetail
54633
+ * * Base View: vwProcessRunDetails
54634
+ * * @description Per-record result within a Process Run: powers audit, resume (skip already-done records), and the run-viewer UX. One row per processed record. EXAMPLE: customer CUST-00417 -> Succeeded with ResultPayload {"satisfaction":"High","sentiment":0.82} and a link to its AI Agent Run; customer CUST-00418 -> Failed with ErrorMessage "Model timeout".
54635
+ * * Primary Key: ID
54636
+ * @extends {BaseEntity}
54637
+ * @class
54638
+ * @public
54639
+ */
54640
+ export declare class MJProcessRunDetailEntity extends BaseEntity<MJProcessRunDetailEntityType> {
54641
+ /**
54642
+ * Loads the MJ: Process Run Details record from the database
54643
+ * @param ID: string - primary key value to load the MJ: Process Run Details record.
54644
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
54645
+ * @returns {Promise<boolean>} - true if successful, false otherwise
54646
+ * @public
54647
+ * @async
54648
+ * @memberof MJProcessRunDetailEntity
54649
+ * @method
54650
+ * @override
54651
+ */
54652
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
54653
+ /**
54654
+ * * Field Name: ID
54655
+ * * Display Name: ID
54656
+ * * SQL Data Type: uniqueidentifier
54657
+ * * Default Value: newsequentialid()
54658
+ */
54659
+ get ID(): string;
54660
+ set ID(value: string);
54661
+ /**
54662
+ * * Field Name: ProcessRunID
54663
+ * * Display Name: Process Run
54664
+ * * SQL Data Type: uniqueidentifier
54665
+ * * Related Entity/Foreign Key: MJ: Process Runs (vwProcessRuns.ID)
54666
+ * * Description: Foreign key to the parent Process Run
54667
+ */
54668
+ get ProcessRunID(): string;
54669
+ set ProcessRunID(value: string);
54670
+ /**
54671
+ * * Field Name: EntityID
54672
+ * * Display Name: Entity ID
54673
+ * * SQL Data Type: uniqueidentifier
54674
+ * * Related Entity/Foreign Key: MJ: Entities (vwEntities.ID)
54675
+ * * Description: Foreign key to the entity of the processed record. Stored (not inherited) because a single run may span entities for ad-hoc / engine-driven runs.
54676
+ */
54677
+ get EntityID(): string;
54678
+ set EntityID(value: string);
54679
+ /**
54680
+ * * Field Name: RecordID
54681
+ * * Display Name: Record ID
54682
+ * * SQL Data Type: nvarchar(450)
54683
+ * * Description: Primary key of the processed record, stored as text to remain composite-key safe
54684
+ */
54685
+ get RecordID(): string;
54686
+ set RecordID(value: string);
54687
+ /**
54688
+ * * Field Name: Status
54689
+ * * Display Name: Status
54690
+ * * SQL Data Type: nvarchar(20)
54691
+ * * Default Value: Pending
54692
+ * * Value List Type: List
54693
+ * * Possible Values
54694
+ * * Failed
54695
+ * * Pending
54696
+ * * Skipped
54697
+ * * Succeeded
54698
+ * * Description: Per-record status: Pending, Succeeded, Failed, or Skipped
54699
+ */
54700
+ get Status(): 'Failed' | 'Pending' | 'Skipped' | 'Succeeded';
54701
+ set Status(value: 'Failed' | 'Pending' | 'Skipped' | 'Succeeded');
54702
+ /**
54703
+ * * Field Name: StartedAt
54704
+ * * Display Name: Started At
54705
+ * * SQL Data Type: datetimeoffset
54706
+ * * Description: When processing of this record started
54707
+ */
54708
+ get StartedAt(): Date | null;
54709
+ set StartedAt(value: Date | null);
54710
+ /**
54711
+ * * Field Name: CompletedAt
54712
+ * * Display Name: Completed At
54713
+ * * SQL Data Type: datetimeoffset
54714
+ * * Description: When processing of this record completed
54715
+ */
54716
+ get CompletedAt(): Date | null;
54717
+ set CompletedAt(value: Date | null);
54718
+ /**
54719
+ * * Field Name: DurationMs
54720
+ * * Display Name: Duration (ms)
54721
+ * * SQL Data Type: int
54722
+ * * Description: Processing duration for this record in milliseconds
54723
+ */
54724
+ get DurationMs(): number | null;
54725
+ set DurationMs(value: number | null);
54726
+ /**
54727
+ * * Field Name: AttemptCount
54728
+ * * Display Name: Attempt Count
54729
+ * * SQL Data Type: int
54730
+ * * Default Value: 0
54731
+ * * Description: Number of processing attempts for this record (supports retry)
54732
+ */
54733
+ get AttemptCount(): number;
54734
+ set AttemptCount(value: number);
54735
+ /**
54736
+ * * Field Name: ResultPayload
54737
+ * * Display Name: Result Payload
54738
+ * * SQL Data Type: nvarchar(MAX)
54739
+ * * Description: Structured output payload (JSON) produced for this record
54740
+ */
54741
+ get ResultPayload(): string | null;
54742
+ set ResultPayload(value: string | null);
54743
+ /**
54744
+ * * Field Name: ErrorMessage
54745
+ * * Display Name: Error Message
54746
+ * * SQL Data Type: nvarchar(MAX)
54747
+ * * Description: Per-record error message when Status=Failed
54748
+ */
54749
+ get ErrorMessage(): string | null;
54750
+ set ErrorMessage(value: string | null);
54751
+ /**
54752
+ * * Field Name: ActionExecutionLogID
54753
+ * * Display Name: Action Execution Log ID
54754
+ * * SQL Data Type: uniqueidentifier
54755
+ * * Related Entity/Foreign Key: MJ: Action Execution Logs (vwActionExecutionLogs.ID)
54756
+ * * Description: Foreign key to the Action Execution Log for deep tracing, when the work was an Action
54757
+ */
54758
+ get ActionExecutionLogID(): string | null;
54759
+ set ActionExecutionLogID(value: string | null);
54760
+ /**
54761
+ * * Field Name: AIAgentRunID
54762
+ * * Display Name: AI Agent Run ID
54763
+ * * SQL Data Type: uniqueidentifier
54764
+ * * Related Entity/Foreign Key: MJ: AI Agent Runs (vwAIAgentRuns.ID)
54765
+ * * Description: Foreign key to the AI Agent Run for deep tracing, when the work was an Agent
54766
+ */
54767
+ get AIAgentRunID(): string | null;
54768
+ set AIAgentRunID(value: string | null);
54769
+ /**
54770
+ * * Field Name: __mj_CreatedAt
54771
+ * * Display Name: Created At
54772
+ * * SQL Data Type: datetimeoffset
54773
+ * * Default Value: getutcdate()
54774
+ */
54775
+ get __mj_CreatedAt(): Date;
54776
+ /**
54777
+ * * Field Name: __mj_UpdatedAt
54778
+ * * Display Name: Updated At
54779
+ * * SQL Data Type: datetimeoffset
54780
+ * * Default Value: getutcdate()
54781
+ */
54782
+ get __mj_UpdatedAt(): Date;
54783
+ /**
54784
+ * * Field Name: Entity
54785
+ * * Display Name: Entity Name
54786
+ * * SQL Data Type: nvarchar(255)
54787
+ */
54788
+ get Entity(): string;
54789
+ /**
54790
+ * * Field Name: ActionExecutionLog
54791
+ * * Display Name: Action Execution Log
54792
+ * * SQL Data Type: nvarchar(425)
54793
+ */
54794
+ get ActionExecutionLog(): string | null;
54795
+ /**
54796
+ * * Field Name: AIAgentRun
54797
+ * * Display Name: AI Agent Run
54798
+ * * SQL Data Type: nvarchar(255)
54799
+ */
54800
+ get AIAgentRun(): string | null;
54801
+ }
54802
+ /**
54803
+ * MJ: Process Runs - strongly typed entity sub-class
54804
+ * * Schema: __mj
54805
+ * * Base Table: ProcessRun
54806
+ * * Base View: vwProcessRuns
54807
+ * * @description Source-agnostic header for one execution of any set-processing job. Deliberately generic: a Record Process run sets RecordProcessID, but legacy/engine-driven jobs (e.g., a geocoding sweep or vector sync) keep their own source tables and still record a run here with RecordProcessID = NULL, giving every batch a uniform audit + resume trail. EXAMPLE: the Saturday 2am run of "Weekly Customer Health Summary" over 1,284 active customers (RecordProcessID set, TriggeredBy=Schedule); or a nightly geocoding sweep (RecordProcessID NULL).
54808
+ * * Primary Key: ID
54809
+ * @extends {BaseEntity}
54810
+ * @class
54811
+ * @public
54812
+ */
54813
+ export declare class MJProcessRunEntity extends BaseEntity<MJProcessRunEntityType> {
54814
+ /**
54815
+ * Loads the MJ: Process Runs record from the database
54816
+ * @param ID: string - primary key value to load the MJ: Process Runs record.
54817
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
54818
+ * @returns {Promise<boolean>} - true if successful, false otherwise
54819
+ * @public
54820
+ * @async
54821
+ * @memberof MJProcessRunEntity
54822
+ * @method
54823
+ * @override
54824
+ */
54825
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
54826
+ /**
54827
+ * * Field Name: ID
54828
+ * * Display Name: ID
54829
+ * * SQL Data Type: uniqueidentifier
54830
+ * * Default Value: newsequentialid()
54831
+ */
54832
+ get ID(): string;
54833
+ set ID(value: string);
54834
+ /**
54835
+ * * Field Name: RecordProcessID
54836
+ * * Display Name: Record Process
54837
+ * * SQL Data Type: uniqueidentifier
54838
+ * * Related Entity/Foreign Key: MJ: Record Processes (vwRecordProcesses.ID)
54839
+ * * Description: Foreign key to the Record Process that spawned this run; NULL for ad-hoc / engine-driven runs not tied to a saved definition
54840
+ */
54841
+ get RecordProcessID(): string | null;
54842
+ set RecordProcessID(value: string | null);
54843
+ /**
54844
+ * * Field Name: EntityID
54845
+ * * Display Name: Entity
54846
+ * * SQL Data Type: uniqueidentifier
54847
+ * * Related Entity/Foreign Key: MJ: Entities (vwEntities.ID)
54848
+ * * Description: Foreign key to the entity processed by this run, when the run is entity-scoped
54849
+ */
54850
+ get EntityID(): string | null;
54851
+ set EntityID(value: string | null);
54852
+ /**
54853
+ * * Field Name: TriggeredBy
54854
+ * * Display Name: Triggered By
54855
+ * * SQL Data Type: nvarchar(20)
54856
+ * * Value List Type: List
54857
+ * * Possible Values
54858
+ * * Manual
54859
+ * * OnChange
54860
+ * * OnDemand
54861
+ * * Schedule
54862
+ * * Description: What triggered this run: OnChange, Schedule, OnDemand, or Manual
54863
+ */
54864
+ get TriggeredBy(): 'Manual' | 'OnChange' | 'OnDemand' | 'Schedule';
54865
+ set TriggeredBy(value: 'Manual' | 'OnChange' | 'OnDemand' | 'Schedule');
54866
+ /**
54867
+ * * Field Name: SourceType
54868
+ * * Display Name: Source Type
54869
+ * * SQL Data Type: nvarchar(20)
54870
+ * * Value List Type: List
54871
+ * * Possible Values
54872
+ * * Array
54873
+ * * Filter
54874
+ * * Keyset
54875
+ * * List
54876
+ * * SingleRecord
54877
+ * * View
54878
+ * * Description: The kind of record-set source resolved for this run: View, List, Filter, Array, Keyset, or SingleRecord
54879
+ */
54880
+ get SourceType(): 'Array' | 'Filter' | 'Keyset' | 'List' | 'SingleRecord' | 'View';
54881
+ set SourceType(value: 'Array' | 'Filter' | 'Keyset' | 'List' | 'SingleRecord' | 'View');
54882
+ /**
54883
+ * * Field Name: SourceID
54884
+ * * Display Name: Source ID
54885
+ * * SQL Data Type: uniqueidentifier
54886
+ * * Description: Polymorphic source identifier (e.g., ViewID or ListID) when applicable; no FK because it spans entities
54887
+ */
54888
+ get SourceID(): string | null;
54889
+ set SourceID(value: string | null);
54890
+ /**
54891
+ * * Field Name: SourceFilter
54892
+ * * Display Name: Source Filter
54893
+ * * SQL Data Type: nvarchar(MAX)
54894
+ * * Description: Resolved filter snapshot used to materialize the record set for this run
54895
+ */
54896
+ get SourceFilter(): string | null;
54897
+ set SourceFilter(value: string | null);
54898
+ /**
54899
+ * * Field Name: ScheduledJobRunID
54900
+ * * Display Name: Scheduled Job Run
54901
+ * * SQL Data Type: uniqueidentifier
54902
+ * * Related Entity/Foreign Key: MJ: Scheduled Job Runs (vwScheduledJobRuns.ID)
54903
+ * * Description: Foreign key to the Scheduled Job Run that launched this run, when scheduler-launched
54904
+ */
54905
+ get ScheduledJobRunID(): string | null;
54906
+ set ScheduledJobRunID(value: string | null);
54907
+ /**
54908
+ * * Field Name: Status
54909
+ * * Display Name: Status
54910
+ * * SQL Data Type: nvarchar(20)
54911
+ * * Default Value: Pending
54912
+ * * Value List Type: List
54913
+ * * Possible Values
54914
+ * * Cancelled
54915
+ * * Completed
54916
+ * * Failed
54917
+ * * Paused
54918
+ * * Pending
54919
+ * * Running
54920
+ * * Description: Run status: Pending, Running, Paused, Completed, Failed, or Cancelled
54921
+ */
54922
+ get Status(): 'Cancelled' | 'Completed' | 'Failed' | 'Paused' | 'Pending' | 'Running';
54923
+ set Status(value: 'Cancelled' | 'Completed' | 'Failed' | 'Paused' | 'Pending' | 'Running');
54924
+ /**
54925
+ * * Field Name: StartTime
54926
+ * * Display Name: Start Time
54927
+ * * SQL Data Type: datetimeoffset
54928
+ * * Description: When the run started
54929
+ */
54930
+ get StartTime(): Date | null;
54931
+ set StartTime(value: Date | null);
54932
+ /**
54933
+ * * Field Name: EndTime
54934
+ * * Display Name: End Time
54935
+ * * SQL Data Type: datetimeoffset
54936
+ * * Description: When the run ended
54937
+ */
54938
+ get EndTime(): Date | null;
54939
+ set EndTime(value: Date | null);
54940
+ /**
54941
+ * * Field Name: TotalItemCount
54942
+ * * Display Name: Total Item Count
54943
+ * * SQL Data Type: int
54944
+ * * Description: Estimated or known total number of records to process
54945
+ */
54946
+ get TotalItemCount(): number | null;
54947
+ set TotalItemCount(value: number | null);
54948
+ /**
54949
+ * * Field Name: ProcessedItems
54950
+ * * Display Name: Processed Items
54951
+ * * SQL Data Type: int
54952
+ * * Default Value: 0
54953
+ * * Description: Count of records processed so far
54954
+ */
54955
+ get ProcessedItems(): number;
54956
+ set ProcessedItems(value: number);
54957
+ /**
54958
+ * * Field Name: SuccessCount
54959
+ * * Display Name: Success Count
54960
+ * * SQL Data Type: int
54961
+ * * Default Value: 0
54962
+ * * Description: Count of records processed successfully
54963
+ */
54964
+ get SuccessCount(): number;
54965
+ set SuccessCount(value: number);
54966
+ /**
54967
+ * * Field Name: ErrorCount
54968
+ * * Display Name: Error Count
54969
+ * * SQL Data Type: int
54970
+ * * Default Value: 0
54971
+ * * Description: Count of records that failed processing
54972
+ */
54973
+ get ErrorCount(): number;
54974
+ set ErrorCount(value: number);
54975
+ /**
54976
+ * * Field Name: SkippedCount
54977
+ * * Display Name: Skipped Count
54978
+ * * SQL Data Type: int
54979
+ * * Default Value: 0
54980
+ * * Description: Count of records skipped (e.g., unchanged per watermark)
54981
+ */
54982
+ get SkippedCount(): number;
54983
+ set SkippedCount(value: number);
54984
+ /**
54985
+ * * Field Name: LastProcessedOffset
54986
+ * * Display Name: Last Processed Offset
54987
+ * * SQL Data Type: int
54988
+ * * Description: Offset-based resume cursor (StartRow) for sources that paginate by offset
54989
+ */
54990
+ get LastProcessedOffset(): number | null;
54991
+ set LastProcessedOffset(value: number | null);
54992
+ /**
54993
+ * * Field Name: LastProcessedKey
54994
+ * * Display Name: Last Processed Key
54995
+ * * SQL Data Type: nvarchar(450)
54996
+ * * Description: Keyset-based resume cursor (AfterKey) for sources that paginate by seek
54997
+ */
54998
+ get LastProcessedKey(): string | null;
54999
+ set LastProcessedKey(value: string | null);
55000
+ /**
55001
+ * * Field Name: BatchSize
55002
+ * * Display Name: Batch Size
55003
+ * * SQL Data Type: int
55004
+ * * Description: Effective batch size for this run
55005
+ */
55006
+ get BatchSize(): number | null;
55007
+ set BatchSize(value: number | null);
55008
+ /**
55009
+ * * Field Name: CancellationRequested
55010
+ * * Display Name: Cancellation Requested
55011
+ * * SQL Data Type: bit
55012
+ * * Default Value: 0
55013
+ * * Description: Pause/cancel handshake flag honored by the processor between batches
55014
+ */
55015
+ get CancellationRequested(): boolean;
55016
+ set CancellationRequested(value: boolean);
55017
+ /**
55018
+ * * Field Name: Configuration
55019
+ * * Display Name: Configuration JSON
55020
+ * * SQL Data Type: nvarchar(MAX)
55021
+ * * Description: JSON snapshot of the effective configuration for this run
55022
+ */
55023
+ get Configuration(): string | null;
55024
+ set Configuration(value: string | null);
55025
+ /**
55026
+ * * Field Name: ErrorMessage
55027
+ * * Display Name: Error Message
55028
+ * * SQL Data Type: nvarchar(MAX)
55029
+ * * Description: Run-level error message when Status=Failed
55030
+ */
55031
+ get ErrorMessage(): string | null;
55032
+ set ErrorMessage(value: string | null);
55033
+ /**
55034
+ * * Field Name: StartedByUserID
55035
+ * * Display Name: Started By User
55036
+ * * SQL Data Type: uniqueidentifier
55037
+ * * Related Entity/Foreign Key: MJ: Users (vwUsers.ID)
55038
+ * * Description: Foreign key to the user who started the run
55039
+ */
55040
+ get StartedByUserID(): string | null;
55041
+ set StartedByUserID(value: string | null);
55042
+ /**
55043
+ * * Field Name: __mj_CreatedAt
55044
+ * * Display Name: Created At
55045
+ * * SQL Data Type: datetimeoffset
55046
+ * * Default Value: getutcdate()
55047
+ */
55048
+ get __mj_CreatedAt(): Date;
55049
+ /**
55050
+ * * Field Name: __mj_UpdatedAt
55051
+ * * Display Name: Updated At
55052
+ * * SQL Data Type: datetimeoffset
55053
+ * * Default Value: getutcdate()
55054
+ */
55055
+ get __mj_UpdatedAt(): Date;
55056
+ /**
55057
+ * * Field Name: DryRun
55058
+ * * Display Name: Is Dry Run
55059
+ * * SQL Data Type: bit
55060
+ * * Default Value: 0
55061
+ * * Description: When 1, this run was a dry-run (compute-only) preview: the per-record diffs were computed and persisted as Process Run Details, but no changes were written back to the target records. When 0, the run applied its changes.
55062
+ */
55063
+ get DryRun(): boolean;
55064
+ set DryRun(value: boolean);
55065
+ /**
55066
+ * * Field Name: RecordProcess
55067
+ * * Display Name: Record Process Name
55068
+ * * SQL Data Type: nvarchar(255)
55069
+ */
55070
+ get RecordProcess(): string | null;
55071
+ /**
55072
+ * * Field Name: Entity
55073
+ * * Display Name: Entity Name
55074
+ * * SQL Data Type: nvarchar(255)
55075
+ */
55076
+ get Entity(): string | null;
55077
+ /**
55078
+ * * Field Name: ScheduledJobRun
55079
+ * * Display Name: Scheduled Job Run Name
55080
+ * * SQL Data Type: nvarchar(200)
55081
+ */
55082
+ get ScheduledJobRun(): string | null;
55083
+ /**
55084
+ * * Field Name: StartedByUser
55085
+ * * Display Name: Started By User Name
55086
+ * * SQL Data Type: nvarchar(100)
55087
+ */
55088
+ get StartedByUser(): string | null;
55089
+ }
54034
55090
  /**
54035
55091
  * MJ: Projects - strongly typed entity sub-class
54036
55092
  * * Schema: __mj
@@ -57012,6 +58068,941 @@ export declare class MJRecordMergeLogEntity extends BaseEntity<MJRecordMergeLogE
57012
58068
  */
57013
58069
  get ApprovedByUser(): string | null;
57014
58070
  }
58071
+ /**
58072
+ * MJ: Record Process Categories - strongly typed entity sub-class
58073
+ * * Schema: __mj
58074
+ * * Base Table: RecordProcessCategory
58075
+ * * Base View: vwRecordProcessCategories
58076
+ * * @description Hierarchical folder for organizing Record Processes in the UI. Example: "Customer Lifecycle" with a child category "Retention".
58077
+ * * Primary Key: ID
58078
+ * @extends {BaseEntity}
58079
+ * @class
58080
+ * @public
58081
+ */
58082
+ export declare class MJRecordProcessCategoryEntity extends BaseEntity<MJRecordProcessCategoryEntityType> {
58083
+ /**
58084
+ * Loads the MJ: Record Process Categories record from the database
58085
+ * @param ID: string - primary key value to load the MJ: Record Process Categories record.
58086
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
58087
+ * @returns {Promise<boolean>} - true if successful, false otherwise
58088
+ * @public
58089
+ * @async
58090
+ * @memberof MJRecordProcessCategoryEntity
58091
+ * @method
58092
+ * @override
58093
+ */
58094
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
58095
+ /**
58096
+ * * Field Name: ID
58097
+ * * Display Name: ID
58098
+ * * SQL Data Type: uniqueidentifier
58099
+ * * Default Value: newsequentialid()
58100
+ */
58101
+ get ID(): string;
58102
+ set ID(value: string);
58103
+ /**
58104
+ * * Field Name: Name
58105
+ * * Display Name: Name
58106
+ * * SQL Data Type: nvarchar(255)
58107
+ * * Description: Display name of the category
58108
+ */
58109
+ get Name(): string;
58110
+ set Name(value: string);
58111
+ /**
58112
+ * * Field Name: Description
58113
+ * * Display Name: Description
58114
+ * * SQL Data Type: nvarchar(MAX)
58115
+ * * Description: Optional description of what belongs in this category
58116
+ */
58117
+ get Description(): string | null;
58118
+ set Description(value: string | null);
58119
+ /**
58120
+ * * Field Name: ParentID
58121
+ * * Display Name: Parent Category
58122
+ * * SQL Data Type: uniqueidentifier
58123
+ * * Related Entity/Foreign Key: MJ: Record Process Categories (vwRecordProcessCategories.ID)
58124
+ * * Description: Self-referencing foreign key to the parent category, enabling a nested folder hierarchy (NULL for a top-level category)
58125
+ */
58126
+ get ParentID(): string | null;
58127
+ set ParentID(value: string | null);
58128
+ /**
58129
+ * * Field Name: __mj_CreatedAt
58130
+ * * Display Name: Created At
58131
+ * * SQL Data Type: datetimeoffset
58132
+ * * Default Value: getutcdate()
58133
+ */
58134
+ get __mj_CreatedAt(): Date;
58135
+ /**
58136
+ * * Field Name: __mj_UpdatedAt
58137
+ * * Display Name: Updated At
58138
+ * * SQL Data Type: datetimeoffset
58139
+ * * Default Value: getutcdate()
58140
+ */
58141
+ get __mj_UpdatedAt(): Date;
58142
+ /**
58143
+ * * Field Name: Parent
58144
+ * * Display Name: Parent Name
58145
+ * * SQL Data Type: nvarchar(255)
58146
+ */
58147
+ get Parent(): string | null;
58148
+ /**
58149
+ * * Field Name: RootParentID
58150
+ * * Display Name: Root Parent
58151
+ * * SQL Data Type: uniqueidentifier
58152
+ */
58153
+ get RootParentID(): string | null;
58154
+ }
58155
+ /**
58156
+ * MJ: Record Process Watermarks - strongly typed entity sub-class
58157
+ * * Schema: __mj
58158
+ * * Base Table: RecordProcessWatermark
58159
+ * * Base View: vwRecordProcessWatermarks
58160
+ * * @description Per-record change-detection watermark backing WatermarkStrategy=Checksum. Stores the last content hash a Record Process processed for a given record so unchanged records are skipped on the next run. Only used by Checksum mode; UpdatedAt mode compares __mj_UpdatedAt and stores nothing here.
58161
+ * * Primary Key: ID
58162
+ * @extends {BaseEntity}
58163
+ * @class
58164
+ * @public
58165
+ */
58166
+ export declare class MJRecordProcessWatermarkEntity extends BaseEntity<MJRecordProcessWatermarkEntityType> {
58167
+ /**
58168
+ * Loads the MJ: Record Process Watermarks record from the database
58169
+ * @param ID: string - primary key value to load the MJ: Record Process Watermarks record.
58170
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
58171
+ * @returns {Promise<boolean>} - true if successful, false otherwise
58172
+ * @public
58173
+ * @async
58174
+ * @memberof MJRecordProcessWatermarkEntity
58175
+ * @method
58176
+ * @override
58177
+ */
58178
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
58179
+ /**
58180
+ * * Field Name: ID
58181
+ * * Display Name: ID
58182
+ * * SQL Data Type: uniqueidentifier
58183
+ * * Default Value: newsequentialid()
58184
+ */
58185
+ get ID(): string;
58186
+ set ID(value: string);
58187
+ /**
58188
+ * * Field Name: RecordProcessID
58189
+ * * Display Name: Record Process
58190
+ * * SQL Data Type: uniqueidentifier
58191
+ * * Related Entity/Foreign Key: MJ: Record Processes (vwRecordProcesses.ID)
58192
+ * * Description: Foreign key to the Record Process this watermark belongs to
58193
+ */
58194
+ get RecordProcessID(): string;
58195
+ set RecordProcessID(value: string);
58196
+ /**
58197
+ * * Field Name: EntityID
58198
+ * * Display Name: Entity
58199
+ * * SQL Data Type: uniqueidentifier
58200
+ * * Related Entity/Foreign Key: MJ: Entities (vwEntities.ID)
58201
+ * * Description: Foreign key to the entity of the watermarked record
58202
+ */
58203
+ get EntityID(): string;
58204
+ set EntityID(value: string);
58205
+ /**
58206
+ * * Field Name: RecordID
58207
+ * * Display Name: Record ID
58208
+ * * SQL Data Type: nvarchar(450)
58209
+ * * Description: Primary key of the watermarked record, stored as text to remain composite-key safe
58210
+ */
58211
+ get RecordID(): string;
58212
+ set RecordID(value: string);
58213
+ /**
58214
+ * * Field Name: Hash
58215
+ * * Display Name: Content Hash
58216
+ * * SQL Data Type: nvarchar(128)
58217
+ * * Description: Content hash of the record as of the last time it was processed by this Record Process
58218
+ */
58219
+ get Hash(): string;
58220
+ set Hash(value: string);
58221
+ /**
58222
+ * * Field Name: LastProcessedAt
58223
+ * * Display Name: Last Processed At
58224
+ * * SQL Data Type: datetimeoffset
58225
+ * * Description: When this record was last processed by this Record Process
58226
+ */
58227
+ get LastProcessedAt(): Date;
58228
+ set LastProcessedAt(value: Date);
58229
+ /**
58230
+ * * Field Name: __mj_CreatedAt
58231
+ * * Display Name: Created At
58232
+ * * SQL Data Type: datetimeoffset
58233
+ * * Default Value: getutcdate()
58234
+ */
58235
+ get __mj_CreatedAt(): Date;
58236
+ /**
58237
+ * * Field Name: __mj_UpdatedAt
58238
+ * * Display Name: Updated At
58239
+ * * SQL Data Type: datetimeoffset
58240
+ * * Default Value: getutcdate()
58241
+ */
58242
+ get __mj_UpdatedAt(): Date;
58243
+ /**
58244
+ * * Field Name: RecordProcess
58245
+ * * Display Name: Record Process Name
58246
+ * * SQL Data Type: nvarchar(255)
58247
+ */
58248
+ get RecordProcess(): string;
58249
+ /**
58250
+ * * Field Name: Entity
58251
+ * * Display Name: Entity Name
58252
+ * * SQL Data Type: nvarchar(255)
58253
+ */
58254
+ get Entity(): string;
58255
+ }
58256
+ /**
58257
+ * MJ: Record Processes - strongly typed entity sub-class
58258
+ * * Schema: __mj
58259
+ * * Base Table: RecordProcess
58260
+ * * Base View: vwRecordProcesses
58261
+ * * @description A declarative, reusable job definition that binds three axes of a business process: WORK (an Action or an Agent) x SCOPE (a single record, a User View, a List, or an ad-hoc Filter) x TRIGGER (on-change save hooks, a cron schedule, and/or on demand). One row is one configured process; each execution of it produces a Process Run with per-record Process Run Details. EXAMPLE: a "Weekly Customer Health Summary" row runs the "Customer Summarizer" agent over the "Active Customers" view every Saturday 2am, also whenever a customer's NPS/support fields change, and on demand; for each customer it infers {satisfaction, sentiment, personalityStyle, summary} and writes satisfaction/sentiment back onto the Customer plus a summary into a Customer Insights child row, skipping customers unchanged since the last run.
58262
+ * * Primary Key: ID
58263
+ * @extends {BaseEntity}
58264
+ * @class
58265
+ * @public
58266
+ */
58267
+ export declare class MJRecordProcessEntity extends BaseEntity<MJRecordProcessEntityType> {
58268
+ /**
58269
+ * Loads the MJ: Record Processes record from the database
58270
+ * @param ID: string - primary key value to load the MJ: Record Processes record.
58271
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
58272
+ * @returns {Promise<boolean>} - true if successful, false otherwise
58273
+ * @public
58274
+ * @async
58275
+ * @memberof MJRecordProcessEntity
58276
+ * @method
58277
+ * @override
58278
+ */
58279
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
58280
+ /**
58281
+ * * Field Name: ID
58282
+ * * Display Name: ID
58283
+ * * SQL Data Type: uniqueidentifier
58284
+ * * Default Value: newsequentialid()
58285
+ */
58286
+ get ID(): string;
58287
+ set ID(value: string);
58288
+ /**
58289
+ * * Field Name: Name
58290
+ * * Display Name: Name
58291
+ * * SQL Data Type: nvarchar(255)
58292
+ * * Description: Human-readable name of the process definition (e.g., "Weekly Customer Health Summary")
58293
+ */
58294
+ get Name(): string;
58295
+ set Name(value: string);
58296
+ /**
58297
+ * * Field Name: Description
58298
+ * * Display Name: Description
58299
+ * * SQL Data Type: nvarchar(MAX)
58300
+ * * Description: Optional description of what this process does
58301
+ */
58302
+ get Description(): string | null;
58303
+ set Description(value: string | null);
58304
+ /**
58305
+ * * Field Name: CategoryID
58306
+ * * Display Name: Category
58307
+ * * SQL Data Type: uniqueidentifier
58308
+ * * Related Entity/Foreign Key: MJ: Record Process Categories (vwRecordProcessCategories.ID)
58309
+ * * Description: Optional hierarchical category for organizing this process in the UI
58310
+ */
58311
+ get CategoryID(): string | null;
58312
+ set CategoryID(value: string | null);
58313
+ /**
58314
+ * * Field Name: EntityID
58315
+ * * Display Name: Entity
58316
+ * * SQL Data Type: uniqueidentifier
58317
+ * * Related Entity/Foreign Key: MJ: Entities (vwEntities.ID)
58318
+ * * Description: Foreign key to the target entity whose records this process operates on
58319
+ */
58320
+ get EntityID(): string;
58321
+ set EntityID(value: string);
58322
+ /**
58323
+ * * Field Name: Status
58324
+ * * Display Name: Status
58325
+ * * SQL Data Type: nvarchar(20)
58326
+ * * Default Value: Draft
58327
+ * * Value List Type: List
58328
+ * * Possible Values
58329
+ * * Active
58330
+ * * Disabled
58331
+ * * Draft
58332
+ * * Description: Lifecycle status: Draft (not yet wired), Active (triggers live), or Disabled
58333
+ */
58334
+ get Status(): 'Active' | 'Disabled' | 'Draft';
58335
+ set Status(value: 'Active' | 'Disabled' | 'Draft');
58336
+ /**
58337
+ * * Field Name: WorkType
58338
+ * * Display Name: Work Type
58339
+ * * SQL Data Type: nvarchar(20)
58340
+ * * Value List Type: List
58341
+ * * Possible Values
58342
+ * * Action
58343
+ * * Agent
58344
+ * * FieldRules
58345
+ * * Infer
58346
+ * * Description: Whether the work is an Action, an Agent, or an Infer (per-record AI Prompt). Agents are dispatched through the Execute Agent action and must be top-level + ExposeAsAction; Infer runs the AI Prompt named by PromptID for each record and writes its structured output back via OutputMapping.
58347
+ */
58348
+ get WorkType(): 'Action' | 'Agent' | 'FieldRules' | 'Infer';
58349
+ set WorkType(value: 'Action' | 'Agent' | 'FieldRules' | 'Infer');
58350
+ /**
58351
+ * * Field Name: ActionID
58352
+ * * Display Name: Action
58353
+ * * SQL Data Type: uniqueidentifier
58354
+ * * Related Entity/Foreign Key: MJ: Actions (vwActions.ID)
58355
+ * * Description: Foreign key to the Action to run, when WorkType=Action
58356
+ */
58357
+ get ActionID(): string | null;
58358
+ set ActionID(value: string | null);
58359
+ /**
58360
+ * * Field Name: AgentID
58361
+ * * Display Name: Agent
58362
+ * * SQL Data Type: uniqueidentifier
58363
+ * * Related Entity/Foreign Key: MJ: AI Agents (vwAIAgents.ID)
58364
+ * * Description: Foreign key to the AI Agent to run, when WorkType=Agent
58365
+ */
58366
+ get AgentID(): string | null;
58367
+ set AgentID(value: string | null);
58368
+ /**
58369
+ * * Field Name: PromptID
58370
+ * * Display Name: Prompt
58371
+ * * SQL Data Type: uniqueidentifier
58372
+ * * Related Entity/Foreign Key: MJ: AI Prompts (vwAIPrompts.ID)
58373
+ * * Description: Foreign key to the AI Prompt to run for each record, when WorkType=Infer. The prompt's structured output is written back to the data model via OutputMapping.
58374
+ */
58375
+ get PromptID(): string | null;
58376
+ set PromptID(value: string | null);
58377
+ /**
58378
+ * * Field Name: ScopeType
58379
+ * * Display Name: Scope Type
58380
+ * * SQL Data Type: nvarchar(20)
58381
+ * * Value List Type: List
58382
+ * * Possible Values
58383
+ * * Filter
58384
+ * * List
58385
+ * * SingleRecord
58386
+ * * View
58387
+ * * Description: How the record set is scoped for the Schedule and On-Demand triggers: SingleRecord, View, List, or Filter. The On-Change trigger is always single-record and ignores this.
58388
+ */
58389
+ get ScopeType(): 'Filter' | 'List' | 'SingleRecord' | 'View';
58390
+ set ScopeType(value: 'Filter' | 'List' | 'SingleRecord' | 'View');
58391
+ /**
58392
+ * * Field Name: ScopeViewID
58393
+ * * Display Name: Scope View
58394
+ * * SQL Data Type: uniqueidentifier
58395
+ * * Related Entity/Foreign Key: MJ: User Views (vwUserViews.ID)
58396
+ * * Description: Foreign key to the User View defining the scope, when ScopeType=View
58397
+ */
58398
+ get ScopeViewID(): string | null;
58399
+ set ScopeViewID(value: string | null);
58400
+ /**
58401
+ * * Field Name: ScopeListID
58402
+ * * Display Name: Scope List
58403
+ * * SQL Data Type: uniqueidentifier
58404
+ * * Related Entity/Foreign Key: MJ: Lists (vwLists.ID)
58405
+ * * Description: Foreign key to the List defining the scope, when ScopeType=List
58406
+ */
58407
+ get ScopeListID(): string | null;
58408
+ set ScopeListID(value: string | null);
58409
+ /**
58410
+ * * Field Name: ScopeFilter
58411
+ * * Display Name: Scope Filter
58412
+ * * SQL Data Type: nvarchar(MAX)
58413
+ * * Description: Ad-hoc WHERE clause used to resolve the record set, when ScopeType=Filter
58414
+ */
58415
+ get ScopeFilter(): string | null;
58416
+ set ScopeFilter(value: string | null);
58417
+ /**
58418
+ * * Field Name: OnChangeEnabled
58419
+ * * Display Name: On-Change Enabled
58420
+ * * SQL Data Type: bit
58421
+ * * Default Value: 0
58422
+ * * Description: When 1, the process runs per-record on save via an owned Entity Action
58423
+ */
58424
+ get OnChangeEnabled(): boolean;
58425
+ set OnChangeEnabled(value: boolean);
58426
+ /**
58427
+ * * Field Name: OnChangeInvocationType
58428
+ * * Display Name: On-Change Invocation Type
58429
+ * * SQL Data Type: nvarchar(30)
58430
+ * * Value List Type: List
58431
+ * * Possible Values
58432
+ * * AfterCreate
58433
+ * * AfterDelete
58434
+ * * AfterUpdate
58435
+ * * Validate
58436
+ * * Description: Which save event fires the on-change trigger: AfterCreate, AfterUpdate, AfterDelete, or Validate
58437
+ */
58438
+ get OnChangeInvocationType(): 'AfterCreate' | 'AfterDelete' | 'AfterUpdate' | 'Validate' | null;
58439
+ set OnChangeInvocationType(value: 'AfterCreate' | 'AfterDelete' | 'AfterUpdate' | 'Validate' | null);
58440
+ /**
58441
+ * * Field Name: OnChangeFilter
58442
+ * * Display Name: On-Change Filter
58443
+ * * SQL Data Type: nvarchar(MAX)
58444
+ * * Description: Gating expression evaluated against the changed record (with changed-fields context) that compiles into the owned Entity Action Filter; only when it passes does the on-change trigger fire
58445
+ */
58446
+ get OnChangeFilter(): string | null;
58447
+ set OnChangeFilter(value: string | null);
58448
+ /**
58449
+ * * Field Name: ScheduleEnabled
58450
+ * * Display Name: Schedule Enabled
58451
+ * * SQL Data Type: bit
58452
+ * * Default Value: 0
58453
+ * * Description: When 1, the process runs on a cron schedule via an owned Scheduled Job
58454
+ */
58455
+ get ScheduleEnabled(): boolean;
58456
+ set ScheduleEnabled(value: boolean);
58457
+ /**
58458
+ * * Field Name: CronExpression
58459
+ * * Display Name: Cron Expression
58460
+ * * SQL Data Type: nvarchar(120)
58461
+ * * Description: Cron expression for the schedule trigger, when ScheduleEnabled=1
58462
+ */
58463
+ get CronExpression(): string | null;
58464
+ set CronExpression(value: string | null);
58465
+ /**
58466
+ * * Field Name: Timezone
58467
+ * * Display Name: Timezone
58468
+ * * SQL Data Type: nvarchar(100)
58469
+ * * Default Value: UTC
58470
+ * * Description: IANA timezone for evaluating the cron expression (default UTC)
58471
+ */
58472
+ get Timezone(): string | null;
58473
+ set Timezone(value: string | null);
58474
+ /**
58475
+ * * Field Name: OnDemandEnabled
58476
+ * * Display Name: On-Demand Enabled
58477
+ * * SQL Data Type: bit
58478
+ * * Default Value: 1
58479
+ * * Description: When 1, the process can be run on demand (button / resolver)
58480
+ */
58481
+ get OnDemandEnabled(): boolean;
58482
+ set OnDemandEnabled(value: boolean);
58483
+ /**
58484
+ * * Field Name: InputMapping
58485
+ * * Display Name: Input Mapping
58486
+ * * SQL Data Type: nvarchar(MAX)
58487
+ * * Description: JSON mapping describing how a record maps to the work inputs (optionally including an EntityDocumentID for render-to-text)
58488
+ */
58489
+ get InputMapping(): string | null;
58490
+ set InputMapping(value: string | null);
58491
+ /**
58492
+ * * Field Name: OutputMapping
58493
+ * * Display Name: Output Mapping
58494
+ * * SQL Data Type: nvarchar(MAX)
58495
+ * * Description: JSON mapping describing how the structured output payload writes back (to fields, a child record, or tags)
58496
+ */
58497
+ get OutputMapping(): string | null;
58498
+ set OutputMapping(value: string | null);
58499
+ /**
58500
+ * * Field Name: SkipUnchanged
58501
+ * * Display Name: Skip Unchanged
58502
+ * * SQL Data Type: bit
58503
+ * * Default Value: 1
58504
+ * * Description: When 1, records whose watermark indicates no change since the last run are skipped
58505
+ */
58506
+ get SkipUnchanged(): boolean;
58507
+ set SkipUnchanged(value: boolean);
58508
+ /**
58509
+ * * Field Name: WatermarkStrategy
58510
+ * * Display Name: Watermark Strategy
58511
+ * * SQL Data Type: nvarchar(20)
58512
+ * * Value List Type: List
58513
+ * * Possible Values
58514
+ * * Checksum
58515
+ * * None
58516
+ * * UpdatedAt
58517
+ * * Description: How unchanged records are detected for SkipUnchanged: Checksum (per-record content hash, stored in RecordProcessWatermark), UpdatedAt (compares __mj_UpdatedAt, stores nothing), or None
58518
+ */
58519
+ get WatermarkStrategy(): 'Checksum' | 'None' | 'UpdatedAt' | null;
58520
+ set WatermarkStrategy(value: 'Checksum' | 'None' | 'UpdatedAt' | null);
58521
+ /**
58522
+ * * Field Name: BatchSize
58523
+ * * Display Name: Batch Size
58524
+ * * SQL Data Type: int
58525
+ * * Default Value: 100
58526
+ * * Description: Number of records processed per batch (default 100)
58527
+ */
58528
+ get BatchSize(): number | null;
58529
+ set BatchSize(value: number | null);
58530
+ /**
58531
+ * * Field Name: MaxConcurrency
58532
+ * * Display Name: Max Concurrency
58533
+ * * SQL Data Type: int
58534
+ * * Default Value: 1
58535
+ * * Description: Maximum number of records processed concurrently within a batch (default 1)
58536
+ */
58537
+ get MaxConcurrency(): number | null;
58538
+ set MaxConcurrency(value: number | null);
58539
+ /**
58540
+ * * Field Name: __mj_CreatedAt
58541
+ * * Display Name: Created At
58542
+ * * SQL Data Type: datetimeoffset
58543
+ * * Default Value: getutcdate()
58544
+ */
58545
+ get __mj_CreatedAt(): Date;
58546
+ /**
58547
+ * * Field Name: __mj_UpdatedAt
58548
+ * * Display Name: Updated At
58549
+ * * SQL Data Type: datetimeoffset
58550
+ * * Default Value: getutcdate()
58551
+ */
58552
+ get __mj_UpdatedAt(): Date;
58553
+ /**
58554
+ * * Field Name: Configuration
58555
+ * * Display Name: Configuration
58556
+ * * SQL Data Type: nvarchar(MAX)
58557
+ * * Description: JSON configuration for the process's work, used by work types that need structured config beyond Input/Output mappings. For WorkType='FieldRules' this holds the serialized FieldRuleSet (the rules applied to each record). NULL for work types that do not use it.
58558
+ */
58559
+ get Configuration(): string | null;
58560
+ set Configuration(value: string | null);
58561
+ /**
58562
+ * * Field Name: Category
58563
+ * * Display Name: Category Name
58564
+ * * SQL Data Type: nvarchar(255)
58565
+ */
58566
+ get Category(): string | null;
58567
+ /**
58568
+ * * Field Name: Entity
58569
+ * * Display Name: Entity Name
58570
+ * * SQL Data Type: nvarchar(255)
58571
+ */
58572
+ get Entity(): string;
58573
+ /**
58574
+ * * Field Name: Action
58575
+ * * Display Name: Action Name
58576
+ * * SQL Data Type: nvarchar(425)
58577
+ */
58578
+ get Action(): string | null;
58579
+ /**
58580
+ * * Field Name: Agent
58581
+ * * Display Name: Agent Name
58582
+ * * SQL Data Type: nvarchar(255)
58583
+ */
58584
+ get Agent(): string | null;
58585
+ /**
58586
+ * * Field Name: Prompt
58587
+ * * Display Name: Prompt Name
58588
+ * * SQL Data Type: nvarchar(255)
58589
+ */
58590
+ get Prompt(): string | null;
58591
+ /**
58592
+ * * Field Name: ScopeView
58593
+ * * Display Name: Scope View Name
58594
+ * * SQL Data Type: nvarchar(100)
58595
+ */
58596
+ get ScopeView(): string | null;
58597
+ /**
58598
+ * * Field Name: ScopeList
58599
+ * * Display Name: Scope List Name
58600
+ * * SQL Data Type: nvarchar(100)
58601
+ */
58602
+ get ScopeList(): string | null;
58603
+ }
58604
+ /**
58605
+ * MJ: Remote Operation Categories - strongly typed entity sub-class
58606
+ * * Schema: __mj
58607
+ * * Base Table: RemoteOperationCategory
58608
+ * * Base View: vwRemoteOperationCategories
58609
+ * * @description Hierarchical folder for organizing Remote Operations in the UI. Example: "Record Processes" with a child category "Control" holding RunNow / Pause / Cancel.
58610
+ * * Primary Key: ID
58611
+ * @extends {BaseEntity}
58612
+ * @class
58613
+ * @public
58614
+ */
58615
+ export declare class MJRemoteOperationCategoryEntity extends BaseEntity<MJRemoteOperationCategoryEntityType> {
58616
+ /**
58617
+ * Loads the MJ: Remote Operation Categories record from the database
58618
+ * @param ID: string - primary key value to load the MJ: Remote Operation Categories record.
58619
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
58620
+ * @returns {Promise<boolean>} - true if successful, false otherwise
58621
+ * @public
58622
+ * @async
58623
+ * @memberof MJRemoteOperationCategoryEntity
58624
+ * @method
58625
+ * @override
58626
+ */
58627
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
58628
+ /**
58629
+ * * Field Name: ID
58630
+ * * Display Name: ID
58631
+ * * SQL Data Type: uniqueidentifier
58632
+ * * Default Value: newsequentialid()
58633
+ */
58634
+ get ID(): string;
58635
+ set ID(value: string);
58636
+ /**
58637
+ * * Field Name: Name
58638
+ * * Display Name: Name
58639
+ * * SQL Data Type: nvarchar(255)
58640
+ * * Description: Display name of the category
58641
+ */
58642
+ get Name(): string;
58643
+ set Name(value: string);
58644
+ /**
58645
+ * * Field Name: Description
58646
+ * * Display Name: Description
58647
+ * * SQL Data Type: nvarchar(MAX)
58648
+ * * Description: Optional description of what belongs in this category
58649
+ */
58650
+ get Description(): string | null;
58651
+ set Description(value: string | null);
58652
+ /**
58653
+ * * Field Name: ParentID
58654
+ * * Display Name: Parent Category
58655
+ * * SQL Data Type: uniqueidentifier
58656
+ * * Related Entity/Foreign Key: MJ: Remote Operation Categories (vwRemoteOperationCategories.ID)
58657
+ * * Description: Self-referencing foreign key to the parent category, enabling a nested folder hierarchy (NULL for a top-level category)
58658
+ */
58659
+ get ParentID(): string | null;
58660
+ set ParentID(value: string | null);
58661
+ /**
58662
+ * * Field Name: __mj_CreatedAt
58663
+ * * Display Name: Created At
58664
+ * * SQL Data Type: datetimeoffset
58665
+ * * Default Value: getutcdate()
58666
+ */
58667
+ get __mj_CreatedAt(): Date;
58668
+ /**
58669
+ * * Field Name: __mj_UpdatedAt
58670
+ * * Display Name: Updated At
58671
+ * * SQL Data Type: datetimeoffset
58672
+ * * Default Value: getutcdate()
58673
+ */
58674
+ get __mj_UpdatedAt(): Date;
58675
+ /**
58676
+ * * Field Name: Parent
58677
+ * * Display Name: Parent Name
58678
+ * * SQL Data Type: nvarchar(255)
58679
+ */
58680
+ get Parent(): string | null;
58681
+ /**
58682
+ * * Field Name: RootParentID
58683
+ * * Display Name: Root Parent
58684
+ * * SQL Data Type: uniqueidentifier
58685
+ */
58686
+ get RootParentID(): string | null;
58687
+ }
58688
+ /**
58689
+ * One library that an AI-authored Remote Operation body imports. CodeGen turns the `LibrariesObject` array
58690
+ * (the strongly-typed accessor bound to `MJ: Remote Operations.Libraries` via JSONType metadata) into one
58691
+ * `import { ...ItemsUsed } from "Library"` per entry at the top of the generated `remote_operations.ts`.
58692
+ * The always-available default libraries (RunView / Metadata / RunQuery from @memberjunction/core) are NOT
58693
+ * listed here — they are emitted for every operation automatically.
58694
+ */
58695
+ export interface MJRemoteOperationEntity_RemoteOperationLibrary {
58696
+ /** The npm package to import from, e.g. "@memberjunction/ai-prompts". */
58697
+ Library: string;
58698
+ /** The exported items used from that package, e.g. ["AIPromptRunner"]. */
58699
+ ItemsUsed: string[];
58700
+ }
58701
+ /**
58702
+ * MJ: Remote Operations - strongly typed entity sub-class
58703
+ * * Schema: __mj
58704
+ * * Base Table: RemoteOperation
58705
+ * * Base View: vwRemoteOperations
58706
+ * * @description Definition of a typed, provider-routed server operation invoked identically from the client (marshalled over GraphQL) and the server (dispatched in-process) - the typed peer of BaseEntity (CRUD) and RunView (set reads) for arbitrary capabilities. Input/output types are declared here and emitted by CodeGen into a typed base class; the body may be hand-written or AI-authored from Description. EXAMPLE: "RecordProcess.RunNow" (ExecutionMode=LongRunning) takes {recordProcessID} and returns {processRunID}, authorized by the recordprocess:execute scope plus the caller's entity permissions.
58707
+ * * Primary Key: ID
58708
+ * @extends {BaseEntity}
58709
+ * @class
58710
+ * @public
58711
+ */
58712
+ export declare class MJRemoteOperationEntity extends BaseEntity<MJRemoteOperationEntityType> {
58713
+ /**
58714
+ * Loads the MJ: Remote Operations record from the database
58715
+ * @param ID: string - primary key value to load the MJ: Remote Operations record.
58716
+ * @param EntityRelationshipsToLoad - (optional) the relationships to load
58717
+ * @returns {Promise<boolean>} - true if successful, false otherwise
58718
+ * @public
58719
+ * @async
58720
+ * @memberof MJRemoteOperationEntity
58721
+ * @method
58722
+ * @override
58723
+ */
58724
+ Load(ID: string, EntityRelationshipsToLoad?: string[]): Promise<boolean>;
58725
+ /**
58726
+ * * Field Name: ID
58727
+ * * Display Name: ID
58728
+ * * SQL Data Type: uniqueidentifier
58729
+ * * Default Value: newsequentialid()
58730
+ */
58731
+ get ID(): string;
58732
+ set ID(value: string);
58733
+ /**
58734
+ * * Field Name: Name
58735
+ * * Display Name: Name
58736
+ * * SQL Data Type: nvarchar(255)
58737
+ * * Description: Human-readable name of the operation
58738
+ */
58739
+ get Name(): string;
58740
+ set Name(value: string);
58741
+ /**
58742
+ * * Field Name: OperationKey
58743
+ * * Display Name: Operation Key
58744
+ * * SQL Data Type: nvarchar(255)
58745
+ * * Description: Stable, unique registry key and wire token used to dispatch the operation (e.g., "RecordProcess.RunNow"). Namespaced by convention.
58746
+ */
58747
+ get OperationKey(): string;
58748
+ set OperationKey(value: string);
58749
+ /**
58750
+ * * Field Name: CategoryID
58751
+ * * Display Name: Category
58752
+ * * SQL Data Type: uniqueidentifier
58753
+ * * Related Entity/Foreign Key: MJ: Remote Operation Categories (vwRemoteOperationCategories.ID)
58754
+ * * Description: Optional hierarchical category for organizing this operation in the UI
58755
+ */
58756
+ get CategoryID(): string | null;
58757
+ set CategoryID(value: string | null);
58758
+ /**
58759
+ * * Field Name: Description
58760
+ * * Display Name: Description
58761
+ * * SQL Data Type: nvarchar(MAX)
58762
+ * * Description: Human description of the operation; also the seed for AI-generated implementation code when GenerationType=AI
58763
+ */
58764
+ get Description(): string | null;
58765
+ set Description(value: string | null);
58766
+ /**
58767
+ * * Field Name: InputTypeName
58768
+ * * Display Name: Input Type Name
58769
+ * * SQL Data Type: nvarchar(255)
58770
+ * * Description: TypeScript type name for the operation input (emitted by CodeGen as the TInput interface)
58771
+ */
58772
+ get InputTypeName(): string | null;
58773
+ set InputTypeName(value: string | null);
58774
+ /**
58775
+ * * Field Name: InputTypeDefinition
58776
+ * * Display Name: Input Type Definition
58777
+ * * SQL Data Type: nvarchar(MAX)
58778
+ * * Description: Raw TypeScript interface/type source defining the input shape (same mechanism as EntityField JSON-type definitions)
58779
+ */
58780
+ get InputTypeDefinition(): string | null;
58781
+ set InputTypeDefinition(value: string | null);
58782
+ /**
58783
+ * * Field Name: InputTypeIsArray
58784
+ * * Display Name: Input Is Array
58785
+ * * SQL Data Type: bit
58786
+ * * Default Value: 0
58787
+ * * Description: When 1, the input type is emitted as an array (TInput[])
58788
+ */
58789
+ get InputTypeIsArray(): boolean;
58790
+ set InputTypeIsArray(value: boolean);
58791
+ /**
58792
+ * * Field Name: OutputTypeName
58793
+ * * Display Name: Output Type Name
58794
+ * * SQL Data Type: nvarchar(255)
58795
+ * * Description: TypeScript type name for the operation output (emitted by CodeGen as the TOutput interface)
58796
+ */
58797
+ get OutputTypeName(): string | null;
58798
+ set OutputTypeName(value: string | null);
58799
+ /**
58800
+ * * Field Name: OutputTypeDefinition
58801
+ * * Display Name: Output Type Definition
58802
+ * * SQL Data Type: nvarchar(MAX)
58803
+ * * Description: Raw TypeScript interface/type source defining the output shape
58804
+ */
58805
+ get OutputTypeDefinition(): string | null;
58806
+ set OutputTypeDefinition(value: string | null);
58807
+ /**
58808
+ * * Field Name: OutputTypeIsArray
58809
+ * * Display Name: Output Is Array
58810
+ * * SQL Data Type: bit
58811
+ * * Default Value: 0
58812
+ * * Description: When 1, the output type is emitted as an array (TOutput[])
58813
+ */
58814
+ get OutputTypeIsArray(): boolean;
58815
+ set OutputTypeIsArray(value: boolean);
58816
+ /**
58817
+ * * Field Name: ExecutionMode
58818
+ * * Display Name: Execution Mode
58819
+ * * SQL Data Type: nvarchar(20)
58820
+ * * Default Value: Sync
58821
+ * * Value List Type: List
58822
+ * * Possible Values
58823
+ * * LongRunning
58824
+ * * Sync
58825
+ * * Description: Sync (request/response) or LongRunning (returns a handle; supports detached and attached consumption)
58826
+ */
58827
+ get ExecutionMode(): 'LongRunning' | 'Sync';
58828
+ set ExecutionMode(value: 'LongRunning' | 'Sync');
58829
+ /**
58830
+ * * Field Name: RequiredScope
58831
+ * * Display Name: Required Scope
58832
+ * * SQL Data Type: nvarchar(255)
58833
+ * * Description: Optional API-key scope string (e.g., recordprocess:execute) enforced for API-key/MCP callers; NULL means no scope gate (interactive users are still bounded by their entity permissions)
58834
+ */
58835
+ get RequiredScope(): string | null;
58836
+ set RequiredScope(value: string | null);
58837
+ /**
58838
+ * * Field Name: RequiresSystemUser
58839
+ * * Display Name: Requires System User
58840
+ * * SQL Data Type: bit
58841
+ * * Default Value: 0
58842
+ * * Description: When 1, only the system user may invoke this operation
58843
+ */
58844
+ get RequiresSystemUser(): boolean;
58845
+ set RequiresSystemUser(value: boolean);
58846
+ /**
58847
+ * * Field Name: GenerationType
58848
+ * * Display Name: Generation Type
58849
+ * * SQL Data Type: nvarchar(20)
58850
+ * * Default Value: Manual
58851
+ * * Value List Type: List
58852
+ * * Possible Values
58853
+ * * AI
58854
+ * * Default
58855
+ * * Manual
58856
+ * * Description: How the server implementation is provided: Manual (hand-written subclass), AI (generated from Description), or Default (standard generated plumbing)
58857
+ */
58858
+ get GenerationType(): 'AI' | 'Default' | 'Manual';
58859
+ set GenerationType(value: 'AI' | 'Default' | 'Manual');
58860
+ /**
58861
+ * * Field Name: Code
58862
+ * * Display Name: Code
58863
+ * * SQL Data Type: nvarchar(MAX)
58864
+ * * Description: The AI-generated implementation body (when GenerationType=AI); regenerated only when Description changes
58865
+ */
58866
+ get Code(): string | null;
58867
+ set Code(value: string | null);
58868
+ /**
58869
+ * * Field Name: CodeApprovalStatus
58870
+ * * Display Name: Code Approval Status
58871
+ * * SQL Data Type: nvarchar(20)
58872
+ * * Default Value: Pending
58873
+ * * Value List Type: List
58874
+ * * Possible Values
58875
+ * * Approved
58876
+ * * Pending
58877
+ * * Rejected
58878
+ * * Description: Human approval gate for AI-generated code: Pending, Approved, or Rejected. Only Approved AI code is emitted and routable.
58879
+ */
58880
+ get CodeApprovalStatus(): 'Approved' | 'Pending' | 'Rejected';
58881
+ set CodeApprovalStatus(value: 'Approved' | 'Pending' | 'Rejected');
58882
+ /**
58883
+ * * Field Name: CodeApprovedByUserID
58884
+ * * Display Name: Code Approved By User ID
58885
+ * * SQL Data Type: uniqueidentifier
58886
+ * * Related Entity/Foreign Key: MJ: Users (vwUsers.ID)
58887
+ * * Description: Foreign key to the user who approved the generated code
58888
+ */
58889
+ get CodeApprovedByUserID(): string | null;
58890
+ set CodeApprovedByUserID(value: string | null);
58891
+ /**
58892
+ * * Field Name: CodeApprovedAt
58893
+ * * Display Name: Code Approved At
58894
+ * * SQL Data Type: datetimeoffset
58895
+ * * Description: When the generated code was approved
58896
+ */
58897
+ get CodeApprovedAt(): Date | null;
58898
+ set CodeApprovedAt(value: Date | null);
58899
+ /**
58900
+ * * Field Name: ContractFingerprint
58901
+ * * Display Name: Contract Fingerprint
58902
+ * * SQL Data Type: nvarchar(100)
58903
+ * * Description: Fingerprint of the input/output contract; carried in the wire envelope so the server can reject a stale client loudly instead of mis-deserializing
58904
+ */
58905
+ get ContractFingerprint(): string | null;
58906
+ set ContractFingerprint(value: string | null);
58907
+ /**
58908
+ * * Field Name: Status
58909
+ * * Display Name: Status
58910
+ * * SQL Data Type: nvarchar(20)
58911
+ * * Default Value: Pending
58912
+ * * Value List Type: List
58913
+ * * Possible Values
58914
+ * * Active
58915
+ * * Disabled
58916
+ * * Pending
58917
+ * * Description: Lifecycle status: Active (routable), Disabled, or Pending. Only Active operations can be invoked.
58918
+ */
58919
+ get Status(): 'Active' | 'Disabled' | 'Pending';
58920
+ set Status(value: 'Active' | 'Disabled' | 'Pending');
58921
+ /**
58922
+ * * Field Name: CacheTTLSeconds
58923
+ * * Display Name: Cache TTL (Seconds)
58924
+ * * SQL Data Type: int
58925
+ * * Description: Optional result cache TTL in seconds (NULL = no caching)
58926
+ */
58927
+ get CacheTTLSeconds(): number | null;
58928
+ set CacheTTLSeconds(value: number | null);
58929
+ /**
58930
+ * * Field Name: TimeoutMS
58931
+ * * Display Name: Timeout (MS)
58932
+ * * SQL Data Type: int
58933
+ * * Description: Optional execution timeout in milliseconds
58934
+ */
58935
+ get TimeoutMS(): number | null;
58936
+ set TimeoutMS(value: number | null);
58937
+ /**
58938
+ * * Field Name: MaxConcurrency
58939
+ * * Display Name: Max Concurrency
58940
+ * * SQL Data Type: int
58941
+ * * Description: Optional cap on concurrent executions of this operation
58942
+ */
58943
+ get MaxConcurrency(): number | null;
58944
+ set MaxConcurrency(value: number | null);
58945
+ /**
58946
+ * * Field Name: __mj_CreatedAt
58947
+ * * Display Name: Created At
58948
+ * * SQL Data Type: datetimeoffset
58949
+ * * Default Value: getutcdate()
58950
+ */
58951
+ get __mj_CreatedAt(): Date;
58952
+ /**
58953
+ * * Field Name: __mj_UpdatedAt
58954
+ * * Display Name: Updated At
58955
+ * * SQL Data Type: datetimeoffset
58956
+ * * Default Value: getutcdate()
58957
+ */
58958
+ get __mj_UpdatedAt(): Date;
58959
+ /**
58960
+ * * Field Name: CodeLocked
58961
+ * * Display Name: Code Locked
58962
+ * * SQL Data Type: bit
58963
+ * * Default Value: 0
58964
+ * * Description: When 1, the AI-generated Code is frozen and Save() will not regenerate it even if Description changes (the Generated-Actions CodeLocked analog). Default 0.
58965
+ */
58966
+ get CodeLocked(): boolean;
58967
+ set CodeLocked(value: boolean);
58968
+ /**
58969
+ * * Field Name: CodeComments
58970
+ * * Display Name: Code Comments
58971
+ * * SQL Data Type: nvarchar(MAX)
58972
+ * * Description: The model's explanation / comments for the AI-generated Code (populated alongside Code when GenerationType=AI). Human-facing review aid.
58973
+ */
58974
+ get CodeComments(): string | null;
58975
+ set CodeComments(value: string | null);
58976
+ /**
58977
+ * * Field Name: Libraries
58978
+ * * Display Name: Libraries
58979
+ * * SQL Data Type: nvarchar(MAX)
58980
+ * * JSON Type: Array<MJRemoteOperationEntity_RemoteOperationLibrary>
58981
+ * * Description: JSON array of the libraries the generated body imports: [{ "Library": "@memberjunction/ai-prompts", "ItemsUsed": ["AIPromptRunner"] }, ...]. Bound to the RemoteOperationLibrary JSONType via metadata sync so CodeGen emits a typed LibrariesObject accessor; CodeGen uses it to emit the imports at the top of the generated remote_operations.ts. NULL/empty = only the default always-available libraries are imported.
58982
+ */
58983
+ get Libraries(): string | null;
58984
+ set Libraries(value: string | null);
58985
+ private _LibrariesObject_cached;
58986
+ private _LibrariesObject_lastRaw;
58987
+ /**
58988
+ * Typed accessor for Libraries — returns parsed JSON as Array<MJRemoteOperationEntity_RemoteOperationLibrary>.
58989
+ * Uses lazy parsing with cache invalidation when the underlying raw value changes.
58990
+ */
58991
+ get LibrariesObject(): Array<MJRemoteOperationEntity_RemoteOperationLibrary> | null;
58992
+ set LibrariesObject(value: Array<MJRemoteOperationEntity_RemoteOperationLibrary> | null);
58993
+ /**
58994
+ * * Field Name: Category
58995
+ * * Display Name: Category Name
58996
+ * * SQL Data Type: nvarchar(255)
58997
+ */
58998
+ get Category(): string | null;
58999
+ /**
59000
+ * * Field Name: CodeApprovedByUser
59001
+ * * Display Name: Code Approved By User
59002
+ * * SQL Data Type: nvarchar(100)
59003
+ */
59004
+ get CodeApprovedByUser(): string | null;
59005
+ }
57015
59006
  /**
57016
59007
  * MJ: Report Categories - strongly typed entity sub-class
57017
59008
  * * Schema: __mj