/**
 * Core Join Analysis Orchestrator
 * Phase 1: Foundation Architecture - Main join analysis engine
 */
import { JoinAnalysisResult, JoinAnalysisConfig, JoinCandidate, JoinRecommendation } from './types';
export declare class JoinAnalyzer {
    private relationshipDetector;
    private config;
    private csvParser;
    private csvDetector;
    constructor(config?: Partial<JoinAnalysisConfig>);
    /**
     * Main entry point for join analysis across multiple files
     */
    analyzeJoins(filePaths: string[]): Promise<JoinAnalysisResult>;
    /**
     * Analyze specific join between two tables
     */
    analyzePairwiseJoin(leftPath: string, rightPath: string, leftColumn?: string, rightColumn?: string): Promise<JoinCandidate[]>;
    /**
     * Get join recommendations for a specific scenario
     */
    getJoinRecommendations(filePaths: string[], businessContext?: string): Promise<JoinRecommendation[]>;
    private validateInput;
    private loadTableMetadata;
    private analyzeColumnSchema;
    private inferDataType;
    private extractColumnPatterns;
    private extractTableName;
    private generateMockSchema;
    private generateJoinCandidates;
    private analyzeSpecificJoin;
    private findSemanticJoinCandidates;
    private calculateJoinQuality;
    private generateRecommendations;
    private analyzePerformance;
    private createSummary;
}
//# sourceMappingURL=join-analyzer.d.ts.map