/*************************************************
* GENERATED CODE - DO NOT MODIFY
* Generated by MemberJunction CodeGen — Remote Operation typed bases
*
* One typed base class per "MJ: Remote Operations" row (a subclass of BaseRemotableOperation),
* emitted from the operation's metadata: OperationKey, ExecutionMode, RequiredScope, and the raw
* TypeScript Input/Output type definitions. GenerationType=Manual rows emit a typed SHELL — a
* hand-authored server subclass (registered via @RegisterClass) supplies the InternalExecute body.
* GenerationType=AI/Default rows with Approved Code emit a complete, registered class whose body imports
* the default libraries plus whatever it declared in its Libraries metadata.
**************************************************/
import { BaseRemotableOperation } from "@memberjunction/core";
// ============================================================
// AISkill.ExportMarkdown — Export AI Skill Markdown
// ============================================================
/**
 * Export AI Skill Markdown
 * Exports an MJ: AI Skills record to the portable SKILL.md format (frontmatter + Instructions body). Bundled Action/sub-agent IDs are resolved to their current Names for cross-instance portability. Implemented by AISkillExportMarkdownServerOperation in @memberjunction/ai-agents.
 * GenerationType=Manual — the server body is supplied by a hand-authored subclass registered
 * under 'AISkill.ExportMarkdown'. This generated base provides the typed contract only (client-safe).
 */
export class AISkillExportMarkdownOperation extends BaseRemotableOperation {
    constructor() {
        super(...arguments);
        this.OperationKey = "AISkill.ExportMarkdown";
        this.ExecutionMode = 'Sync';
        this.RequiredScope = "aiskill:manage";
        this.RequiresSystemUser = false;
    }
}
// ============================================================
// AISkill.ImportMarkdown — Import AI Skill Markdown
// ============================================================
/**
 * Import AI Skill Markdown
 * Imports a SKILL.md document, resolving Action/sub-agent names against this instance's catalog (unresolvable names become non-fatal warnings), and creates or updates the MJ: AI Skills record plus its Action/sub-agent bundling junction rows. Implemented by AISkillImportMarkdownServerOperation in @memberjunction/ai-agents.
 * GenerationType=Manual — the server body is supplied by a hand-authored subclass registered
 * under 'AISkill.ImportMarkdown'. This generated base provides the typed contract only (client-safe).
 */
export class AISkillImportMarkdownOperation extends BaseRemotableOperation {
    constructor() {
        super(...arguments);
        this.OperationKey = "AISkill.ImportMarkdown";
        this.ExecutionMode = 'Sync';
        this.RequiredScope = "aiskill:manage";
        this.RequiresSystemUser = false;
    }
}
// ============================================================
// PredictiveStudio.ControlExperimentSession — Control Experiment Session
// ============================================================
/**
 * Control Experiment Session
 * Pause, resume, or cancel an MJ: Experiment Sessions run (honored at the next wave checkpoint). Returns the session's status after the control action. A quick lifecycle transition over the experiment orchestrator's session state.
 * GenerationType=Manual — the server body is supplied by a hand-authored subclass registered
 * under 'PredictiveStudio.ControlExperimentSession'. This generated base provides the typed contract only (client-safe).
 */
export class PredictiveStudioControlExperimentSessionOperation extends BaseRemotableOperation {
    constructor() {
        super(...arguments);
        this.OperationKey = "PredictiveStudio.ControlExperimentSession";
        this.ExecutionMode = 'Sync';
        this.RequiredScope = "predictive:execute";
        this.RequiresSystemUser = false;
    }
}
// ============================================================
// PredictiveStudio.CreateScoringProcess — Create Scoring Process
// ============================================================
/**
 * Create Scoring Process
 * Create an on-demand WorkType='ML Model' MJ: Record Processes row that scores a target entity's records with a trained MJ: ML Models (no schedule). The scope selects records (a saved view / a list / an entity filter / the whole entity). When outputField is supplied, the run writes the prediction into that column and a MJ: ML Model Scoring Bindings lineage row (Mode='OnDemand') is created; when omitted, output is generic (run history only) with no binding. Returns the new Record Process id, whether a write-back column was configured, and the scoring binding id (when created). The created row is then run-now via the Run Record Process operation or scheduled via the generic scheduling dialog. Delegates to createScoringProcess in @memberjunction/predictive-studio-engine.
 * GenerationType=Manual — the server body is supplied by a hand-authored subclass registered
 * under 'PredictiveStudio.CreateScoringProcess'. This generated base provides the typed contract only (client-safe).
 */
