import { LangMessage, LangOptions, LanguageProvider } from "../language-provider.ts";
import { LangMessages } from "../messages.ts";
export type AnthropicLangOptions = {
    apiKey: string;
    model?: string;
    systemPrompt?: string;
    maxTokens?: number;
    extendedThinking?: boolean;
    defaultOptions?: LangOptions;
};
export type AnthropicLangConfig = {
    apiKey: string;
    model: string;
    systemPrompt?: string;
    maxTokens?: number;
    extendedThinking?: boolean;
};
export declare class AnthropicLang extends LanguageProvider {
    _config: AnthropicLangConfig;
    constructor(options: AnthropicLangOptions);
    ask(prompt: string, options?: LangOptions): Promise<LangMessages>;
    chat(messages: LangMessage[] | LangMessages, options?: LangOptions): Promise<LangMessages>;
    private prepareRequest;
    protected transformMessagesForProvider(messages: LangMessages): any[];
    private mapUserMessageItems;
    private mapAssistantMessageItems;
    private mapToolResultItems;
    private appendImageBlocks;
    private mapImageItemToAnthropicImageBlock;
    private getVisionHintText;
}
