import { ConfigManager } from '../config/config.js'; import { ProviderHealth, DuckResponse, MessageContent } from '../config/types.js'; import { ChatOptions, ModelInfo, IDuckProvider } from './types.js'; import { UsageService } from '../services/usage.js'; import { GuardrailsService } from '../guardrails/service.js'; export declare class ProviderManager { private providers; private healthStatus; protected configManager: ConfigManager; protected usageService?: UsageService; protected guardrailsService?: GuardrailsService; private defaultProvider?; constructor(configManager: ConfigManager, usageService?: UsageService, guardrailsService?: GuardrailsService); private initializeProviders; checkHealth(providerName?: string): Promise; askDuck(providerName: string | undefined, prompt: MessageContent, options?: Partial): Promise; compareDucks(prompt: MessageContent, providerNames?: string[], options?: Partial): Promise; compareDucksWithProgress(prompt: MessageContent, providerNames: string[] | undefined, options: Partial | undefined, onProviderComplete: (providerName: string, completed: number, total: number) => void): Promise; duckCouncil(prompt: MessageContent, options?: Partial): Promise; private askWithFailover; getProvider(name?: string): IDuckProvider; getAllProviders(): Array<{ name: string; info: ReturnType; health?: ProviderHealth; }>; getProviderNames(): string[]; getAvailableModels(providerName: string): Promise; getAllModels(): Promise>; validateModel(providerName: string, modelId: string): boolean; } //# sourceMappingURL=manager.d.ts.map