#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
pub struct Email {
#[serde(rename = "object")]
pub object: Object,
#[serde(rename = "id")]
pub id: String,
#[serde(rename = "slug", skip_serializing_if = "Option::is_none")]
pub slug: Option<String>,
#[serde(rename = "from_email_name")]
pub from_email_name: String,
#[serde(rename = "email_address_id")]
pub email_address_id: Option<String>,
#[serde(rename = "to_email_address")]
pub to_email_address: String,
#[serde(rename = "user_id", skip_serializing_if = "Option::is_none")]
pub user_id: Option<String>,
#[serde(rename = "subject")]
pub subject: String,
#[serde(rename = "body")]
pub body: String,
#[serde(rename = "body_plain", skip_serializing_if = "Option::is_none")]
pub body_plain: Option<String>,
#[serde(rename = "status")]
pub status: String,
#[serde(rename = "data", skip_serializing_if = "Option::is_none")]
pub data: Option<serde_json::Value>,
#[serde(rename = "delivered_by_clerk")]
pub delivered_by_clerk: bool,
}
impl Email {
pub fn new(
object: Object,
id: String,
from_email_name: String,
email_address_id: Option<String>,
to_email_address: String,
subject: String,
body: String,
status: String,
delivered_by_clerk: bool,
) -> Email {
Email {
object,
id,
slug: None,
from_email_name,
email_address_id,
to_email_address,
user_id: None,
subject,
body,
body_plain: None,
status,
data: None,
delivered_by_clerk,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Object {
#[serde(rename = "email")]
Email,
}
impl Default for Object {
fn default() -> Object {
Self::Email
}
}