use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct Event {
#[serde(rename = "action", skip_serializing_if = "Option::is_none")]
pub action: Option<models::Action>,
#[serde(rename = "createdAt", skip_serializing_if = "Option::is_none")]
pub created_at: Option<String>,
#[serde(rename = "destination", skip_serializing_if = "Option::is_none")]
pub destination: Option<String>,
#[serde(rename = "destinationAction", skip_serializing_if = "Option::is_none")]
pub destination_action: Option<models::EventAction>,
#[serde(rename = "device", skip_serializing_if = "Option::is_none")]
pub device: Option<Box<models::Device>>,
#[serde(rename = "deviceId", skip_serializing_if = "Option::is_none")]
pub device_id: Option<String>,
#[serde(rename = "entrypoint", skip_serializing_if = "Option::is_none")]
pub entrypoint: Option<String>,
#[serde(rename = "httpMethod", skip_serializing_if = "Option::is_none")]
pub http_method: Option<models::HttpMethod>,
#[serde(rename = "id", skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "leadScore", skip_serializing_if = "Option::is_none")]
pub lead_score: Option<Box<models::LeadScore>>,
#[serde(rename = "leadScoreId", skip_serializing_if = "Option::is_none")]
pub lead_score_id: Option<String>,
#[serde(rename = "link", skip_serializing_if = "Option::is_none")]
pub link: Option<Box<models::Link>>,
#[serde(rename = "linkId", skip_serializing_if = "Option::is_none")]
pub link_id: Option<String>,
#[serde(rename = "scannedAt", skip_serializing_if = "Option::is_none")]
pub scanned_at: Option<String>,
#[serde(rename = "traces", skip_serializing_if = "Option::is_none")]
pub traces: Option<Vec<models::EventTrace>>,
#[serde(rename = "triggeredBy", skip_serializing_if = "Option::is_none")]
pub triggered_by: Option<models::TriggeredBy>,
#[serde(rename = "updatedAt", skip_serializing_if = "Option::is_none")]
pub updated_at: Option<String>,
#[serde(rename = "visitType", skip_serializing_if = "Option::is_none")]
pub visit_type: Option<models::VisitType>,
#[serde(rename = "visitor", skip_serializing_if = "Option::is_none")]
pub visitor: Option<Box<models::Visitor>>,
#[serde(rename = "visitorId", skip_serializing_if = "Option::is_none")]
pub visitor_id: Option<String>,
#[serde(rename = "workspace", skip_serializing_if = "Option::is_none")]
pub workspace: Option<Box<models::Workspace>>,
#[serde(rename = "workspaceId", skip_serializing_if = "Option::is_none")]
pub workspace_id: Option<String>,
}
impl Event {
pub fn new() -> Event {
Event {
action: None,
created_at: None,
destination: None,
destination_action: None,
device: None,
device_id: None,
entrypoint: None,
http_method: None,
id: None,
lead_score: None,
lead_score_id: None,
link: None,
link_id: None,
scanned_at: None,
traces: None,
triggered_by: None,
updated_at: None,
visit_type: None,
visitor: None,
visitor_id: None,
workspace: None,
workspace_id: None,
}
}
}