/**
 * Launch Expert
 *
 * Domain expert for analyzing app startup performance:
 * - Cold launch (冷启动) - process creation to first frame
 * - Warm launch (温启动) - activity recreation
 * - Hot launch (热启动) - resume from background
 *
 * This expert specializes in understanding the app startup pipeline
 * and identifying bottlenecks in the initialization sequence.
 *
 * Key capabilities:
 * - TTID (Time To Initial Display) analysis
 * - Phase breakdown (process start, Application init, Activity create, first frame)
 * - Architecture-aware analysis for different app types
 * - Root cause classification with optimization suggestions
 */
import { BaseExpert, AnalysisStrategy, ExpertInput, AnalysisIntent } from './base';
import { DecisionTreeExecutionResult } from '../decision/types';
import { ArchitectureInfo } from '../detectors';
/**
 * Launch Expert Implementation
 *
 * Analyzes app startup performance using the launch decision tree
 * and architecture-aware strategies.
 */
export declare class LaunchExpert extends BaseExpert {
    constructor();
    /**
     * Select analysis strategy based on intent and architecture
     *
     * Different architectures have different startup characteristics:
     * - STANDARD: Typical Android app startup flow
     * - UNITY/UNREAL: Game engines have heavy asset loading
     * - FLUTTER: Dart VM initialization adds overhead
     * - WEBVIEW: May have heavy WebView initialization
     */
    protected selectStrategy(intent: AnalysisIntent, architecture?: ArchitectureInfo): AnalysisStrategy;
    /**
     * Select launch-specific strategy based on architecture
     */
    private selectLaunchStrategy;
    /**
     * Perform custom analysis when decision tree doesn't cover the case
     */
    protected performCustomAnalysis(input: ExpertInput, architecture?: ArchitectureInfo): Promise<DecisionTreeExecutionResult>;
    /**
     * Check if startup might be CPU bound
     */
    private mightBeCpuBound;
    /**
     * Analyze startup data and produce conclusion
     */
    private analyzeStartupData;
    /**
     * Get thresholds based on architecture type
     */
    private getThresholds;
    /**
     * Determine launch type from data
     */
    private determineLaunchType;
    /**
     * Identify the startup bottleneck
     */
    private identifyStartupBottleneck;
}
/**
 * Create a new LaunchExpert instance
 */
export declare function createLaunchExpert(): LaunchExpert;
export default LaunchExpert;
//# sourceMappingURL=launchExpert.d.ts.map