import type { SymbolKind } from "../types.js";
export interface ComplexityInfo {
    name: string;
    kind: SymbolKind;
    file: string;
    start_line: number;
    end_line: number;
    lines: number;
    cyclomatic_complexity: number;
    max_nesting_depth: number;
    branches: number;
    hook_count?: number;
    state_count?: number;
    effect_count?: number;
    jsx_depth?: number;
}
export interface ComplexityResult {
    functions: ComplexityInfo[];
    summary: {
        total_functions: number;
        avg_complexity: number;
        avg_lines: number;
        max_complexity: number;
        max_nesting: number;
        above_threshold: number;
    };
}
/**
 * Analyze complexity of functions in a repository.
 * Returns top N most complex functions sorted by cyclomatic complexity.
 */
export declare function analyzeComplexity(repo: string, options?: {
    file_pattern?: string | undefined;
    top_n?: number | undefined;
    min_complexity?: number | undefined;
    include_tests?: boolean | undefined;
}): Promise<ComplexityResult>;
//# sourceMappingURL=complexity-tools.d.ts.map