use http::StatusCode;
use serde::{Deserialize, Serialize};
use crate::claude::create_message::types::BetaMessage;
use crate::claude::types::{BetaErrorResponse, ClaudeResponseHeaders};
pub type ResponseBody = BetaMessage;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(untagged)]
#[allow(clippy::large_enum_variant)]
pub enum ClaudeCreateMessageResponse {
Success {
#[serde(with = "crate::claude::types::status_code_serde")]
stats_code: StatusCode,
headers: ClaudeResponseHeaders,
body: ResponseBody,
},
Error {
#[serde(with = "crate::claude::types::status_code_serde")]
stats_code: StatusCode,
headers: ClaudeResponseHeaders,
body: BetaErrorResponse,
},
}