import type { RuntimeAdapter } from "../../platform/adapters/base.js"; import type * as React from "react"; export interface ComponentExports { default?: unknown; [key: string]: unknown; } export interface ComponentInfo { readonly name: string; readonly path: string; readonly content?: string; readonly isLoaded: boolean; readonly exports?: ComponentExports; } export interface ComponentRegistryOptions { projectDir: string; componentDirs?: string[]; adapter: RuntimeAdapter; moduleServerUrl?: string; vendorBundleHash?: string; } export type ComponentLoader = { loadComponent: (componentName: string, source: string, projectDir: string) => Promise; clearCache: () => void; }; export declare class ComponentRegistry { private options; private components; private manualComponents; private componentDirs; private initializedPromise; private discoveryInFlight; private discoveryMutations; private lifecycleGeneration; private adapter; constructor(options: ComponentRegistryOptions); discover(): Promise; private _discoverInternal; private walkDirectory; loadComponent(name: string): Promise; loadAll(): Promise; get(name: string): ComponentInfo | undefined; getAll(): Map; getLoader(): ComponentLoader | undefined; getAllAsComponents(): Record>; has(name: string): boolean; add(name: string, info: Partial): void; remove(name: string): void; clear(): void; getComponentNames(): string[]; listComponents(): Promise>; } //# sourceMappingURL=registry.d.ts.map