import { AIModelConfig, AIModelStrategy, AIRequest, AIResponse } from '../types/ai.js';
/**
 * Implementation of the Claude AI model strategy
 */
export declare class ClaudeModelStrategy implements AIModelStrategy {
    private config;
    constructor(config: AIModelConfig);
    /**
     * Get the model configuration
     * @returns The model config
     */
    getConfig(): AIModelConfig;
    /**
     * Generate text using Claude API (fulfills AIModelStrategy interface)
     * @param request - The AI request with prompt and options
     * @returns The AI response
     */
    generate(request: AIRequest): Promise<AIResponse>;
    /**
     * Analyze text using Claude API
     * @param request - The AI request with prompt and options
     * @returns The AI response
     */
    analyze(request: AIRequest): Promise<AIResponse>;
    /**
     * Check if the Claude API is available
     * @returns True if the API is available and the key is valid
     */
    isAvailable(): Promise<boolean>;
    /**
     * Calculate the cost of the API call based on token usage
     * @param inputTokens - Number of input tokens
     * @param outputTokens - Number of output tokens
     * @returns The cost of the API call in USD
     */
    private calculateCost;
}
//# sourceMappingURL=claude.d.ts.map