export interface ProjectStructureReport {
    isValid: boolean;
    issues: ProjectStructureIssue[];
    metrics: ProjectMetrics;
    recommendations: string[];
    autoFixable: boolean;
    nextjsCompliant?: boolean;
    shadcnCompliant?: boolean;
}
export interface ProjectStructureIssue {
    type: "error" | "warning" | "info";
    severity: "critical" | "high" | "medium" | "low";
    message: string;
    file?: string;
    fix?: string;
    autoFixable: boolean;
}
export interface ProjectMetrics {
    packageJsonCount: number;
    nodeModulesCount: number;
    lockFileCount: number;
    tsConfigCount: number;
    buildConfigCount: number;
    totalFiles: number;
    projectDepth: number;
}
export declare class ProjectStructureValidator {
    private projectRoot;
    private issues;
    private metrics;
    private nextjsValidator?;
    constructor(projectRoot?: string);
    private getNextjsValidator;
    /**
     * Comprehensive project structure validation
     */
    validate(): Promise<ProjectStructureReport>;
    /**
     * Check for multiple package.json files
     */
    private checkPackageJsonFiles;
    /**
     * Check for nested node_modules directories
     */
    private checkNodeModulesDirectories;
    /**
     * Check for multiple lock files
     */
    private checkLockFiles;
    /**
     * Check for multiple TypeScript configurations
     */
    private checkTypeScriptConfigs;
    /**
     * Check for multiple build configurations
     */
    private checkBuildConfigs;
    /**
     * Check project depth and path issues
     */
    private checkProjectDepth;
    /**
     * Check for dependency conflicts
     */
    private checkDependencyConflicts;
    /**
     * Check for path-related issues
     */
    private checkPathIssues;
    /**
     * Auto-fix detected issues
     */
    autoFix(): Promise<{
        fixed: number;
        failed: number;
        errors: string[];
    }>;
    /**
     * Fix a specific issue
     */
    private fixIssue;
    /**
     * Remove nested package.json files
     */
    private removeNestedPackageJson;
    /**
     * Remove nested node_modules directories
     */
    private removeNestedNodeModules;
    /**
     * Remove conflicting lock files
     */
    private removeConflictingLockFiles;
    /**
     * Remove conflicting build configurations
     */
    private removeConflictingBuildConfigs;
    /**
     * Create default package.json
     */
    private createDefaultPackageJson;
    /**
     * Generate lock file
     */
    private generateLockFile;
    /**
     * Create default TypeScript configuration
     */
    private createDefaultTsConfig;
    /**
     * Create default Next.js configuration
     */
    private createDefaultNextConfig;
    /**
     * Helper methods
     */
    private findFiles;
    private findDirectories;
    private calculateMetrics;
    private calculateProjectDepth;
    private findDuplicateDependencies;
    private addIssue;
    private generateRecommendations;
    /**
     * Generate a comprehensive health report
     */
    generateHealthReport(): Promise<string>;
    /**
     * Fallback file discovery using fs-extra when glob fails
     */
    private findFilesFallback;
    /**
     * Fallback directory discovery using fs-extra when glob fails
     */
    private findDirectoriesFallback;
    /**
     * Simple pattern matching for fallback when glob is not available
     */
    private matchesSimplePattern;
}
//# sourceMappingURL=ProjectStructureValidator.d.ts.map