export interface CodeGene { trait: string; value: number; samples: number; category: GeneCategory; } export type GeneCategory = 'formatting' | 'naming' | 'structure' | 'complexity' | 'documentation' | 'error-handling' | 'testing' | 'imports' | 'typing' | 'async-patterns' | 'functional' | 'oop'; export interface DNAProfile { id: string; name: string; createdAt: number; updatedAt: number; genes: Map; fingerprint: string; fileCount: number; totalLines: number; language: string; similarity: number; } export interface DNAComparison { similarity: number; matchingGenes: string[]; divergingGenes: Array<{ gene: string; profileA: number; profileB: number; delta: number; }>; verdict: 'same-team' | 'similar-style' | 'different-style' | 'inconsistent'; } export interface StyleConsistencyReport { overall: number; fileScores: Array<{ file: string; score: number; violations: string[]; }>; topViolations: Array<{ gene: string; expected: number; actual: number; files: string[]; }>; recommendations: string[]; } export interface CodeDNAStats { profiles: number; totalGenes: number; avgConsistency: number; dominantStyle: Record; language: string; } export declare class CodeDNA { private profiles; private projectDir; constructor(projectDir: string); buildProfile(name?: string, dir?: string): Promise; analyzeFile(filePath: string, content: string): Map; compare(profileA: DNAProfile, profileB: DNAProfile): DNAComparison; compareFileToProfile(filePath: string, content: string, profileId: string): DNAComparison | null; checkConsistency(dir?: string): Promise; private generateRecommendations; private calculateConsistency; private collectSourceFiles; private detectLanguage; getProfile(id: string): DNAProfile | undefined; getAllProfiles(): DNAProfile[]; stats(): CodeDNAStats; } //# sourceMappingURL=code-dna.d.ts.map