/**
 * Inconsistency Detector
 *
 * Finds inconsistencies, duplicates, ownership gaps,
 * and generates questions for CTO/PO.
 *
 * Enhanced with:
 * - Severity categorization (P0-P3)
 * - Broken link detection
 * - Spec-code gap detection
 * - Orphaned document detection
 */
import type { RepoAnalysis, DetectedIssue, TechDebtItem, LLMProvider, ProgressCallback } from './types.js';
import type { OrganizationSynthesisResult } from './organization-synthesizer.js';
export type IssueSeverity = 'P0' | 'P1' | 'P2' | 'P3';
export interface EnhancedIssue extends DetectedIssue {
    priority: IssueSeverity;
    remediation: string[];
    category: 'inconsistency' | 'duplicate' | 'ownership' | 'broken-link' | 'spec-gap' | 'orphaned';
}
export interface InconsistencyResult {
    issues: DetectedIssue[];
    enhancedIssues: EnhancedIssue[];
    techDebt: TechDebtItem[];
    questionsForCTO: string[];
    questionsForPO: string[];
    byPriority: Map<IssueSeverity, EnhancedIssue[]>;
    brokenLinks: BrokenLink[];
    specCodeGaps: SpecCodeGap[];
    orphanedDocs: string[];
}
export interface BrokenLink {
    file: string;
    line: number;
    link: string;
    reason: string;
}
export interface SpecCodeGap {
    specId: string;
    specFile: string;
    type: 'ghost_completion' | 'missing_impl' | 'outdated_spec';
    confidence: number;
    details: string;
}
export declare function detectInconsistencies(repoAnalyses: Map<string, RepoAnalysis>, orgResult: OrganizationSynthesisResult, llmProvider: LLMProvider | null, onProgress: ProgressCallback, log: (msg: string) => void, projectPath?: string): Promise<InconsistencyResult>;
export declare function saveReviewNeeded(projectPath: string, result: InconsistencyResult): Promise<string[]>;
//# sourceMappingURL=inconsistency-detector.d.ts.map