@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
43 lines (42 loc) • 1.83 kB
TypeScript
/**
* YAML/JSON proxy configuration loader with environment variable resolution.
*
* Supports:
* - Loading config from YAML or JSON files
* - Environment variable interpolation: ${VAR_NAME} and ${VAR_NAME:-default}
* - Multi-account proxy configurations
* - Defaults for optional fields
*
* YAML parsing uses `js-yaml` when available (dynamic import), otherwise
* falls back to JSON.parse.
*/
import type { LoadProxyConfigOptions, ProxyConfigFile } from "../types/index.js";
/**
* Replace all `${VAR}` / `${VAR:-default}` references in a string.
*
* Resolution order:
* 1. Look up `VAR` in the provided env map (or process.env)
* 2. If not found, use the `:-default` value when present
* 3. If no default, leave the original `${VAR}` token so callers can detect
* unresolved variables.
*/
export declare function resolveEnvVars(value: string, env?: Record<string, string | undefined>): string;
/**
* Validate the shape of a parsed proxy config.
* Returns an array of human-readable error strings (empty = valid).
*/
export declare function validateProxyConfig(config: unknown): string[];
/**
* Load and parse a proxy configuration file (YAML or JSON).
*
* @param filePath - Absolute or relative path to the config file.
* @param options - Optional settings for env resolution.
* @returns Parsed and validated ProxyConfigFile.
* @throws When the file cannot be read, parsed, or fails validation.
*/
export declare function loadProxyConfig(filePath: string, options?: LoadProxyConfigOptions): Promise<ProxyConfigFile>;
/**
* Load proxy config from a raw string (YAML or JSON) instead of a file path.
* Useful for testing or when config is stored in environment variables.
*/
export declare function parseProxyConfigString(content: string, options?: LoadProxyConfigOptions): Promise<ProxyConfigFile>;