/**
 * AnthropicDirectAdapter — wraps @anthropic-ai/sdk for direct API access.
 *
 * BYOM: defaultModel is a constructor param default only.
 * No model string is hardcoded at module scope.
 *
 * Maps Anthropic SDK response to ChatResponse canonical format.
 */
import Anthropic from "@anthropic-ai/sdk";
import type { ChatRequest, ChatResponse, LLMProviderPort, StreamDelta } from "../../ports/llm-provider.js";
export interface AnthropicDirectAdapterConfig {
    apiKey: string;
    /** Default model to use when ChatRequest.model is not specified. */
    defaultModel?: string;
    /** For testing only — inject a pre-built client instead of creating one. */
    _clientOverride?: Anthropic;
}
export declare class AnthropicDirectAdapter implements LLMProviderPort {
    private readonly client;
    private readonly defaultModel;
    constructor(config: AnthropicDirectAdapterConfig);
    estimateCost(req: ChatRequest): {
        usd: number;
    };
    complete(req: ChatRequest): Promise<ChatResponse>;
    private _doComplete;
    stream(req: ChatRequest): AsyncIterable<StreamDelta>;
}
//# sourceMappingURL=anthropic-direct.d.ts.map