export class PredictiveStudioCreateScoringProcessOperation extends BaseRemotableOperation {
    constructor() {
        super(...arguments);
        this.OperationKey = "PredictiveStudio.CreateScoringProcess";
        this.ExecutionMode = 'Sync';
        this.RequiredScope = "predictive:execute";
        this.RequiresSystemUser = false;
    }
}
// ============================================================
// PredictiveStudio.PromoteModel — Promote ML Model
// ============================================================
/**
 * Promote ML Model
 * Transition an MJ: ML Models row through its lifecycle (Validated / Published / Archived). Enforces the leakage sign-off gate — a model flagged for possible target leakage cannot be promoted unless signOff=true. Lifecycle-only: never edits metrics or artifact, only Status. Returns whether the model was promoted and its new status. Delegates to the ProductionModelPromotionGate in @memberjunction/predictive-studio-engine.
 * GenerationType=Manual — the server body is supplied by a hand-authored subclass registered
 * under 'PredictiveStudio.PromoteModel'. This generated base provides the typed contract only (client-safe).
 */
export class PredictiveStudioPromoteModelOperation extends BaseRemotableOperation {
    constructor() {
        super(...arguments);
        this.OperationKey = "PredictiveStudio.PromoteModel";
        this.ExecutionMode = 'Sync';
        this.RequiredScope = "predictive:execute";
        this.RequiresSystemUser = false;
    }
}
// ============================================================
// PredictiveStudio.RunFeaturePipeline — Run Feature Pipeline
// ============================================================
/**
 * Run Feature Pipeline
 * Run a Feature Pipeline — a categorized MJ: Record Processes row — over an optional runtime scope (selected records / view / list / filter), optionally as a dry-run preview that computes feature values without writing. Returns processed/written/skipped/error counts plus the MJ: Process Runs id. Runs the underlying Record Process (no dedicated entity); delegates to the Record Process substrate.
 * GenerationType=Manual — the server body is supplied by a hand-authored subclass registered
 * under 'PredictiveStudio.RunFeaturePipeline'. This generated base provides the typed contract only (client-safe).
 */
export class PredictiveStudioRunFeaturePipelineOperation extends BaseRemotableOperation {
    constructor() {
        super(...arguments);
        this.OperationKey = "PredictiveStudio.RunFeaturePipeline";
        this.ExecutionMode = 'LongRunning';
        this.RequiredScope = "predictive:execute";
        this.RequiresSystemUser = false;
    }
}
// ============================================================
// PredictiveStudio.ScoreRecordSet — Score Record Set
// ============================================================
/**
 * Score Record Set
 * Score a set of records with a trained MJ: ML Models row. The scope selects records (explicit ids / a saved view / a list / an entity+filter / a single record). Optionally a dry-run preview, or a write-back to the target. Returns scored/failed/skipped counts plus either the ephemeral predictions or write-back confirmation. Delegates to the MLModelInferenceProcessor scoring work type in @memberjunction/predictive-studio-engine.
 * GenerationType=Manual — the server body is supplied by a hand-authored subclass registered
 * under 'PredictiveStudio.ScoreRecordSet'. This generated base provides the typed contract only (client-safe).
 */
