import type { RuntimeConfigDocument } from '@zhin.js/plugin-runtime'; import type { PluginId } from '@zhin.js/plugin-runtime'; import type { ProjectGraph } from './project-graph.js'; /** Host configuration keys consumed by Runtime composition and Host installers. */ export declare const HOST_CONFIG_KEYS: readonly string[]; export type JsonSchema = Readonly>; export interface ComposedConfig { readonly effectiveSchema: JsonSchema; readonly document: RuntimeConfigDocument; readonly views: ReadonlyMap; } export declare class ConfigSchemaCollisionError extends Error { readonly plugin: PluginId; readonly instanceKey: string; constructor(plugin: PluginId, instanceKey: string); } export declare class ConfigValidationError extends Error { readonly issues: readonly string[]; /** Source config file name, when known (e.g. `zhin.config.yml`). */ readonly source?: string | undefined; constructor(issues: readonly string[], /** Source config file name, when known (e.g. `zhin.config.yml`). */ source?: string | undefined); } export declare class ConfigComposer { private readonly inactivePluginInstanceKeys; constructor(inactivePluginInstanceKeys?: readonly string[]); compose(graph: ProjectGraph, input?: RuntimeConfigDocument, /** Source config file name, annotated on ConfigValidationError. */ source?: string): Promise; }