/** * Project Intelligence - Deep project analysis and caching * Scans project once and caches important information for faster AI context */ export interface ProjectIntelligence { version: string; scannedAt: string; projectPath: string; name: string; type: string; description: string; structure: { totalFiles: number; totalDirectories: number; languages: Record; topDirectories: string[]; }; dependencies: { runtime: string[]; dev: string[]; frameworks: string[]; }; keyFiles: { path: string; summary: string; }[]; entryPoints: string[]; scripts: Record; architecture: { patterns: string[]; mainModules: string[]; apiEndpoints?: string[]; components?: string[]; ciSystem?: string | null; containerization?: string[]; monorepoTool?: string | null; }; conventions: { indentation: 'tabs' | 'spaces' | 'mixed'; quotes: 'single' | 'double' | 'mixed'; semicolons: boolean; namingStyle: 'camelCase' | 'snake_case' | 'PascalCase' | 'mixed'; }; testing: { framework: string | null; testDirectory: string | null; hasTests: boolean; }; notes: string[]; } /** * Scan project and generate intelligence */ export declare function scanProject(projectPath: string): Promise; /** What to tell the user when saveProjectIntelligence returns false. */ export declare const INTELLIGENCE_NOT_SAVED = "Not saved: .codeep/intelligence.json could not be written (is .codeep a symlink, or read-only?)."; /** * Save intelligence to .codeep/intelligence.json */ export declare function saveProjectIntelligence(projectPath: string, intelligence: ProjectIntelligence): boolean; /** * Load intelligence from .codeep/intelligence.json */ export declare function loadProjectIntelligence(projectPath: string): ProjectIntelligence | null; /** * Check if intelligence exists and is fresh (less than 24 hours old) */ export declare function isIntelligenceFresh(projectPath: string, maxAgeHours?: number): boolean; /** * Generate AI-friendly context from intelligence */ export declare function generateContextFromIntelligence(intelligence: ProjectIntelligence): string;