{"version":3,"sources":["jsdelivr-header.js","/npm/@juspay/neurolink@9.56.1/dist/index.js"],"names":[],"mappings":"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","file":"/npm/@juspay/neurolink@9.56.1/dist/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/@juspay/neurolink@9.56.1/dist/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","/**\n * NeuroLink AI Toolkit\n *\n * A unified AI provider interface with support for 14+ providers,\n * automatic fallback, streaming, MCP tool integration, HITL security,\n * Redis persistence, and enterprise-grade middleware.\n *\n * NeuroLink provides comprehensive AI functionality with battle-tested\n * patterns extracted from production systems at Juspay.\n *\n * @packageDocumentation\n * @module @juspay/neurolink\n * @category Core\n *\n * @example\n * ```typescript\n * import { NeuroLink } from '@juspay/neurolink';\n *\n * // Create NeuroLink instance\n * const neurolink = new NeuroLink();\n *\n * // Generate with any provider\n * const result = await neurolink.generate({\n *   input: { text: 'Explain quantum computing' },\n *   provider: 'vertex',\n *   model: 'gemini-3-flash-preview'\n * });\n *\n * console.log(result.content);\n * ```\n *\n * @since 1.0.0\n */\n// Core exports\nimport { AIProviderFactory } from \"./core/factory.js\";\nexport { AIProviderFactory };\nexport { GoogleTTSHandler } from \"./adapters/tts/googleTTSHandler.js\";\n// Config Manager export\nexport { NeuroLinkConfigManager as ConfigManager } from \"./config/configManager.js\";\n// Core Infrastructure exports (Mastra-inspired patterns)\nexport { BaseFactory, BaseRegistry, NeuroLinkFeatureError, createErrorFactory, withRetry, TypedEventEmitter, } from \"./core/infrastructure/index.js\";\n// ============================================================================\n// CLIENT SDK EXPORTS - Type-safe API access for browser and Node.js\n// Note: React hooks are NOT re-exported here. Import from '@juspay/neurolink/client'.\n// ============================================================================\nexport { \n// HTTP Client\nNeuroLinkClient, createClient, NeuroLinkApiError, \n// AI SDK Adapter\nNeuroLinkLanguageModel, NeuroLinkAIProvider, createNeuroLinkProvider, createNeuroLinkModel, createStreamingResponse, neurolink as neuroLinkAIInstance, \n// Interceptors\ncreateApiKeyAuthInterceptor, createBearerAuthInterceptor, createDynamicAuthInterceptor, createLoggingInterceptor, createRetryInterceptor, createRateLimitInterceptor, createRequestTransformInterceptor, createResponseTransformInterceptor, createCacheInterceptor, createTimeoutInterceptor, createErrorHandlerInterceptor, composeMiddleware, conditionalMiddleware, \n// Streaming Client\nSSEClient, WebSocketStreamingClient, createStreamingClient, createAsyncStream, collectStream, \n// Authentication\nOAuth2TokenManager, JWTTokenManager, createApiKeyMiddleware, createBearerTokenMiddleware, createTokenManagerMiddleware, createAuthWithRetryMiddleware, createMultiAuthMiddleware, OAuth2Error, OAuth2AuthError, TokenRefreshError, decodeJWTPayload, isJWTExpired, getJWTExpiry, getApiKeyFromEnv, \n// Errors\nErrorCode as ClientErrorCode, NeuroLinkError as ClientNeuroLinkError, HttpError, ClientRateLimitError, ClientValidationError, ClientAuthenticationError, ClientAuthorizationError, NotFoundError, ClientNetworkError, ClientTimeoutError, ClientConnectionError, AbortError, ClientConfigurationError, StreamError, ClientProviderError, ContextLengthError, ContentFilterError, createErrorFromResponse, createErrorFromNative, mapStatusToErrorCode, isRetryableStatus, isRetryableError, isNeuroLinkError, isApiError, } from \"./client/index.js\";\nexport { AIProviderName, BedrockModels, OpenAIModels, VertexModels, } from \"./constants/enums.js\";\n// Dynamic Models exports\nexport { dynamicModelProvider } from \"./core/dynamicModels.js\";\n// Tool Registration utility\nexport { validateTool } from \"./sdk/toolRegistration.js\";\n// Export ALL types from the centralized type barrel\nexport * from \"./types/index.js\";\n// Error utilities\nexport { isAbortError } from \"./utils/errorHandling.js\";\n// Pricing utilities\nexport { calculateCost, hasPricing } from \"./utils/pricing.js\";\n// Utility exports\nexport { getAvailableProviders, getBestProvider, isValidProvider, } from \"./utils/providerUtils.js\";\n// TTS utilities\nexport { TTSProcessor } from \"./utils/ttsProcessor.js\";\n// Main NeuroLink wrapper class and diagnostic types\nimport { NeuroLink } from \"./neurolink.js\";\nexport { NeuroLink };\n// Observability configuration types\nexport { buildObservabilityConfigFromEnv } from \"./utils/observabilityHelpers.js\";\nimport { createContextEnricher, flushOpenTelemetry, \n// Enhanced context and tracing\ngetLangfuseContext, getLangfuseHealthStatus, getLangfuseSpanProcessor, \n// NEW EXPORTS - External TracerProvider Support\ngetSpanProcessors, getTracer, getTracerProvider, initializeOpenTelemetry, isLangfuseInternalSpan, isOpenTelemetryInitialized, isUsingExternalTracerProvider, langfuseShouldExportSpan, runWithCurrentLangfuseContext, setLangfuseContext, shutdownOpenTelemetry, } from \"./services/server/ai/observability/instrumentation.js\";\nimport { getTelemetryStatus as getStatus, initializeTelemetry as init, } from \"./telemetry/index.js\";\nexport { initializeOpenTelemetry, shutdownOpenTelemetry, flushOpenTelemetry, getLangfuseHealthStatus, setLangfuseContext, getLangfuseSpanProcessor, getTracerProvider, isOpenTelemetryInitialized, \n// NEW EXPORTS - External TracerProvider Support\ngetSpanProcessors, createContextEnricher, isUsingExternalTracerProvider, \n// Host-processor filter helpers — reuse NeuroLink's internal-span filtering\n// when the host app registers its own LangfuseSpanProcessor.\nisLangfuseInternalSpan, langfuseShouldExportSpan, \n// Enhanced context and tracing\ngetLangfuseContext, getTracer, \n// ALS context propagation helper\nrunWithCurrentLangfuseContext, };\n// Analytics Middleware exports\nexport { clearAnalyticsMetrics, createAnalyticsMiddleware, getAnalyticsMetrics, } from \"./middleware/builtin/analytics.js\";\nexport { createLifecycleMiddleware } from \"./middleware/builtin/lifecycle.js\";\nexport { MiddlewareFactory } from \"./middleware/factory.js\";\nexport { ExporterRegistry } from \"./observability/exporterRegistry.js\";\nexport { NoOpExporter } from \"./observability/exporters/baseExporter.js\";\n// Observability modules and types\nexport { getMetricsAggregator, MetricsAggregator, resetMetricsAggregator, } from \"./observability/metricsAggregator.js\";\nexport { AlwaysSampler, NeverSampler, } from \"./observability/sampling/samplers.js\";\nexport { TokenTracker } from \"./observability/tokenTracker.js\";\nexport { GENAI_ATTRIBUTES, SpanStatus, SpanType } from \"./types/index.js\";\nexport { SpanSerializer } from \"./observability/utils/spanSerializer.js\";\n// Middleware exports\n// Version\nexport const VERSION = \"1.0.0\";\n/**\n * Quick start factory function for creating AI provider instances.\n *\n * Creates a configured AI provider instance ready for immediate use.\n * Supports 14+ providers: OpenAI, Anthropic, Google AI Studio,\n * Google Vertex, AWS Bedrock, AWS SageMaker, Azure OpenAI, Hugging Face,\n * LiteLLM, Mistral, Ollama, OpenAI Compatible, OpenRouter, and more.\n *\n * @category Factory\n *\n * @param providerName - The AI provider name (e.g., 'bedrock', 'vertex', 'openai')\n * @param modelName - Optional model name to override provider default\n * @returns Promise resolving to configured AI provider instance\n *\n * @example Basic usage\n * ```typescript\n * import { createAIProvider } from '@juspay/neurolink';\n *\n * const provider = await createAIProvider('bedrock');\n * const result = await provider.stream({ input: { text: 'Hello, AI!' } });\n * ```\n *\n * @example With custom model\n * ```typescript\n * const provider = await createAIProvider('vertex', 'gemini-3-flash-preview');\n * ```\n *\n * @see {@link AIProviderFactory.createProvider}\n * @see {@link NeuroLink} for the main SDK class\n * @since 1.0.0\n */\nexport async function createAIProvider(providerName, modelName) {\n    return await AIProviderFactory.createProvider(providerName || \"bedrock\", modelName);\n}\n/**\n * Create provider with automatic fallback for production resilience.\n *\n * Creates both primary and fallback provider instances for high-availability\n * deployments. Automatically switches to fallback on primary provider failure.\n *\n * @category Factory\n *\n * @param primaryProvider - Primary AI provider name (default: 'bedrock')\n * @param fallbackProvider - Fallback AI provider name (default: 'vertex')\n * @param modelName - Optional model name for both providers\n * @returns Promise resolving to object with primary and fallback providers\n *\n * @example Production failover setup\n * ```typescript\n * import { createAIProviderWithFallback } from '@juspay/neurolink';\n *\n * const { primary, fallback } = await createAIProviderWithFallback('bedrock', 'vertex');\n *\n * try {\n *   const result = await primary.generate({ input: { text: 'Hello!' } });\n * } catch (error) {\n *   // Automatically use fallback\n *   const result = await fallback.generate({ input: { text: 'Hello!' } });\n * }\n * ```\n *\n * @example Multi-region setup\n * ```typescript\n * const { primary, fallback } = await createAIProviderWithFallback(\n *   'vertex',      // Primary: US region\n *   'bedrock',     // Fallback: Global\n *   'claude-3-sonnet'\n * );\n * ```\n *\n * @see {@link AIProviderFactory.createProviderWithFallback}\n * @since 1.0.0\n */\nexport async function createAIProviderWithFallback(primaryProvider, fallbackProvider, modelName) {\n    return await AIProviderFactory.createProviderWithFallback(primaryProvider || \"bedrock\", fallbackProvider || \"vertex\", modelName);\n}\n/**\n * Create the best available provider based on environment configuration.\n *\n * Intelligently selects the best provider based on available API keys\n * in environment variables. Automatically detects and configures the\n * optimal provider without manual configuration.\n *\n * @category Factory\n *\n * @param requestedProvider - Optional preferred provider name\n * @param modelName - Optional model name\n * @returns Promise resolving to the best configured provider\n *\n * @example Automatic provider selection\n * ```typescript\n * import { createBestAIProvider } from '@juspay/neurolink';\n *\n * // Automatically uses provider with configured API key\n * const provider = await createBestAIProvider();\n * const result = await provider.generate({ input: { text: 'Hello!' } });\n * ```\n *\n * @example With provider preference\n * ```typescript\n * // Tries to use OpenAI, falls back to available provider\n * const provider = await createBestAIProvider('openai');\n * ```\n *\n * @remarks\n * Environment variables checked (in order):\n * - OPENAI_API_KEY\n * - ANTHROPIC_API_KEY\n * - GOOGLE_API_KEY\n * - VERTEX_PROJECT_ID + credentials\n * - AWS credentials for Bedrock\n * - And more...\n *\n * @see {@link AIProviderFactory.createBestProvider}\n * @see {@link getBestProvider} for provider detection utility\n * @since 1.0.0\n */\nexport async function createBestAIProvider(requestedProvider, modelName) {\n    return await AIProviderFactory.createBestProvider(requestedProvider, modelName);\n}\n// ============================================================================\n// MCP PLUGIN ECOSYSTEM - Universal AI Development Platform\n// ============================================================================\n/**\n * MCP (Model Context Protocol) Plugin Ecosystem\n *\n * Extensible plugin architecture based on research blueprint for\n * transforming NeuroLink into a Universal AI Development Platform.\n *\n * @example\n * ```typescript\n * import { mcpEcosystem, readFile, writeFile } from '@juspay/neurolink';\n *\n * // Initialize the ecosystem\n * await mcpEcosystem.initialize();\n *\n * // List available plugins\n * const plugins = await mcpEcosystem.list();\n *\n * // Use filesystem operations\n * const content = await readFile('README.md');\n * await writeFile('output.txt', 'Hello from MCP!');\n * ```\n */\nexport { CircuitBreakerManager, calculateExpiresAt, \n// MCP Server Factory\ncreateMCPServer, createOAuthProviderFromConfig, DEFAULT_HTTP_RETRY_CONFIG, DEFAULT_RATE_LIMIT_CONFIG, executeMCP, FileTokenStorage, getMCPStats, getServerInfo, globalCircuitBreakerManager, globalRateLimiterManager, \n// HTTP Transport utilities\nHTTPRateLimiter, \n// OAuth Authentication\nInMemoryTokenStorage, \n// Core MCP ecosystem\n// Simplified MCP exports\ninitializeMCPEcosystem, isRetryableHTTPError, isRetryableStatusCode, isTokenExpired, listMCPs, \n// Circuit Breaker\nCircuitBreakerOpenError, MCPCircuitBreaker, mcpLogger, NeuroLinkOAuthProvider, RateLimiterManager, validateServerTools, validateTool as validateMCPTool, withHTTPRetry, \n// Core MCP Components\nMCPToolRegistry, ExternalServerManager, MCPClientFactory, \n// MCP Enhancements - Routing, Caching, Batching\nToolRouter, createToolRouter, DEFAULT_ROUTER_CONFIG, ToolCache, createToolCache, DEFAULT_CACHE_CONFIG, ToolResultCache, createToolResultCache, RequestBatcher, ToolCallBatcher, createRequestBatcher, createToolCallBatcher, DEFAULT_BATCH_CONFIG, \n// MCP Enhancements - Tool Annotations\ninferAnnotations, createAnnotatedTool, validateAnnotations, filterToolsByAnnotations, mergeAnnotations, getAnnotationSummary, requiresConfirmation, isSafeToRetry, getToolSafetyLevel, \n// MCP Enhancements - Elicitation\nElicitationManager, globalElicitationManager, \n// MCP Enhancements - Enhanced Tool Discovery\nEnhancedToolDiscovery, \n// MCP Enhancements - Registry Client\nMCPRegistryClient, globalMCPRegistryClient, getWellKnownServer, getAllWellKnownServers, \n// MCP Enhancements - Server Base\nMCPServerBase, \n// MCP Enhancements - Multi-Server Manager\nMultiServerManager, globalMultiServerManager, \n// MCP Enhancements - Agent Exposure\nAgentExposureManager, exposeAgentAsTool, exposeAgentsAsTools, exposeWorkflowAsTool, exposeWorkflowsAsTools, globalAgentExposureManager, \n// MCP Enhancements - Server Capabilities\nServerCapabilitiesManager, createTextResource, createJsonResource, createPrompt, \n// MCP Enhancements - Tool Converter\nneuroLinkToolToMCP, mcpToolToNeuroLink, batchConvertToMCP, batchConvertToNeuroLink, sanitizeToolName, validateToolName, createToolFromFunction, mcpProtocolToolToServerTool, serverToolToMCPProtocol, TOOL_COMPATIBILITY, \n// MCP Enhancements - Tool Integration\nToolIntegrationManager, globalToolIntegrationManager, wrapToolWithElicitation, wrapToolsWithElicitation, createElicitationContext, confirmationMiddleware, validationMiddleware, loggingMiddleware, createRetryMiddleware, createTimeoutMiddleware, createToolMiddlewareChain, \n// MCP Enhancements - Elicitation Protocol\nElicitationProtocolAdapter, globalElicitationProtocol, isElicitationProtocolMessage, protocolMessageToElicitation, elicitationResponseToProtocol, createElicitationRequest, createElicitationResponse, createElicitationCancel, createTextInputRequest, createSelectRequest, createConfirmationRequest, createFormRequest, } from \"./mcp/index.js\";\nexport { logger } from \"./utils/logger.js\";\nexport { getPoolStats } from \"./utils/redis.js\";\n// ============================================================================\n// REAL-TIME SERVICES & TELEMETRY - Enterprise Platform Features\n// ============================================================================\n// Real-time Services (Phase 1) - Basic SSE functionality only\n// export { createEnhancedChatService } from './chat/index.js';\n// export type * from './services/types.js';\n// Optional Telemetry (Phase 2) - Telemetry service initialization\nexport async function initializeTelemetry() {\n    try {\n        const result = await init();\n        return !!result;\n    }\n    catch {\n        return false;\n    }\n}\nexport async function getTelemetryStatus() {\n    return getStatus();\n}\n// ============================================================================\n// EVALUATION SYSTEM - Comprehensive Response Evaluation & Scoring\n// ============================================================================\n/**\n * Evaluation System Exports\n *\n * A comprehensive evaluation framework for assessing AI response quality,\n * with support for RAGAS-style metrics, custom scorers, and pipeline-based evaluation.\n *\n * @example\n * ```typescript\n * import {\n *   Evaluator,\n *   ScorerRegistry,\n *   EvaluationPipeline,\n *   createFaithfulnessScorer,\n *   createAnswerRelevancyScorer,\n * } from '@juspay/neurolink';\n *\n * // Create a pipeline with multiple scorers\n * const pipeline = new EvaluationPipeline({\n *   scorers: [\n *     createFaithfulnessScorer({ model: 'gpt-4' }),\n *     createAnswerRelevancyScorer({ model: 'gpt-4' }),\n *   ],\n * });\n *\n * // Run evaluation\n * const result = await pipeline.evaluate({\n *   question: 'What is quantum computing?',\n *   answer: 'Quantum computing uses quantum mechanics...',\n *   context: ['Quantum computing is a type of computation...'],\n * });\n * ```\n */\nexport { \n// Main Evaluator\nEvaluator, \n// Factory and Registry (Mastra-inspired patterns)\nEvaluationAggregator, EvaluatorFactory, getEvaluatorFactory, getEvaluatorRegistry, \n// Error utilities\nevaluationErrors, isRetryableEvaluationError, isEvaluationError, createEvaluationFailedError, createParseError, createStrategyNotFoundError, createProviderError, createMaxRetriesExceededError, createBatchEvaluationError, createConfigurationError, contextToErrorContext, \n// Hooks\ncreateLangfuseAdapter, createMockLangfuseClient, startLangfuseAdapter, createConsoleLoggerHook, createMetricsCollectorHook, ObservabilityHooks, observabilityHooks, pipelineToSpanAttributes, scorerToSpanAttributes, \n// Pipeline\ncreateAndInitializePipeline, createPipeline, EvaluationPipeline, PipelineBuilder, Pipelines, CODE_GENERATION_PIPELINE, COMPREHENSIVE_PIPELINE, CUSTOMER_SUPPORT_PIPELINE, getPreset, getPresetNames, MINIMAL_PIPELINE, QUALITY_PIPELINE, RAG_PIPELINE, SAFETY_PIPELINE, SUMMARIZATION_PIPELINE, \n// Strategies\nBatchStrategy, createBatchStrategy, evaluateBatch, streamBatchEvaluation, createSamplingStrategy, DEFAULT_SAMPLING_CONFIG, SamplingStrategies, SamplingStrategy, \n// Reporting\ncreateMetricsCollector, globalMetricsCollector, MetricsCollector, createReportGenerator, ReportGenerator, Reports, \n// Scorers - Base\nBaseScorer, DEFAULT_SCORE_SCALE as EVAL_DEFAULT_SCORE_SCALE, \n// Scorers - Custom utilities\ncomposeScorers, createConditionalScorer, createFunctionScorer, createInvertedScorer, createKeywordScorer, createRegexScorer, createScorerMetadata, createSimpleLengthScorer, \n// Scorers - LLM-based\nAnswerRelevancyScorer, createAnswerRelevancyScorer, BaseLLMScorer, DEFAULT_LLM_SCORER_CONFIG, BiasDetectionScorer, createBiasDetectionScorer, ContextPrecisionScorer, createContextPrecisionScorer, ContextRelevancyScorer, createContextRelevancyScorer, createFaithfulnessScorer, FaithfulnessScorer, createHallucinationScorer, HallucinationScorer, createPromptAlignmentScorer, PromptAlignmentScorer, createSummarizationScorer, SummarizationScorer, createToneConsistencyScorer, ToneConsistencyScorer, createToxicityScorer, ToxicityScorer, \n// Scorers - Rule-based\nBaseRuleScorer, DEFAULT_RULE_SCORER_CONFIG, createContentSimilarityScorer, createFormatScorer, FormatScorerPresets, createKeywordCoverageScorer, createLengthScorer, LengthScorerPresets, \n// Scorers - Builder & Registry\nScorerBuilder, Scorers, ScorerRegistry, } from \"./evaluation/index.js\";\n// ============================================================================\n// BACKWARD COMPATIBILITY: Legacy generateText Function Exports\n// ============================================================================\n// Export legacy types for backward compatibility\n/**\n * Legacy generateText function for backward compatibility.\n *\n * Provides standalone text generation function for existing code.\n * For new code, use {@link NeuroLink.generate} instead which provides\n * more features including streaming, tools, and structured output.\n *\n * @category Legacy\n * @deprecated Use {@link NeuroLink.generate} for new code\n *\n * @param options - Text generation options\n * @param options.prompt - Input prompt text\n * @param options.provider - AI provider name (e.g., 'bedrock', 'openai')\n * @param options.model - Model name to use\n * @param options.temperature - Sampling temperature (0-2)\n * @param options.maxTokens - Maximum tokens to generate\n * @returns Promise resolving to text generation result with content and metadata\n *\n * @example Basic text generation\n * ```typescript\n * import { generateText } from '@juspay/neurolink';\n *\n * const result = await generateText({\n *   prompt: 'Explain quantum computing in simple terms',\n *   provider: 'bedrock',\n *   model: 'claude-3-sonnet'\n * });\n * console.log(result.content);\n * ```\n *\n * @example With temperature control\n * ```typescript\n * const result = await generateText({\n *   prompt: 'Write a creative story',\n *   provider: 'openai',\n *   temperature: 1.5,\n *   maxTokens: 500\n * });\n * ```\n *\n * @see {@link NeuroLink.generate} for modern API with more features\n * @since 1.0.0\n */\nexport async function generateText(options) {\n    // Create instance on-demand without auto-instantiation\n    const neurolink = new NeuroLink();\n    return await neurolink.generateText(options);\n}\n// ============================================================================\n// WORKFLOW ENGINE - Multi-Model Orchestration with Judge Scoring\n// ============================================================================\n/**\n * Workflow Engine for multi-model ensembles with judge-based evaluation\n *\n * Enables sophisticated AI orchestration patterns:\n * - Ensemble execution (parallel multi-model)\n * - Chain execution (sequential fallback)\n * - Adaptive execution (tier-based quality/cost optimization)\n * - Multi-judge voting for consensus\n *\n * @example\n * ```typescript\n * import { neurolink, CONSENSUS_3_WORKFLOW } from '@juspay/neurolink';\n *\n * // Use workflow via generate() with workflowConfig option\n * const result = await neurolink.generate({\n *   input: { text: 'Explain quantum computing' },\n *   workflowConfig: CONSENSUS_3_WORKFLOW,\n * });\n *\n * console.log('Best response:', result.content);\n * console.log('Selected model:', result.workflow?.selectedModel);\n * console.log('Total time:', result.workflow?.metrics?.totalTime);\n * ```\n */\n// Workflow registry\nexport { clearRegistry as clearWorkflowRegistry, getWorkflow, listWorkflows, registerWorkflow, } from \"./workflow/core/workflowRegistry.js\";\n// Workflow execution\nexport { runWorkflow } from \"./workflow/core/workflowRunner.js\";\n// Workflow constants\nexport { DEFAULT_SCORE_SCALE, WORKFLOW_ENGINE_VERSION, } from \"./workflow/index.js\";\n// Core workflow types\nexport { calculateModelMetrics, compareWorkflows, generateSummaryStats, } from \"./workflow/utils/workflowMetrics.js\";\n// Validation and metrics\nexport { validateWorkflow } from \"./workflow/utils/workflowValidation.js\";\n// Pre-built workflows - Adaptive\nexport { BALANCED_ADAPTIVE_WORKFLOW, createAdaptiveWorkflow, QUALITY_MAX_WORKFLOW, SPEED_FIRST_WORKFLOW, } from \"./workflow/workflows/adaptiveWorkflow.js\";\n// Pre-built workflows - Consensus\nexport { CONSENSUS_3_FAST_WORKFLOW, CONSENSUS_3_WORKFLOW, createConsensus3WithPrompt, } from \"./workflow/workflows/consensusWorkflow.js\";\n// Pre-built workflows - Fallback\nexport { AGGRESSIVE_FALLBACK_WORKFLOW, FAST_FALLBACK_WORKFLOW, } from \"./workflow/workflows/fallbackWorkflow.js\";\n// Pre-built workflows - Multi-judge\nexport { createMultiJudgeWorkflow, MULTI_JUDGE_3_WORKFLOW, MULTI_JUDGE_5_WORKFLOW, } from \"./workflow/workflows/multiJudgeWorkflow.js\";\n// ============================================================================\n// SERVER ADAPTERS - HTTP API Framework Integration\n// ============================================================================\n// Server Types\n/**\n * Server Adapters for exposing NeuroLink as HTTP APIs\n *\n * Supports multiple frameworks: Hono, Express, Fastify, Koa\n *\n * @example\n * ```typescript\n * import { NeuroLink } from '@juspay/neurolink';\n * import { createServer } from '@juspay/neurolink/server';\n *\n * const neurolink = new NeuroLink({ provider: 'openai' });\n * const server = await createServer(neurolink, {\n *   framework: 'hono',\n *   config: { port: 3000 }\n * });\n * await server.start();\n * ```\n */\nexport { \n// Validation\nAgentExecuteRequestSchema, AlreadyRunningError, AuthenticationError, AuthorizationError, \n// Framework Adapters\nBaseServerAdapter, ConfigurationError, \n// Routes\ncreateAgentRoutes, createAgentWebSocketHandler, createAllRoutes, \n// Middleware\ncreateAuthMiddleware, createCacheInvalidator, createCacheMiddleware, createCompressionMiddleware, createDataStreamResponse, \n// Streaming\ncreateDataStreamWriter, createErrorHandlingMiddleware, createErrorResponse, createFieldValidator, createHealthRoutes, createLoggingMiddleware, createMCPRoutes, createMemoryRoutes, createNDJSONHeaders, createOpenAPIGenerator, createRateLimitMiddleware, createRequestIdMiddleware, createRequestValidationMiddleware, createRoleMiddleware, createSecurityHeadersMiddleware, \n// Server Factory\ncreateServer, createSlidingWindowRateLimitMiddleware, createSSEHeaders, createTimingMiddleware, createToolRoutes, \n// Error Constants\nErrorCategory, ErrorRecoveryStrategies, ErrorSeverity, ExpressServerAdapter, FastifyServerAdapter, generateOpenAPIFromConfig, generateOpenAPISpec, HandlerError, HonoServerAdapter, InMemoryCacheStore, InMemoryRateLimitStore, InvalidAuthenticationError, KoaServerAdapter, MissingDependencyError, NotRunningError, \n// OpenAPI\npipeAsyncIterableToDataStream, RateLimitError, RouteConflictError, RouteNotFoundError, registerAllRoutes, \n// Errors\nServerAdapterError, ServerAdapterErrorCode, ServerAdapterFactory, ServerNameParamSchema, ServerRateLimitError, ServerStartError, ServerStopError, ServerValidationError, SessionIdParamSchema, StreamAbortedError, StreamingError, TimeoutError, ToolArgumentsSchema, ToolExecuteRequestSchema, ToolNameParamSchema, ToolSearchQuerySchema, ValidationError, validateParams, validateQuery, validateRequest, WebSocketConnectionError, \n// WebSocket\nWebSocketConnectionManager, WebSocketError, WebSocketMessageRouter, wrapError, } from \"./server/index.js\";\n// ============================================================================\n// RAG DOCUMENT PROCESSING - Retrieval-Augmented Generation\n// ============================================================================\n// Export RAG types\n/**\n * RAG (Retrieval-Augmented Generation) Document Processing\n *\n * Comprehensive RAG system with document loading, chunking, embedding,\n * retrieval, and context assembly capabilities.\n *\n * @example\n * ```typescript\n * import {\n *   MDocument,\n *   loadDocument,\n *   RAGPipeline,\n *   ChunkerRegistry\n * } from '@juspay/neurolink';\n *\n * // Load and process a document\n * const doc = await loadDocument('/path/to/document.md');\n * await doc.chunk({ strategy: 'markdown', config: { maxSize: 1000 } });\n *\n * // Use the full RAG pipeline\n * const pipeline = new RAGPipeline({\n *   embeddingModel: { provider: 'openai', modelName: 'text-embedding-3-small' },\n *   generationModel: { provider: 'openai', modelName: 'gpt-4o-mini' }\n * });\n * await pipeline.ingest(['./docs/*.md']);\n * const response = await pipeline.query('What are the key features?');\n * console.log(response.answer);\n * ```\n */\nexport { \n// Pipeline\nassembleContext, \n// Reranker\nbatchRerank, \n// Chunking\nCharacterChunker, ChunkerRegistry, CohereRelevanceScorer, CrossEncoderReranker, \n// Document Processing\nCSVLoader, chunkText, createChunker, createContextWindow, \n// Retrieval\ncreateHybridSearch, createRAGPipeline, createVectorQueryTool, \n// Resilience\nexecuteWithCircuitBreaker, \n// Metadata Extraction\nextractMetadata, formatContextWithCitations, \n// Graph RAG\nGraphRAG, getAvailableStrategies, getCircuitBreaker, getDefaultChunkerConfig, getRecommendedStrategy, HTMLChunker, HTMLLoader, InMemoryBM25Index, InMemoryVectorStore, JSONChunker as RAGJSONChunker, JSONLoader, LaTeXChunker, LLMMetadataExtractor, linearCombination, loadDocument, loadDocuments, MarkdownChunker, MarkdownLoader, MDocument, PDFLoader, \n// RAG Integration for generate/stream\nprepareRAGTool, processDocument, RAGCircuitBreaker, RAGCircuitBreakerManager, RAGPipeline, RAGRetryHandler, RecursiveChunker, ragCircuitBreakerManager, reciprocalRankFusion, rerank, SemanticChunker, SentenceChunker, simpleRerank, summarizeContext, TextLoader, TokenChunker, WebLoader, } from \"./rag/index.js\";\n// Legacy RAGAS evaluation classes are now exported from the unified\n// evaluation block above (via ./evaluation/index.js barrel).\n// ContextBuilder is the only class not covered by the barrel export.\nexport { ContextBuilder } from \"./evaluation/contextBuilder.js\";\n// ============================================================================\n// AUTHENTICATION PROVIDERS - Multi-provider Auth Integration\n// ============================================================================\n// Single-sourced from ./auth/index.js.  Only aliases that differ from the\n// canonical export name are listed explicitly; everything else is re-exported\n// as-is.\nexport { \n// Factory & Registry\nAuthProviderFactory, createAuthProvider, AuthProviderRegistry, \n// Unified error factory\nAuthError as AuthErrorFactory, AuthErrorCodes, \n// Base Provider\nBaseAuthProvider, InMemorySessionStorage, AuthProviderError, \n// Auth Middleware (aliased to avoid conflict with server createAuthMiddleware)\ncreateAuthMiddleware as createAuthProviderMiddleware, createRBACMiddleware, createProtectedMiddleware, createExpressAuthMiddleware, createRequestContext, extractToken, AuthMiddlewareError, AuthMiddlewareErrorCodes, \n// Rate Limiting Middleware\nUserRateLimiter, MemoryRateLimitStorage, RedisRateLimitStorage, createRateLimitByUserMiddleware, createAuthenticatedRateLimitMiddleware, createRateLimitStorage, \n// Session Management\nSessionManager, MemorySessionStorage, RedisSessionStorage, createSessionStorage, \n// Auth Context\nAuthContextHolder, globalAuthContext, getAuthContext, getCurrentUser, getCurrentSession, isAuthenticated, hasRole, hasAnyRole, hasPermission, hasAllPermissions, requireAuth, requireRole, requirePermission, requireUser, runWithAuthContext, createAuthenticatedContext, \n// Request Context\nRequestContext, NEUROLINK_RESOURCE_ID_KEY, NEUROLINK_THREAD_ID_KEY, \n// Server Bridge\ncreateAuthValidatorFromProvider, } from \"./auth/index.js\";\n"]}