import * as React from "react"; import type { RuntimeAdapter } from "../../platform/adapters/base.js"; import { VirtualModuleSystem } from "../virtual-module-system.js"; import { type DependencyPinningSourceInput } from "../../transforms/esm/package-registry.js"; import type { LoadComponentOptions } from "../../modules/react-loader/types.js"; import type { RenderEnvironment, RenderModes } from "../context/render-context.js"; interface FailedComponent { name: string; error: string; filePath: string; timestamp: number; } type ComponentSourceLoader = (source: string, filePath: string, projectDir: string, adapter: RuntimeAdapter, options: LoadComponentOptions) => Promise>>; export declare class ComponentRegistry { private components; private componentsByDependencySnapshot; private dependencySnapshotGenerations; private dependencySnapshotLoads; private virtualModules; private componentSources; private failedComponents; private initialized; private projectDir; private serverPort; private adapter?; private moduleServerUrl?; private vendorBundleHash?; private projectId?; private contentSourceId?; private componentSourceGeneration; private componentSourceLoader; private renderModes; constructor(virtualModules?: VirtualModuleSystem, serverPort?: number, adapter?: RuntimeAdapter, moduleServerUrl?: string, vendorBundleHash?: string, projectId?: string, contentSourceId?: string, componentSourceLoader?: ComponentSourceLoader, renderModes?: RenderModes); loadFromDirectory(dir: string, deferLoading?: boolean): Promise; get(name: string, dependencyPinningCacheKey?: string): React.ComponentType> | null; getAll(dependencyPinningCacheKey?: string): Record>>; getAllAsComponents(dependencyPinningCacheKey?: string): Record>; has(name: string, dependencyPinningCacheKey?: string): boolean; getVirtualModuleSystem(): VirtualModuleSystem; clear(): void; initializeComponents(): Promise; /** * Materialize the retained component sources for one immutable dependency * snapshot. Snapshot-specific maps avoid reusing component objects compiled * under package state A during a later or concurrent state-B render. */ prepareDependencySnapshot(dependencyPinningCacheKey?: string, dependencyPinningDependencies?: Readonly>, dependencyPinningSource?: DependencyPinningSourceInput, moduleServerOrigin?: string, serverExternalPackages?: readonly string[], environment?: RenderEnvironment): Promise; private loadDependencySnapshot; private touchDependencySnapshot; private getDependencySnapshotComponents; private trimDependencySnapshots; getFailedComponents(): FailedComponent[]; hasFailed(name: string): boolean; private getLoaderOptions; private collectComponents; } export {}; //# sourceMappingURL=component-registry.d.ts.map