/** * Effort Estimation * * Pure function to estimate effort level from raw signals. * Score-based: each signal contributes points, thresholds map to effort levels. */ import type { Effort, EffortSignals, EffortWeights } from './types.js'; /** * Default weights for effort estimation. */ export declare const DEFAULT_WEIGHTS: EffortWeights; /** * Ordered effort levels for ordinal comparison. * Index 0 = lowest, index 4 = highest. */ export declare const EFFORT_ORDER: readonly Effort[]; /** * Estimate effort level from raw signals. * * Score formula: * fileCount * fileCountMultiplier * + min(linesChanged / linesPerPoint, 10) * + toolCallCount * toolCallWeight * + (durationMs / 60000) / minutesPerPoint * + complexity bonuses: newFiles(+5), multiLang(+3), tests(+5), config(+2) * * Thresholds: * < 5 = trivial, < 15 = low, < 40 = medium, < 100 = high, else = significant */ export declare function estimateEffort(signals: EffortSignals, weights?: Partial): Effort;