/**
 * types/workflowTypes.ts
 * Core type definitions for the Workflow Engine
 *
 * Testing Phase: Focuses on original output + evaluation metrics for AB testing
 */
import { AIProviderName } from "../constants/enums.js";
/**
 * Workflow execution error class
 */
export class WorkflowError extends Error {
    details;
    constructor(message, details) {
        super(message);
        this.name = "WorkflowError";
        this.details = details;
        // Maintain proper stack trace for V8 engines
        if ("captureStackTrace" in Error &&
            typeof Error.captureStackTrace === "function") {
            Error.captureStackTrace(this, WorkflowError);
        }
    }
}
// ============================================================================
// TYPE ALIASES FOR BACKWARD COMPATIBILITY (internal to workflow module only)
// ============================================================================
// Note: ModelConfig and EvaluationData aliases are NOT exported from this file
// to avoid conflicts with modelTypes.ModelConfig and evaluation.EvaluationData.
// Use WorkflowModelConfig and WorkflowEvaluationData when importing from this file.
// The workflow/types.ts re-exports these aliases for backward compatibility
// within the workflow module only.
//# sourceMappingURL=workflowTypes.js.map