@juspay/neurolink
Version:
Universal AI Development Platform with working MCP integration, multi-provider support, voice (TTS/STT/realtime), and professional CLI. 58+ external MCP servers discoverable, multimodal file processing, RAG pipelines. Build, test, and deploy AI applicatio
17 lines (16 loc) • 836 B
TypeScript
import type { FactoryFunction, FactoryRegistration } from "../../types/index.js";
export declare abstract class BaseFactory<TInstance, TConfig = unknown> {
protected items: Map<string, FactoryRegistration<TInstance, TConfig>>;
protected aliasMap: Map<string, string>;
protected initialized: boolean;
protected initPromise: Promise<void> | null;
protected abstract registerAll(): Promise<void>;
ensureInitialized(): Promise<void>;
register(name: string, factory: FactoryFunction<TInstance, TConfig>, aliases?: string[], metadata?: Record<string, unknown>): void;
create(nameOrAlias: string, config?: TConfig): Promise<TInstance>;
resolveName(nameOrAlias: string): string;
has(nameOrAlias: string): boolean;
getAvailable(): string[];
getAliases(): Map<string, string>;
clear(): void;
}