/**
 * Provider adapter dispatcher. Selects the right adapter by provider key and
 * exposes a uniform `testConnection` / `listModels` surface to the catalog and
 * route layers.
 */
import type { AIConnectionTestResult, AIProviderKey } from '../types.js';
import type { AdapterContext, GenerateTextOptions, GenerateTextResult } from './http.js';
export type { AdapterContext, GenerateTextOptions, GenerateTextResult } from './http.js';
interface ProviderAdapter {
    testConnection(ctx: AdapterContext): Promise<AIConnectionTestResult>;
    listModels(ctx: AdapterContext): Promise<string[]>;
    generateText(ctx: AdapterContext, opts: GenerateTextOptions): Promise<GenerateTextResult>;
}
export declare function getAdapter(provider: AIProviderKey): ProviderAdapter;
export declare function testConnection(provider: AIProviderKey, ctx: AdapterContext): Promise<AIConnectionTestResult>;
export declare function listModels(provider: AIProviderKey, ctx: AdapterContext): Promise<string[]>;
export declare function generateText(provider: AIProviderKey, ctx: AdapterContext, opts: GenerateTextOptions): Promise<GenerateTextResult>;
//# sourceMappingURL=index.d.ts.map