import { DiffOperation } from '../types/workflow-diff.js'; export declare enum IntentClassification { ADD_FUNCTIONALITY = "add_functionality", MODIFY_CONFIGURATION = "modify_configuration", REWIRE_LOGIC = "rewire_logic", FIX_VALIDATION = "fix_validation", CLEANUP = "cleanup", UNKNOWN = "unknown" } export declare enum MutationToolName { UPDATE_PARTIAL = "n8n_update_partial_workflow", UPDATE_FULL = "n8n_update_full_workflow" } export interface ValidationResult { valid: boolean; errors: Array<{ type: string; message: string; severity?: string; location?: string; }>; warnings?: Array<{ type: string; message: string; }>; } export interface MutationChangeMetrics { nodesAdded: number; nodesRemoved: number; nodesModified: number; connectionsAdded: number; connectionsRemoved: number; propertiesChanged: number; } export interface MutationValidationMetrics { validationImproved: boolean | null; errorsResolved: number; errorsIntroduced: number; } export interface WorkflowMutationData { sessionId: string; toolName: MutationToolName; userIntent: string; operations: DiffOperation[]; workflowBefore: any; workflowAfter: any; validationBefore?: ValidationResult; validationAfter?: ValidationResult; mutationSuccess: boolean; mutationError?: string; durationMs: number; } export interface WorkflowMutationRecord { id?: string; userId: string; sessionId: string; workflowBefore: any; workflowAfter: any; workflowHashBefore: string; workflowHashAfter: string; workflowStructureHashBefore?: string; workflowStructureHashAfter?: string; isTrulySuccessful?: boolean; userIntent: string; intentClassification: IntentClassification; toolName: MutationToolName; operations: DiffOperation[]; operationCount: number; operationTypes: string[]; validationBefore?: ValidationResult; validationAfter?: ValidationResult; validationImproved: boolean | null; errorsResolved: number; errorsIntroduced: number; nodesAdded: number; nodesRemoved: number; nodesModified: number; connectionsAdded: number; connectionsRemoved: number; propertiesChanged: number; mutationSuccess: boolean; mutationError?: string; durationMs: number; createdAt?: Date; } export interface MutationTrackingOptions { enabled?: boolean; maxWorkflowSizeKb?: number; validateQuality?: boolean; sanitize?: boolean; } export interface MutationTrackingStats { totalMutationsTracked: number; successfulMutations: number; failedMutations: number; mutationsWithValidationImprovement: number; averageDurationMs: number; intentClassificationBreakdown: Record; operationTypeBreakdown: Record; } export interface MutationDataQualityResult { valid: boolean; errors: string[]; warnings: string[]; } //# sourceMappingURL=mutation-types.d.ts.map