/** * ComplexityScore Value Object * * Represents the complexity score of a task (1-10 scale) * * @see REQ-SDD-001 - Task Complexity Evaluation * @see DES-SDD-001 - ComplexityAnalyzer */ import type { ComplexityFactor } from './ComplexityFactor.js'; /** * Immutable complexity score value object */ export interface ComplexityScore { /** Complexity score value (1-10) */ readonly value: number; /** Breakdown of complexity factors */ readonly factors: readonly ComplexityFactor[]; /** Threshold for decomposition recommendation */ readonly threshold: number; } /** * Create a ComplexityScore value object * * @param value - Score value (1-10) * @param factors - Complexity factors breakdown * @param threshold - Decomposition threshold (default: 7) * @returns ComplexityScore or error */ export declare function createComplexityScore(value: number, factors: ComplexityFactor[], threshold?: number): ComplexityScore; /** * Check if task should be decomposed based on complexity score * * @param score - Complexity score to evaluate * @returns true if score >= threshold */ export declare function shouldDecompose(score: ComplexityScore): boolean; /** * Get complexity level label * * @param score - Complexity score * @returns Human-readable complexity level */ export declare function getComplexityLevel(score: ComplexityScore): 'low' | 'medium' | 'high' | 'critical'; //# sourceMappingURL=ComplexityScore.d.ts.map