import type { LLMProvider, ChatRequest, ChatResponse, ProviderBatchAdapter, ProviderRuntimeMetadata, ProviderRuntimeMetadataDeps } from './interface.js';
import type { CacheHitTracker } from './cache-strategy.js';
/**
 * AnthropicProvider — calls the Anthropic Messages API directly via fetch.
 * System message is a top-level field (not a message). Tool results are
 * `tool_result` content blocks inside `user` messages.
 * Supports SSE streaming when onDelta is provided.
 */
export declare class AnthropicProvider implements LLMProvider {
    readonly name = "anthropic";
    readonly models: string[];
    readonly batch: ProviderBatchAdapter;
    private readonly apiKey;
    private readonly cacheHitTracker;
    constructor(apiKey: string, cacheHitTracker?: Pick<CacheHitTracker, 'getHitRate' | 'recordTurn'>);
    chat(params: ChatRequest): Promise<ChatResponse>;
    describeRuntime(deps: ProviderRuntimeMetadataDeps): Promise<ProviderRuntimeMetadata>;
    isConfigured(): boolean;
    private createChatBatch;
    private retrieveBatch;
    private cancelBatch;
    private getBatchResults;
    private batchHeaders;
    private toAnthropicBatchMessageParams;
    private mapAnthropicBatchStatus;
    private readJsonResponse;
    private parseAnthropicBatchResult;
    private anthropicBatchMessageToChatResponse;
}
//# sourceMappingURL=anthropic.d.ts.map