/** * File Significance Scorer * * Ranks files by their likely importance to understanding system architecture. * This determines what gets sent to the LLM and what gets skipped. * * Scoring algorithm: 0-100 points per file * - Name-based scoring: 0-30 points * - Path-based scoring: 0-25 points * - Structure-based scoring: 0-25 points * - Connectivity scoring: 0-20 points */ import type { FileMetadata, ScoredFile } from '../../types/index.js'; /** * Configuration for custom scoring rules */ export interface ScoringConfig { /** Custom high-value name patterns with scores */ highValueNames?: Record; /** Custom negative name patterns with scores */ negativeNames?: Record; /** Custom high-value path patterns with scores */ highValuePaths?: Record; /** Minimum score to include in results */ minScore?: number; } /** * Import/export relationship for connectivity scoring */ export interface FileRelationship { filePath: string; imports: string[]; importedBy: string[]; } /** * Build file relationships from import analysis */ export declare function buildFileRelationships(files: FileMetadata[]): Map; /** * File Significance Scorer */ export declare class SignificanceScorer { private config; private relationships; constructor(config?: ScoringConfig); /** * Set file relationships for connectivity scoring */ setRelationships(relationships: Map): void; /** * Score a single file */ scoreFile(file: FileMetadata): Promise; /** * Score all files */ scoreFiles(files: FileMetadata[]): Promise; } /** * Get top N files by score */ export declare function getTopFiles(files: ScoredFile[], n: number): ScoredFile[]; /** * Get files matching a specific tag */ export declare function getFilesByTag(files: ScoredFile[], tag: string): ScoredFile[]; /** * Get files with score above threshold */ export declare function getFilesAboveThreshold(files: ScoredFile[], threshold: number): ScoredFile[]; /** * Group files by tag */ export declare function groupFilesByTag(files: ScoredFile[]): Map; /** * Convenience function to score files */ export declare function scoreFiles(files: FileMetadata[], config?: ScoringConfig): Promise; //# sourceMappingURL=significance-scorer.d.ts.map