UNPKG

@nanocollective/nanocoder

Version:

A local-first CLI coding agent that brings the power of agentic coding tools like Claude Code and Gemini CLI to local models or controlled APIs like OpenRouter

72 lines 2.34 kB
import type { ProviderConfig, SdkProvider } from '../types/config.js'; import type { McpServerConfig } from './templates/mcp-templates.js'; interface ValidationResult { valid: boolean; errors: string[]; warnings: string[]; } interface ProviderTestResult { providerName: string; connected: boolean; error?: string; } /** * Validates the structure of the configuration object */ export declare function validateConfig(providers: ProviderConfig[], mcpServers: Record<string, McpServerConfig>): ValidationResult; /** * Tests connectivity to a provider */ export declare function testProviderConnection(provider: ProviderConfig, timeout?: number): Promise<ProviderTestResult>; /** * Provider configuration object format (for agents.config.json) */ interface ProviderConfigObject { nanocoder: { providers: Array<{ name: string; models: string[]; baseUrl?: string; apiKey?: string; organizationId?: string; timeout?: number; sdkProvider?: SdkProvider; }>; }; } /** * MCP configuration object format (for .mcp.json) * Uses Claude Code object format */ interface McpConfigObject { mcpServers: Record<string, McpServerConfig>; } /** * Builds the provider configuration object for agents.config.json */ export declare function buildProviderConfigObject(providers: ProviderConfig[]): ProviderConfigObject; /** * Builds the MCP configuration object for .mcp.json * Uses Claude Code object format (servers as object keys) */ export declare function buildMcpConfigObject(mcpServers: Record<string, McpServerConfig>): McpConfigObject; /** * @deprecated Use buildProviderConfigObject and buildMcpConfigObject instead * This function is kept for backward compatibility during migration */ export declare function buildConfigObject(providers: ProviderConfig[], mcpServers: Record<string, McpServerConfig>): ProviderConfigObject & { nanocoder: { providers: Array<{ name: string; models: string[]; baseUrl?: string; apiKey?: string; organizationId?: string; timeout?: number; sdkProvider?: SdkProvider; }>; mcpServers?: McpServerConfig[]; }; }; export {}; //# sourceMappingURL=validation.d.ts.map