import { LazyHandlerRegistry } from './lazy-handler-registry.js';
import { StartupPerformanceTracker } from './startup-performance-tracker.js';
import { HandlerRegistry } from '../handlers/handler-registry.js';
export interface LazyServerConfig {
    coreHandlers?: string[];
    lazyHandlers?: string[];
    startupTimeTarget?: number;
    enableProfiling?: boolean;
}
/**
 * LazyServerIntegration - Integrates lazy loading with existing server
 */
export declare class LazyServerIntegration {
    private lazyRegistry;
    private tracker;
    private config;
    constructor(config?: LazyServerConfig);
    /**
     * Create optimized handler registration method
     */
    createOptimizedRegistration(originalRegistry: HandlerRegistry): {
        registerHandler: (handler: any) => void;
        getHandler: (name: string) => Promise<any>;
        getAllTools: () => any[];
        getStartupMetrics: () => any;
    };
    /**
     * Get handler name from handler instance
     */
    private getHandlerName;
    /**
     * Determine if handler should be lazy loaded
     */
    private shouldLazyLoad;
    /**
     * Get handler priority
     */
    private getHandlerPriority;
    /**
     * Extract tool names from handler
     */
    private extractToolNames;
    /**
     * Get handler category
     */
    private getHandlerCategory;
    /**
     * Start performance tracking
     */
    startPerformanceTracking(): void;
    /**
     * End performance tracking
     */
    endPerformanceTracking(): void;
    /**
     * Get performance improvement
     */
    getPerformanceImprovement(baselineTime: number): number;
    /**
     * Check if startup target is met
     */
    meetsStartupTarget(): boolean;
    /**
     * Get lazy registry for advanced operations
     */
    getLazyRegistry(): LazyHandlerRegistry;
    /**
     * Get performance tracker
     */
    getTracker(): StartupPerformanceTracker;
}
//# sourceMappingURL=lazy-server-integration.d.ts.map