/**
 * 服务初始化模块
 * 负责初始化框架所需的各种服务
 */
import type { MonitoringService } from '../../utils/monitoring';
import { PerformanceMonitor } from '../../utils/performance';
import { StateManager } from '../../state';
import type { StartOptions } from '../types';
import { AppEventBus } from '../event/AppEventBus';
/**
 * 重试配置
 */
export interface RetryConfig {
    /**
     * 最大重试次数
     * @default 3
     */
    maxRetries?: number;
    /**
     * 重试延迟（毫秒）
     * @default 1000
     */
    retryDelay?: number;
    /**
     * 是否启用指数退避
     * @default true
     */
    exponentialBackoff?: boolean;
}
/**
 * 服务初始化结果
 */
export interface ServicesInitResult {
    /**
     * 监控服务实例
     */
    monitoring: MonitoringService;
    /**
     * 性能监控实例
     */
    performanceMonitor: PerformanceMonitor;
    /**
     * 状态管理器实例
     */
    stateManager: StateManager;
    /**
     * 事件总线实例
     */
    eventBus: AppEventBus;
    /**
     * 延迟初始化非关键服务的函数
     * 在应用渲染后调用，使用 requestIdleCallback 在空闲时初始化
     */
    initializeNonCriticalServices?: () => Promise<void>;
}
/**
 * 初始化所有服务
 *
 * 优化：
 * 1. 区分关键服务和非关键服务
 * 2. 关键服务并行初始化，缩短首屏时间
 * 3. 非关键服务延迟到应用渲染后初始化，使用 requestIdleCallback 在空闲时初始化
 * 4. 实现服务初始化失败重试机制，提高启动成功率
 *
 * @param options - 启动配置选项
 * @returns 服务初始化结果
 */
export declare function initializeServices(options?: StartOptions): Promise<ServicesInitResult>;
//# sourceMappingURL=initializeServices.d.ts.map