/**
 * Relationship Mapper
 *
 * Maps relationships between all entities:
 * - Features → Code files
 * - Teams → Features
 * - Modules → Modules (dependencies)
 * - Increments → Features
 * - External refs → Internal entities
 */
import { Logger } from '../../../utils/logger.js';
import type { SpecsCatalog } from './spec-loader.js';
import type { RepoAnalysis } from '../intelligent-analyzer/types.js';
import type { OrganizationSynthesisResult } from '../intelligent-analyzer/organization-synthesizer.js';
export interface RelationshipMap {
    featureToCode: Map<string, string[]>;
    featureToTeam: Map<string, string>;
    teamToFeatures: Map<string, string[]>;
    moduleDependencies: Map<string, string[]>;
    incrementToFeature: Map<string, string>;
    externalToFeature: Map<string, string>;
    totalRelationships: number;
}
export interface RelationshipMapperOptions {
    projectPath: string;
    logger?: Logger;
    repoAnalyses?: Map<string, RepoAnalysis>;
}
/**
 * Maps relationships between all entities in the system
 */
export declare class RelationshipMapper {
    private projectPath;
    private logger;
    private repoAnalyses?;
    constructor(options: RelationshipMapperOptions);
    /**
     * Build complete relationship map
     */
    map(catalog: SpecsCatalog, orgResult?: OrganizationSynthesisResult): Promise<RelationshipMap>;
    /**
     * Find code files related to a feature
     */
    private findCodeForFeature;
    /**
     * Extract key terms from a title for code matching
     */
    private extractKeyTerms;
    /**
     * Find files matching a term
     */
    private findFilesByTerm;
    /**
     * Extract module dependencies from repo analysis
     */
    private extractModuleDependencies;
}
//# sourceMappingURL=relationship-mapper.d.ts.map