use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
#[serde(tag = "event")]
pub enum MessageStreamEvent {
#[serde(rename = "thread.message.created")]
AnyOf(Box<models::MessageStreamEventAnyOf>),
#[serde(rename = "thread.message.in_progress")]
AnyOf1(serde_json::Value),
#[serde(rename = "thread.message.delta")]
AnyOf2(serde_json::Value),
#[serde(rename = "thread.message.completed")]
AnyOf3(serde_json::Value),
#[serde(rename = "thread.message.incomplete")]
AnyOf4(serde_json::Value),
}