/**
 * Enhanced MCP Server Integration
 *
 * Integrates the TTLContextLoader with the existing MCP server to provide
 * automatic context loading from TTL files generated by the analysis system.
 */
import { EventEmitter } from 'events';
import { KnowledgeGraphPopulator } from '../project-analysis/KnowledgeGraphPopulator';
import { EnhancedRDFGenerator } from '../layer1/rdf-generator/EnhancedRDFGenerator';
import { ConcreteInformationExtractor } from '../layer1/rdf-generator/ConcreteInformationExtractor';
import { Layer3AIService } from '../layer3/index';
import { HybridStorageManager } from '../layer2/hybrid-storage/HybridStorageManager';
import { Neo4jDatabaseService } from '../layer2/neo4j-database/Neo4jDatabaseService';
import { ContextRequest, ContextResponse, EnhancedMCPServerConfig, EnhancedMCPServerMetrics } from './types';
/**
 * Enhanced MCP Server with automatic TTL context loading
 */
export declare class EnhancedMCPServer extends EventEmitter {
    private mcpServer;
    private ttlContextLoader;
    private neo4jContextProvider;
    private _knowledgeGraphPopulator;
    private _rdfGenerator;
    private _informationExtractor;
    private config;
    private metrics;
    private isRunning;
    constructor(config: EnhancedMCPServerConfig, layer3Service: Layer3AIService, hybridStorage: HybridStorageManager, knowledgeGraphPopulator: KnowledgeGraphPopulator, rdfGenerator: EnhancedRDFGenerator, informationExtractor: ConcreteInformationExtractor, neo4jService?: Neo4jDatabaseService);
    /**
     * Initialize metrics
     */
    private initializeMetrics;
    /**
     * Setup event handlers for integration
     */
    private setupEventHandlers;
    /**
     * Start the enhanced MCP server
     */
    start(): Promise<void>;
    /**
     * Stop the enhanced MCP server
     */
    stop(): Promise<void>;
    /**
     * Get enhanced context using both TTL loader and Neo4j source code
     */
    getEnhancedContext(request: ContextRequest): Promise<ContextResponse>;
    /**
     * Refresh TTL files and update context
     */
    refreshTTLContext(): Promise<void>;
    /**
     * Get server status including TTL integration
     */
    getStatus(): any;
    /**
     * Get enhanced metrics
     */
    getMetrics(): EnhancedMCPServerMetrics;
    /**
     * Get TTL files information
     */
    getTTLFiles(): Map<string, any>;
    /**
     * Enhance MCP server context generation
     */
    private enhanceMCPServerContextGeneration;
    /**
     * Handle TTL file change events
     */
    private handleTTLFileChange;
    /**
     * Handle TTL file refresh events
     */
    private handleTTLFileRefresh;
    /**
     * Update metrics
     */
    private updateMetrics;
    /**
     * Optimize performance
     */
    optimizePerformance(): Promise<void>;
    /**
     * Health check for the enhanced server
     */
    healthCheck(): Promise<{
        status: 'healthy' | 'degraded' | 'unhealthy';
        details: Record<string, any>;
    }>;
    /**
     * Build triple context combining TTL metadata and Neo4j source code
     */
    private buildTripleContext;
    /**
     * Estimate tokens in text
     */
    private estimateTokens;
}
//# sourceMappingURL=EnhancedMCPServer.d.ts.map