import { Store } from './store.js';
import { CodebaseProfile } from '../types.js';
import './store-interface.js';
import './graph.js';

interface ArchSmell {
    type: string;
    severity: 'info' | 'warning' | 'critical';
    description: string;
    involvedFiles: string[];
    involvedClusters?: string[];
    suggestion: string;
}
declare class ArchitectureAnalyzer {
    private store;
    private flowValidator;
    constructor(store: Store);
    /**
     * Analyzes the repository for architectural smells and layer violations.
     */
    analyze(repoName: string, profile: CodebaseProfile): ArchSmell[];
    private detectCycles;
    private detectHubs;
    private detectLayerViolations;
    private detectClusterSmells;
}

export { type ArchSmell, ArchitectureAnalyzer };
