import type { ProviderModel, WorkerType } from '../kernel/types.js'; import type { CloudProviderConfig, WorkerModelPref } from './config-schema.js'; import { type FreeProviderPreset } from './free-providers.js'; export interface DiscoveredModel { providerId: string; model: ProviderModel; } export interface ProviderTestResult { providerId: string; name: string; ok: boolean; error?: string; modelCount: number; latencyMs?: number; } export declare function testOllamaProvider(baseURL: string, fallbackURL?: string, timeoutMs?: number): Promise; export declare function testCloudProvider(cfg: CloudProviderConfig, timeoutMs?: number): Promise; export declare function testProviderInteractive(label: string, fn: () => Promise): Promise; /** * Discover all available models across all configured providers (Ollama + cloud). * Returns a flat list tagged with providerId. */ export declare function discoverAllModels(opts: { masterUrl: string; tailscaleMasterUrl?: string; cloudProviders: CloudProviderConfig[]; }): Promise; /** * Build a friendly display label for a discovered model. */ export declare function modelLabel(dm: DiscoveredModel): string; /** * Suggest a recommended model for a worker type from the discovered pool. * Falls back to the provider preset's recommended list if discovery found nothing. */ export declare function suggestModelForWorker(workerType: WorkerType, discovered: DiscoveredModel[]): DiscoveredModel | undefined; /** * Build a complete workerModels map by suggesting a model for each builtin worker type. */ export declare function suggestAllWorkerModels(discovered: DiscoveredModel[]): Partial>; export type { FreeProviderPreset };