sicua
Version:
A tool for analyzing project structure and dependencies
36 lines (35 loc) • 1.48 kB
TypeScript
/**
* Utility for calculating aggregated metrics from individual file analysis
*/
import { LineMetrics, CodeMetrics, MagicNumber } from "../types/generalAnalyzer.types";
/**
* Aggregates line metrics from multiple files
* @param fileMetrics Array of line metrics from individual files
* @returns Aggregated line metrics
*/
export declare function aggregateLineMetrics(fileMetrics: LineMetrics[]): LineMetrics;
/**
* Calculates the code-to-comment ratio from aggregated metrics
* @param lineMetrics The aggregated line metrics
* @returns The ratio of code lines to comment lines
*/
export declare function calculateCodeToCommentRatio(lineMetrics: LineMetrics): number;
/**
* Aggregates magic numbers from multiple files
* @param fileMagicNumbers Array of magic number arrays from individual files
* @returns Flattened array of all magic numbers
*/
export declare function aggregateMagicNumbers(fileMagicNumbers: MagicNumber[][]): MagicNumber[];
/**
* Builds the complete code metrics object
* @param lineMetrics Aggregated line metrics
* @param magicNumbers All detected magic numbers
* @returns Complete code metrics object
*/
export declare function buildCodeMetrics(lineMetrics: LineMetrics, magicNumbers: MagicNumber[]): CodeMetrics;
/**
* Validates that line metrics are consistent
* @param lineMetrics The line metrics to validate
* @returns True if metrics are valid
*/
export declare function validateLineMetrics(lineMetrics: LineMetrics): boolean;