import type { Extension } from './extension'; export declare class ExtensionRegistry { #private; register(extension: Extension): void; get(id: string): Extension | undefined; all(): Extension[]; /** * The extension for `id`, requiring its module first if it hasn't registered yet. Registration is a * require-time side effect and the require cache is shared, so this is a no-op once loaded. * * The shared namespace must already be installed (../namespace) — callers reach here via ../index.ts, * which imports it. */ load(id: string, entryPointPath: string): Extension; reset(): void; } export declare const registry: ExtensionRegistry; export declare function getExtension(id: string): Extension | undefined; export declare function getAllExtensions(): Extension[]; export declare function resetRegistry(): void;