import type { FeatureId, PluginId, PreparedGeneration, Scope } from '@zhin.js/plugin-runtime'; import type { CapabilityRoot, FeatureProvider } from '@zhin.js/feature-kit'; import type { GenerationAssets } from './generation-assets.js'; import type { ProjectGraph } from './project-graph.js'; import type { SourceOwnershipIndex } from './source-ownership.js'; export interface RuntimeGenerationModel { readonly graph: ProjectGraph; readonly providers: ReadonlyMap; readonly rootsByFeature: ReadonlyMap; readonly featureIdsByPackageRoot: ReadonlyMap; readonly scopes: ReadonlyMap; readonly assets: GenerationAssets; } /** Sidecar state that must never be observed from a different generation. */ export interface RuntimeGenerationState { readonly ownership: SourceOwnershipIndex; readonly model?: RuntimeGenerationModel; } export interface PreparedRuntimeGeneration { readonly generation: PreparedGeneration; } export declare function prepareRuntimeGeneration(generation: PreparedGeneration, ownership: SourceOwnershipIndex, model: RuntimeGenerationModel): PreparedRuntimeGeneration;