UNPKG

git-kloc-analyzer

Version:

A powerful TypeScript tool for analyzing KLOC (Kilo Lines of Code) statistics from Git repositories with email-based contributor grouping

67 lines 2.34 kB
/** * Utility functions for Git KLOC Statistics Tool */ import { ContributorStats, AnalysisSummary } from './types'; /** * Formats a number with thousand separators * @param num - Number to format * @returns Formatted string with commas as thousand separators */ export declare function formatNumber(num: number): string; /** * Escapes special characters in CSV fields * @param field - Field value to escape * @returns Escaped field value */ export declare function escapeCsvField(field: string): string; /** * Validates date format (YYYY-MM-DD) * @param date - Date string to validate * @returns True if date format is valid */ export declare function validateDateFormat(date: string): boolean; /** * Validates date range (from <= to) * @param fromDate - Start date * @param toDate - End date * @returns True if date range is valid */ export declare function validateDateRange(fromDate: string, toDate: string): boolean; /** * Calculates summary statistics from contributor stats * @param stats - Array of contributor statistics * @param executionTime - Analysis execution time in seconds * @returns Summary statistics */ export declare function calculateSummary(stats: ContributorStats[], executionTime: number): AnalysisSummary; /** * Sorts contributor stats by KLOC in descending order * @param stats - Array of contributor statistics * @returns Sorted array */ export declare function sortStatsByKloc(stats: ContributorStats[]): ContributorStats[]; /** * Filters stats by minimum KLOC threshold * @param stats - Array of contributor statistics * @param minKloc - Minimum KLOC threshold * @returns Filtered array */ export declare function filterStatsByMinKloc(stats: ContributorStats[], minKloc: number): ContributorStats[]; /** * Gets current date in YYYY-MM-DD format * @returns Current date string */ export declare function getCurrentDate(): string; /** * Converts seconds to human-readable duration * @param seconds - Duration in seconds * @returns Human-readable duration string */ export declare function formatDuration(seconds: number): string; /** * Validates repository path * @param repoPath - Path to validate * @returns True if path exists and is a git repository */ export declare function validateRepositoryPath(repoPath: string): boolean; //# sourceMappingURL=utils.d.ts.map