import type { ComplexitySignals, NormalisedSignals, PartialSignals } from '../../types/index.js';
/**
 * Extract complexity signals from a text description (spec content or task description).
 * Missing signals are filled with sensible defaults.
 */
export declare function extractSignals(text: string, overrides?: PartialSignals): ComplexitySignals;
/** Build signals entirely from an explicit partial object (no text analysis). */
export declare function buildSignalsFromPartial(partial: PartialSignals): ComplexitySignals;
/** Normalise raw numeric signals to the 0-1 range. */
export declare function normaliseSignals(raw: {
    criteriaCount: number;
    fileCount: number;
    dependencyDepth: number;
    crossLayerCount: number;
    estimatedHours: number;
    hasNewTypes: boolean;
    hasDBChanges: boolean;
    hasSecurityImplications: boolean;
    isReadOnly: boolean;
}): NormalisedSignals;
/**
 * Compute a weighted overall complexity score (0-1) from normalised signals.
 * Higher = more complex.
 */
export declare function computeOverallScore(n: NormalisedSignals): number;
//# sourceMappingURL=complexity-analyzer.d.ts.map