#pragma once

#include <string>
#include <optional>

namespace secondvoice {

struct ClaudeResponse {
    std::string text;
};

class ClaudeClient {
public:
    ClaudeClient(const std::string& api_key);

    std::optional<ClaudeResponse> translate(
        const std::string& chinese_text,
        const std::string& system_prompt = "",
        int max_tokens = 1024,
        float temperature = 0.3f
    );

private:
    std::string api_key_;
    static constexpr const char* API_URL = "https://api.anthropic.com/v1/messages";
    static constexpr const char* MODEL = "claude-3-5-haiku-20241022";
    static constexpr const char* API_VERSION = "2023-06-01";
};

} // namespace secondvoice
