/** * Self-Healing Engine * * Main orchestration for self-healing functionality. * Coordinates selector healing, assertion healing, and AI assistance. */ import type { SelfHealingConfig, SelfHealingSession, TestFailureContext, AiHealingSuggestion } from './types.js'; /** * Self-Healing Engine class */ export declare class SelfHealingEngine { private config; private selectorHealer; private assertionHealer; private currentSession?; constructor(config: SelfHealingConfig); /** * Start a new self-healing session */ startSession(): string; /** * End current session and return results */ endSession(): SelfHealingSession | null; /** * Attempt to heal a test failure */ healFailure(context: TestFailureContext): Promise; /** * Heal a UI test failure (selector issues) */ private healUiFailure; /** * Heal an API test failure */ private healApiFailure; /** * Heal a generic test failure */ private healGenericFailure; /** * Try AI-assisted healing */ private tryAiHealing; /** * Build AI prompt from failure context */ private buildAiPrompt; /** * Extract code from AI response */ private extractCodeFromAiResponse; /** * Extract explanation from AI response */ private extractExplanationFromAiResponse; /** * Analyze API failure */ private analyzeApiFailure; /** * Detect API change type from context */ private detectApiChangeType; /** * Extract selector from error message */ private extractSelector; /** * Extract expected text from error message */ private extractExpectedText; /** * Infer selector error type from message */ private inferSelectorErrorType; /** * Extract line number from stack trace */ private extractLineNumber; /** * Format selector heal result */ private formatSelectorHeal; /** * Calculate session summary */ private calculateSummary; /** * Generate unique session ID */ private generateSessionId; /** * Get current session */ getSession(): SelfHealingSession | undefined; /** * Update configuration */ updateConfig(updates: Partial): void; /** * Check if self-healing is enabled */ isEnabled(): boolean; /** * Get confidence threshold */ getConfidenceThreshold(): number; } /** * Self-healing result */ export interface SelfHealingResult { success: boolean; healed: boolean; suggestion: AiHealingSuggestion | null; reason: string; } /** * Create a self-healing engine with default config */ export declare function createSelfHealingEngine(config?: Partial): SelfHealingEngine;