export class PredictiveStudioScoreRecordSetOperation extends BaseRemotableOperation {
    constructor() {
        super(...arguments);
        this.OperationKey = "PredictiveStudio.ScoreRecordSet";
        this.ExecutionMode = 'LongRunning';
        this.RequiredScope = "predictive:execute";
        this.RequiresSystemUser = false;
    }
}
// ============================================================
// PredictiveStudio.StartExperimentSession — Start Experiment Session
// ============================================================
/**
 * Start Experiment Session
 * Start an experiment session from an approved ModelingPlanSpec — running its proposed experiments in waves under a Budget, maintaining a leaderboard. Optionally attaches to an existing MJ: Experiments definition or creates a new one. Returns the session id, experiment id, and initial status. Delegates to ExperimentOrchestrator.runSession in @memberjunction/predictive-studio-engine.
 * GenerationType=Manual — the server body is supplied by a hand-authored subclass registered
 * under 'PredictiveStudio.StartExperimentSession'. This generated base provides the typed contract only (client-safe).
 */
export class PredictiveStudioStartExperimentSessionOperation extends BaseRemotableOperation {
    constructor() {
        super(...arguments);
        this.OperationKey = "PredictiveStudio.StartExperimentSession";
        this.ExecutionMode = 'LongRunning';
        this.RequiredScope = "predictive:execute";
        this.RequiresSystemUser = false;
    }
}
// ============================================================
// PredictiveStudio.TrainModel — Train ML Model
// ============================================================
/**
 * Train ML Model
 * Train a predictive model from an MJ: ML Training Pipelines definition. Carves a locked holdout (point-in-time/as-of aware), trains via the sidecar, persists an immutable Draft MJ: ML Models row, and flags single-feature dominance (possible target leakage). Returns the new model id, its honest holdout metrics, the leakage flag, and the model version. Delegates to TrainingEngine.trainModel in @memberjunction/predictive-studio-engine.
 * GenerationType=Manual — the server body is supplied by a hand-authored subclass registered
 * under 'PredictiveStudio.TrainModel'. This generated base provides the typed contract only (client-safe).
 */
export class PredictiveStudioTrainModelOperation extends BaseRemotableOperation {
    constructor() {
        super(...arguments);
        this.OperationKey = "PredictiveStudio.TrainModel";
        this.ExecutionMode = 'LongRunning';
        this.RequiredScope = "predictive:execute";
        this.RequiresSystemUser = false;
    }
}
// ============================================================
// RecordComparison.Compare — Compare Records
// ============================================================
/**
 * Compare Records
 * Load a set of an entity's records (by composite key, column 0 = survivor/reference) and compute the field-level delta matrix between them. Read-only. Returns the loaded records + per-field deltas. Implemented by RecordComparisonCompareServerOperation in @memberjunction/record-comparison.
 * GenerationType=Manual — the server body is supplied by a hand-authored subclass registered
 * under 'RecordComparison.Compare'. This generated base provides the typed contract only (client-safe).
 */
export class RecordComparisonCompareOperation extends BaseRemotableOperation {
    constructor() {
        super(...arguments);
        this.OperationKey = "RecordComparison.Compare";
        this.ExecutionMode = 'Sync';
        this.RequiresSystemUser = false;
    }
}
// ============================================================
// RecordProcess.CancelRun — Cancel Record Process Run
// ============================================================
/**
 * Cancel Record Process Run
 * Request cancellation of a running Record Process (honored at the next checkpoint). Returns the run's status. Implemented by RecordProcessCancelRunOperation in @memberjunction/record-set-processor.
 * GenerationType=Manual — the server body is supplied by a hand-authored subclass registered
 * under 'RecordProcess.CancelRun'. This generated base provides the typed contract only (client-safe).
 */
export class RecordProcessCancelRunOperation extends BaseRemotableOperation {
    constructor() {
        super(...arguments);
        this.OperationKey = "RecordProcess.CancelRun";
        this.ExecutionMode = 'Sync';
        this.RequiredScope = "recordprocess:execute";
        this.RequiresSystemUser = false;
    }
}
// ============================================================
// RecordProcess.GetRunStatus — Get Record Process Run Status
// ============================================================
/**
 * Get Record Process Run Status
 * Return a snapshot of a Record Process run's progress (status + processed/total/success/error/skipped counts) by ProcessRunID. Implemented by RecordProcessGetRunStatusOperation in @memberjunction/record-set-processor.
 * GenerationType=Manual — the server body is supplied by a hand-authored subclass registered
 * under 'RecordProcess.GetRunStatus'. This generated base provides the typed contract only (client-safe).
 */
