import type { AbstractModuleId, BundleSigner, LinkedModuleDefinition, LwrAppEmitter, LwrAppObserver, ModuleDefinition, ModuleEntry, ModuleId, ModuleProvider, ModuleRegistry, ModuleRegistryConfig, NormalizedLwrGlobalConfig, PublicModuleRegistry, RuntimeEnvironment, RuntimeParams } from '@lwrjs/types'; interface RegistryContext { appObserver: LwrAppObserver; appEmitter: LwrAppEmitter; runtimeEnvironment: RuntimeEnvironment; } export declare class LwrModuleRegistry implements ModuleRegistry { name: string; providers: ModuleProvider[]; moduleDefCache: Map; moduleLinkedCache: Map>; context: RegistryContext; emitter: LwrAppEmitter; globalConfig: NormalizedLwrGlobalConfig; private interchangeableModules?; private inflightModuleDefinitions; private bundleSigner; constructor(context: RegistryContext, globalConfig: NormalizedLwrGlobalConfig, registries?: ModuleProvider[]); resolveModuleUriSync(moduleId: Required>, signature: S, runtimeEnvironment: R, runtimeParams: RuntimeParams): string; resolveModuleUri(moduleId: Required>, runtimeEnvironment: R, runtimeParams: RuntimeParams, signature?: S): Promise; setBundleSigner(bundleSigner: BundleSigner): void; getBundleSigner(): BundleSigner; addModuleProviders(registries: ModuleProvider[]): void; getConfig(): ModuleRegistryConfig; getModuleEntry(moduleId: T, runtimeParams: RuntimeParams): Promise; getModule(moduleId: T, runtimeParams: RuntimeParams): Promise; private createModuleDefinition; getLinkedModule(moduleId: T, runtimeEnvironment: RuntimeEnvironment, runtimeParams: RuntimeParams): Promise; private createLinkedModuleDefinition; private delegateGetModuleEntryOnServices; private delegateGetModuleOnProviders; getPublicApi(): PublicModuleRegistry; } export {}; //# sourceMappingURL=index.d.ts.map