UNPKG

@rayburst/sharity

Version:

Analyze shared package usage across monorepos - calculate symbol sharing percentages, track exclusive imports, and identify unused exports

45 lines 1.64 kB
/** * Line counter - calculate lines of code for symbols and packages */ import { ExportedSymbol, SymbolAnalysis } from './types'; /** * Calculate total lines for a set of symbols */ export declare function calculateTotalLines(symbols: ExportedSymbol[]): number; /** * Calculate lines breakdown by usage type */ export declare function calculateLinesBreakdown(analyses: SymbolAnalysis[]): { sharedLines: number; exclusiveLines: number; unusedLines: number; }; /** * Calculate lines for symbols used exclusively by a consumer */ export declare function calculateExclusiveLinesForConsumer(analyses: SymbolAnalysis[], consumerName: string): number; /** * Get exclusive symbol names for a consumer */ export declare function getExclusiveSymbolNames(analyses: SymbolAnalysis[], consumerName: string): string[]; /** * Count total symbols imported by a consumer */ export declare function countSymbolsForConsumer(analyses: SymbolAnalysis[], consumerName: string): number; /** * Count exclusive symbols for a consumer */ export declare function countExclusiveSymbolsForConsumer(analyses: SymbolAnalysis[], consumerName: string): number; /** * Count shared symbols for a consumer */ export declare function countSharedSymbolsForConsumer(analyses: SymbolAnalysis[], consumerName: string): number; /** * Calculate percentage safely (avoid division by zero) */ export declare function calculatePercentage(part: number, total: number): number; /** * Count lines in a file, excluding empty lines and comments */ export declare function countCodeLines(filePath: string): number; //# sourceMappingURL=line-counter.d.ts.map