export class RecordProcessGetRunStatusOperation extends BaseRemotableOperation {
    constructor() {
        super(...arguments);
        this.OperationKey = "RecordProcess.GetRunStatus";
        this.ExecutionMode = 'Sync';
        this.RequiredScope = "recordprocess:execute";
        this.RequiresSystemUser = false;
    }
}
// ============================================================
// RecordProcess.PauseRun — Pause Record Process Run
// ============================================================
/**
 * Pause Record Process Run
 * Request a graceful pause of a running Record Process (honored at the next checkpoint). Returns the run's status. Implemented by RecordProcessPauseRunOperation in @memberjunction/record-set-processor.
 * GenerationType=Manual — the server body is supplied by a hand-authored subclass registered
 * under 'RecordProcess.PauseRun'. This generated base provides the typed contract only (client-safe).
 */
export class RecordProcessPauseRunOperation extends BaseRemotableOperation {
    constructor() {
        super(...arguments);
        this.OperationKey = "RecordProcess.PauseRun";
        this.ExecutionMode = 'Sync';
        this.RequiredScope = "recordprocess:execute";
        this.RequiresSystemUser = false;
    }
}
// ============================================================
// RecordProcess.ResumeRun — Resume Record Process Run
// ============================================================
/**
 * Resume Record Process Run
 * Resume a paused Record Process run. Returns the run's status. Implemented by RecordProcessResumeRunOperation in @memberjunction/record-set-processor.
 * GenerationType=Manual — the server body is supplied by a hand-authored subclass registered
 * under 'RecordProcess.ResumeRun'. This generated base provides the typed contract only (client-safe).
 */
export class RecordProcessResumeRunOperation extends BaseRemotableOperation {
    constructor() {
        super(...arguments);
        this.OperationKey = "RecordProcess.ResumeRun";
        this.ExecutionMode = 'Sync';
        this.RequiredScope = "recordprocess:execute";
        this.RequiresSystemUser = false;
    }
}
// ============================================================
// RecordProcess.RunNow — Run Record Process
// ============================================================
/**
 * Run Record Process
 * Run a Record Process on demand over an optional runtime scope (selected records / view / list / filter), optionally as a dry-run preview that computes the per-record changes without writing. Returns the run summary (status + processed/success/error/skipped counts + the MJ: Process Runs ID). Implemented by RecordProcessRunNowServerOperation in @memberjunction/record-set-processor.
 * GenerationType=Manual — the server body is supplied by a hand-authored subclass registered
 * under 'RecordProcess.RunNow'. This generated base provides the typed contract only (client-safe).
 */
export class RecordProcessRunNowOperation extends BaseRemotableOperation {
    constructor() {
        super(...arguments);
        this.OperationKey = "RecordProcess.RunNow";
        this.ExecutionMode = 'LongRunning';
        this.RequiredScope = "recordprocess:execute";
        this.RequiresSystemUser = false;
    }
}
// ============================================================
// Template.Run — Run Template
// ============================================================
/**
 * Run Template
 * Render a template by ID with optional render data. Returns the rendered output + wall-clock render time. Implemented by TemplateRunServerOperation in @memberjunction/templates.
 * GenerationType=Manual — the server body is supplied by a hand-authored subclass registered
 * under 'Template.Run'. This generated base provides the typed contract only (client-safe).
 */
export class TemplateRunOperation extends BaseRemotableOperation {
    constructor() {
        super(...arguments);
        this.OperationKey = "Template.Run";
        this.ExecutionMode = 'Sync';
        this.RequiredScope = "template:execute";
        this.RequiresSystemUser = false;
    }
}
//# sourceMappingURL=remote_operations.js.map