import { type PluginId, type RuntimeSnapshot } from '@zhin.js/plugin-runtime'; import type { RuntimeEnvironment } from './environment.js'; import type { EnvironmentLayers } from './environment-store.js'; import type { RuntimeConfigDocument } from '@zhin.js/plugin-runtime'; import type { IsolatedPluginRuntimePort } from './isolation.js'; import type { ModuleRuntime } from './module-runtime.js'; import { type PluginConfigResolver, type RootResourceInstaller } from './plugin-scope-assembler.js'; import type { ProjectGraph } from './project-graph.js'; import { type PreparedRuntimeGeneration, type RuntimeGenerationModel } from './runtime-generation.js'; export declare class SubtreeTopologyChangedError extends Error { constructor(message: string); } /** Replaces selected Plugin forests while retaining all other Scope lifetimes. */ export declare class SubtreeGenerationPreparer { private readonly modules; private readonly model; private readonly graph; private readonly configResolver; private readonly primaryConfigDocument; private readonly environment; private readonly installResources?; private readonly environmentLayers; private readonly isolation?; constructor(modules: ModuleRuntime, model: RuntimeGenerationModel, graph: ProjectGraph, configResolver: PluginConfigResolver, primaryConfigDocument: RuntimeConfigDocument, environment: RuntimeEnvironment, installResources?: RootResourceInstaller | undefined, environmentLayers?: EnvironmentLayers, isolation?: IsolatedPluginRuntimePort | undefined); prepare(current: RuntimeSnapshot, roots: readonly PluginId[], signal: AbortSignal): Promise; }