/** * Agentic QE v3 - Plugin Loader * Dynamic domain plugin loading with lazy initialization */ import { DomainName } from '../shared/types'; import { DomainPlugin, PluginLoader, EventBus, MemoryBackend } from './interfaces'; type PluginFactory = (eventBus: EventBus, memory: MemoryBackend) => Promise; export declare class DefaultPluginLoader implements PluginLoader { private readonly eventBus; private readonly memory; private plugins; private factories; private loading; constructor(eventBus: EventBus, memory: MemoryBackend, _lazyLoading?: boolean); /** * Register a plugin factory for a domain */ registerFactory(domain: DomainName, factory: PluginFactory): void; load(domain: DomainName): Promise; private loadPlugin; unload(domain: DomainName): Promise; isLoaded(domain: DomainName): boolean; getLoaded(): DomainName[]; loadAll(): Promise; private topologicalSort; /** * Get a loaded plugin */ getPlugin(domain: DomainName): DomainPlugin | undefined; /** * Dispose all plugins */ disposeAll(): Promise; } export {}; //# sourceMappingURL=plugin-loader.d.ts.map