import { FunctionInfo, Parameter } from '../types/analysis';
export interface SignatureChange {
    function: FunctionInfo;
    changeType: 'parameter-added' | 'parameter-removed' | 'type-changed' | 'signature-restructured';
    breakingCalls: BreakingCall[];
    confidence: number;
    severity: 'error' | 'warning';
    aiPatterns: string[];
}
export interface SignatureAnalysis {
    isLikelyChanged: boolean;
    changeType: 'parameter-added' | 'parameter-removed' | 'type-changed' | 'signature-restructured';
    confidence: number;
    aiPatterns: string[];
    reasoning: string[];
}
export interface BreakingCall {
    filePath: string;
    line: number;
    column: number;
    context: string;
    expectedArgs: number;
    providedArgs: number;
    missingParams: Parameter[];
    typeIssues: TypeIssue[];
}
export interface TypeIssue {
    parameterName: string;
    expectedType: string;
    providedType: string;
    severity: 'error' | 'warning';
}
export declare class EnhancedSignatureDetector {
    private parser;
    constructor();
    detectSignatureChanges(currentFunctions: FunctionInfo[], allFiles: string[]): Promise<SignatureChange[]>;
    private analyzeSignaturePattern;
    private determineChangeType;
    private findCallSitesWithTreeSitter;
    private validateCallCompatibility;
    private analyzeTypeCompatibility;
    private hasTypeIncompatibility;
    private inferArgType;
    private determineSeverity;
}
//# sourceMappingURL=enhanced-signature-detector.d.ts.map