import 'reflect-metadata'; import { FlowName, PluginEntry, PluginRecord, PluginRegistryInterface, PluginType } from '@frontmcp/sdk'; import ProviderRegistry from '../provider/provider.registry'; import { RegistryAbstract, RegistryBuildMapResult } from '../regsitry'; export default class PluginRegistry extends RegistryAbstract implements PluginRegistryInterface { /** providers by token */ private readonly pProviders; /** providers by token */ private readonly pPlugins; /** adapters by token */ private readonly pAdapters; /** tools by token */ private readonly pTools; /** resources by token */ private readonly pResources; /** prompts by token */ private readonly pPrompts; private readonly scope; constructor(providers: ProviderRegistry, list: PluginType[]); getPlugins(): PluginEntry[]; protected buildMap(list: PluginType[]): RegistryBuildMapResult; protected buildGraph(): void; protected initialize(): Promise; /** Unified hook collector for registries — returns the live map for the given kind. */ collectHooksByStage(kind: T): any; }