import { SimulatorBoot } from './SimulatorBoot.js';
import { SimulatorReset } from './SimulatorReset.js';
import { SimulatorApps } from './SimulatorApps.js';
import { SimulatorUI } from './SimulatorUI.js';
import { SimulatorInfo } from './SimulatorInfo.js';
/**
 * Simulator facade - provides a clean, composable interface to all simulator operations
 * Each component handles a single responsibility and can be injected for testing
 */
export class Simulator {
    boot;
    reset;
    apps;
    ui;
    info;
    constructor(boot, reset, apps, ui, info) {
        this.boot = boot || new SimulatorBoot();
        this.reset = reset || new SimulatorReset();
        this.apps = apps || new SimulatorApps();
        this.ui = ui || new SimulatorUI();
        this.info = info || new SimulatorInfo();
    }
}
// Export a default instance for convenience
export const simulator = new Simulator();
//# sourceMappingURL=Simulator.js.map