import type { CapabilityManifest } from '../contracts/capability'; import type { ProductContext, ViewProviderDescriptor } from '../contracts/render'; export interface CompileViewProviderRegistryInput { capabilities: readonly CapabilityManifest[]; providers: readonly ViewProviderDescriptor[]; } export interface CompiledViewProviderRegistry { capabilities: readonly CapabilityManifest[]; providers: readonly ViewProviderDescriptor[]; capabilitiesById: ReadonlyMap; providersById: ReadonlyMap; providersByRendererKey: ReadonlyMap; requireCapability(capabilityId: string): CapabilityManifest; requireProvider(providerId: string): ViewProviderDescriptor; resolveProvider(capabilityId: string, product: ProductContext, preferredProviderId?: string): ViewProviderDescriptor; } /** * Compiles the canonical capability-to-provider graph independently of pages. * Nested views and component catalogs use this boundary so descriptor metadata * cannot drift away from the implementation registry that renders it. */ export declare const compileViewProviderRegistry: (input: CompileViewProviderRegistryInput) => CompiledViewProviderRegistry; //# sourceMappingURL=view-provider-registry.d.ts.map