export interface StartupPhase {
    name: string;
    startTime: number;
    endTime?: number;
    duration?: number;
}
export interface StartupMetrics {
    totalStartupTime: number;
    phases: {
        [key: string]: number;
    };
    startedAt: Date;
    completedAt?: Date;
}
/**
 * StartupPerformanceTracker - Tracks server startup performance
 * Used to measure and validate startup time improvements
 */
export declare class StartupPerformanceTracker {
    private startTime;
    private phases;
    private currentPhase;
    constructor();
    /**
     * Start tracking a specific phase
     */
    startPhase(name: string): void;
    /**
     * End tracking a specific phase
     */
    endPhase(name: string): void;
    /**
     * Get complete startup metrics
     */
    getMetrics(): StartupMetrics;
    /**
     * Get current phase duration
     */
    getCurrentPhaseDuration(): number;
    /**
     * Reset tracker
     */
    reset(): void;
    /**
     * Mark startup complete
     */
    markComplete(): void;
    /**
     * Get performance improvement percentage
     */
    getImprovementPercentage(baselineTime: number): number;
    /**
     * Check if target startup time is met
     */
    meetsTarget(targetTime: number): boolean;
}
//# sourceMappingURL=startup-performance-tracker.d.ts.map