/** * Intelligent Cycle Interfaces * SOLID Principles: Interface Segregation */ export interface SemanticDeduplicationResult { hasDuplicates: boolean; existingImplementations: ExistingImplementation[]; semanticSimilarity: number; recommendations: string[]; shouldProceed: boolean; } export interface ExistingImplementation { file: string; function?: string; class?: string; similarity: number; description: string; codeSnippet: string; lineRange: { start: number; end: number; }; } export interface IntentAnalysisResult { intendedFunctionality: string; detectedPatterns: string[]; suggestedNames: string[]; architecturalConcerns: string[]; bestPractices: string[]; } export interface SmartSecurityResult { vulnerabilities: SecurityVulnerability[]; patterns: SecurityPattern[]; recommendations: string[]; riskLevel: 'low' | 'medium' | 'high' | 'critical'; } export interface SecurityVulnerability { type: string; severity: 'low' | 'medium' | 'high' | 'critical'; description: string; file: string; line?: number; suggestion: string; example?: string; } export interface SecurityPattern { pattern: string; description: string; recommendation: string; } export interface ISemanticDeduplicationService { checkSemanticDuplication(functionality: string, userIntent: string, projectPath: string, cacheKey?: string): Promise; } export interface IIntentAnalysisService { analyzeUserIntent(userIntent: string): Promise; detectPatterns(functionality: string, projectPath: string): Promise; } export interface ISimilarityMatchingService { findVectorSimilarityMatches(functionality: string): Promise; findRelationshipMatches(functionality: string): Promise; findSemanticMatches(functionality: string, projectPath: string): Promise; } export interface ISecurityScanningService { performSmartSecurity(functionality: string, userIntent: string, projectPath: string): Promise; scanForVulnerabilities(projectPath: string): Promise; } export interface ICodeExtractionService { extractCodeSnippet(filePath: string, functionName?: string, className?: string, lineRange?: { start: number; end: number; }): Promise; } //# sourceMappingURL=interfaces.d.ts.map