import { BaseAIProvider } from './base-provider.js';
import { AIRequest, AIResponse, ModelCapabilities, StreamChunk, AdaptationSuggestion, AIProviderConfig } from '../types/common.js';

/**
 * Anthropic Claude provider configuration
 */
export interface ClaudeConfig extends AIProviderConfig {
    model?: 'claude-3-opus-20240229' | 'claude-3-sonnet-20240229' | 'claude-3-haiku-20240307';
    anthropicVersion?: string;
}
/**
 * Claude provider for Anthropic's Claude models
 */
export declare class ClaudeProvider extends BaseAIProvider {
    private anthropic;
    private model;
    constructor(config: ClaudeConfig);
    getProviderName(): string;
    getCapabilities(): ModelCapabilities;
    getAvailableModels(): string[];
    generate(request: AIRequest): Promise<AIResponse>;
    generateStream(request: AIRequest): AsyncGenerator<StreamChunk, void, unknown>;
    analyzeAccessibility(content: string, currentPreferences: Record<string, unknown>, context?: Record<string, unknown>): Promise<AdaptationSuggestion[]>;
    simplifyContent(content: string, targetLevel: 'simple' | 'intermediate' | 'advanced', context?: Record<string, unknown>): Promise<string>;
    private initializeClient;
    private mapResponse;
    private mapStopReason;
    protected parseAdaptationSuggestions(response: string): AdaptationSuggestion[];
    estimateCost(request: AIRequest): number;
}
//# sourceMappingURL=claude-provider.d.ts.map