UNPKG

@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

92 lines (91 loc) 2.79 kB
/** * Chunker Registry * * Centralized registry for all chunking strategies with metadata * and discovery capabilities. Follows the BaseRegistry pattern. */ import { BaseRegistry } from "../core/infrastructure/index.js"; import type { Chunker, ChunkerConfig, ChunkerMetadata, ChunkingStrategy } from "../types/index.js"; /** * Chunker Registry * * Manages registration and discovery of all chunking strategies. * Extends BaseRegistry for consistent lifecycle management. */ export declare class ChunkerRegistry extends BaseRegistry<Chunker, ChunkerMetadata> { private static instance; private aliasMap; private constructor(); /** * Get singleton instance */ static getInstance(): ChunkerRegistry; /** * Reset singleton (for testing) */ static resetInstance(): void; /** * Register all default chunkers */ protected registerAll(): Promise<void>; /** * Register a chunker with aliases */ registerChunker(strategy: ChunkingStrategy | string, factory: () => Promise<Chunker>, metadata: ChunkerMetadata): void; /** * Resolve strategy name from alias */ resolveStrategy(nameOrAlias: string): ChunkingStrategy; /** * Get a chunker by strategy name or alias */ getChunker(strategyOrAlias: string): Promise<Chunker>; /** * Get list of available chunker strategies */ getAvailableChunkers(): Promise<ChunkingStrategy[]>; /** * Get metadata for a specific chunker */ getChunkerMetadata(strategyOrAlias: string): ChunkerMetadata | undefined; /** * Get all aliases for a strategy */ getAliasesForStrategy(strategy: ChunkingStrategy): string[]; /** * Get all registered aliases */ getAllAliases(): Map<string, ChunkingStrategy>; /** * Check if a strategy or alias exists */ hasChunker(strategyOrAlias: string): boolean; /** * Get chunkers by use case */ getChunkersByUseCase(useCase: string): ChunkingStrategy[]; /** * Get default configuration for a chunker */ getDefaultConfig(strategyOrAlias: string): ChunkerConfig | undefined; /** * Clear the registry (also clears aliases) */ clear(): void; } /** * Global chunker registry singleton */ export declare const chunkerRegistry: ChunkerRegistry; /** * Convenience function to get available chunkers */ export declare function getAvailableChunkers(): Promise<ChunkingStrategy[]>; /** * Convenience function to get chunker by strategy */ export declare function getChunker(strategyOrAlias: string): Promise<Chunker>; /** * Convenience function to get chunker metadata */ export declare function getChunkerMetadata(strategyOrAlias: string): ChunkerMetadata | undefined;