import type { ArchitectureDetection, ArchitecturePattern, LayerDefinition, ModuleBoundary, ArchPatternConfig, ArchPatternsFile } from '../types/index.js';
/**
 * Detect architecture patterns, layers, boundaries, communication patterns, and deploy units.
 */
export declare function detectArchitecture(projectPath: string, archConfig: ArchPatternsFile): Promise<ArchitectureDetection>;
/**
 * Score how well a project matches an architecture pattern.
 */
export declare function scoreArchitecturePattern(projectPath: string, config: ArchPatternConfig): Promise<number>;
/**
 * Detect architectural layers from directory structure.
 */
export declare function detectLayers(projectPath: string): Promise<LayerDefinition[]>;
/**
 * Detect module boundaries from directory structure.
 */
export declare function detectBoundaries(projectPath: string): Promise<ModuleBoundary[]>;
/**
 * Infer communication patterns from the primary architecture pattern.
 */
export declare function inferCommunicationPatterns(primary: ArchitecturePattern): string[];
/**
 * Detect deployment units/platforms used in the project.
 */
export declare function detectDeploymentUnits(projectPath: string): Promise<string[]>;
//# sourceMappingURL=architecture-detector.d.ts.map