export interface CodeChunk { content: string; metadata: ChunkMetadata; } export interface ChunkMetadata { file: string; startLine: number; endLine: number; type: 'function' | 'class' | 'block' | 'template' | 'doc' | 'config'; language: string; symbols?: { functions: string[]; classes: string[]; interfaces: string[]; }; symbolName?: string; symbolType?: 'function' | 'method' | 'class' | 'interface' | 'schema' | 'style' | 'javascript' | 'template'; parentClass?: string; complexity?: number; cognitiveComplexity?: number; parameters?: string[]; signature?: string; returnType?: string; imports?: string[]; /** * Symbols exported by this file. Extracted from export statements. * Example: ['validateEmail', 'validatePhone', 'ValidationError'] */ exports?: string[]; /** * Map of import paths to the symbols imported from them. * Example: { './validate': ['validateEmail', 'validatePhone'] } */ importedSymbols?: Record; /** * Call sites within this chunk - symbols called and their locations. * Tracked for chunks whose symbolType supports complexity analysis (e.g. functions and methods). */ callSites?: Array<{ symbol: string; line: number; isResultCaptured?: boolean; }>; halsteadVolume?: number; halsteadDifficulty?: number; halsteadEffort?: number; halsteadBugs?: number; } export interface ScanOptions { rootDir: string; includePatterns?: string[]; excludePatterns?: string[]; } //# sourceMappingURL=types.d.ts.map