/**
 * 应用实例管理模块
 * 支持多实例隔离
 */
import type { Container } from 'react-dom/client';
import type { StartOptions } from '../types';
import { AppRenderer } from './renderApp';
import type { ServicesInitResult } from './initializeServices';
import { PerformanceTracker } from './performanceTracker';
/**
 * 应用实例
 */
export declare class AppInstance {
    /**
     * 实例ID
     */
    readonly id: string;
    /**
     * 应用渲染器
     */
    private renderer;
    /**
     * 服务实例
     */
    private services;
    /**
     * 性能追踪器
     */
    private performanceTracker;
    /**
     * 启动配置
     */
    private options;
    /**
     * 是否已初始化
     */
    private initialized;
    /**
     * 是否已销毁
     */
    private destroyed;
    constructor(id: string, options: StartOptions);
    /**
     * 初始化应用实例
     *
     * @param container - React应用的挂载容器
     * @param services - 服务实例
     */
    initialize(container: Container, services: ServicesInitResult): void;
    /**
     * 获取渲染器
     */
    getRenderer(): AppRenderer;
    /**
     * 获取服务实例
     */
    getServices(): ServicesInitResult;
    /**
     * 获取性能追踪器
     */
    getPerformanceTracker(): PerformanceTracker | null;
    /**
     * 获取事件总线
     */
    getEventBus(): import('../event/AppEventBus').AppEventBus | null;
    /**
     * 获取启动配置
     */
    getOptions(): StartOptions;
    /**
     * 是否已初始化
     */
    isInitialized(): boolean;
    /**
     * 是否已销毁
     */
    isDestroyed(): boolean;
    /**
     * 销毁应用实例
     */
    destroy(): void;
}
/**
 * 应用实例管理器
 */
export declare class AppInstanceManager {
    private static instance;
    private instances;
    private defaultInstanceId;
    private constructor();
    /**
     * 获取单例实例
     */
    static getInstance(): AppInstanceManager;
    /**
     * 创建应用实例
     *
     * @param id - 实例ID，如果不提供则自动生成
     * @param options - 启动配置选项
     * @returns 应用实例
     */
    createInstance(id?: string, options?: StartOptions): AppInstance;
    /**
     * 获取应用实例
     *
     * @param id - 实例ID，如果不提供则返回默认实例
     * @returns 应用实例或undefined
     */
    getInstance(id?: string): AppInstance | undefined;
    /**
     * 销毁应用实例
     *
     * @param id - 实例ID，如果不提供则销毁默认实例
     */
    destroyInstance(id?: string): void;
    /**
     * 获取所有实例
     */
    getAllInstances(): AppInstance[];
    /**
     * 设置默认实例
     *
     * @param id - 实例ID
     */
    setDefaultInstance(id: string): void;
    /**
     * 获取默认实例ID
     */
    getDefaultInstanceId(): string | null;
    /**
     * 清空所有实例
     */
    clear(): void;
}
/**
 * 获取应用实例管理器
 */
export declare function getAppInstanceManager(): AppInstanceManager;
//# sourceMappingURL=AppInstance.d.ts.map