import { ProjectDependencies } from '../init/framework-detector.js';
import { DetectedLanguages } from '../init/language-detector.js';
export interface ProjectAnalysis {
    projectPath: string;
    projectName: string;
    languages: DetectedLanguages;
    dependencies: ProjectDependencies;
    projectType: string;
    keyFiles: {
        config: string[];
        documentation: string[];
        build: string[];
        test: string[];
        [key: string]: string[];
    };
    structure: {
        totalFiles: number;
        scannedFiles: number;
        directories: string[];
        importantDirectories: string[];
    };
    buildCommands: {
        [key: string]: string;
    };
    description?: string;
    repository?: string;
}
export declare class ProjectAnalyzer {
    private projectPath;
    private fileScanner;
    private frameworkDetector;
    constructor(projectPath: string);
    /**
     * Perform comprehensive project analysis
     */
    analyze(): ProjectAnalysis;
    /**
     * Check if a file is a code file
     */
    private isCodeFile;
    /**
     * Check if a file is a test file
     */
    private isTestFile;
    /**
     * Get important directories based on common patterns
     */
    private getImportantDirectories;
    /**
     * Extract project metadata from package.json, README, etc.
     */
    private extractProjectMetadata;
    /**
     * Determine the overall project type
     */
    private determineProjectType;
    /**
     * Get coding conventions based on detected languages and frameworks
     */
    getCodingConventions(): string[];
}
//# sourceMappingURL=project-analyzer.d.ts.map