/**
 * Unified model fetching for all provider types.
 *
 * Determines the right endpoint URL, auth headers, and response parsing
 * based on the API compatibility type:
 * - openai-compatible: GET {baseUrl}/models with Bearer auth
 * - ollama: GET {baseUrl}/api/tags (no auth)
 * - anthropic: GET {baseUrl}/models with X-Api-Key header
 * - google: GET {baseUrl}/models with x-goog-api-key header
 */
export interface FetchedModel {
    id: string;
    name: string;
}
export interface FetchModelsResult {
    success: boolean;
    models: FetchedModel[];
    error?: string;
}
export type ApiCompatibility = 'openai-compatible' | 'ollama' | 'anthropic' | 'google';
interface FetchModelsOptions {
    timeoutMs?: number;
}
/**
 * Fetch available models from a provider.
 * @param baseUrl The provider's base URL
 * @param apiCompatibility The API type to determine endpoint/auth/parsing
 * @param apiKey Optional API key for authentication
 * @param options Optional settings
 */
export declare function fetchModels(baseUrl: string, apiCompatibility: ApiCompatibility, apiKey?: string, options?: FetchModelsOptions): Promise<FetchModelsResult>;
export {};
//# sourceMappingURL=fetch-models.d.ts.map