use serde::{Deserialize, Serialize};
use crate::models::common::Price;
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct InboundSmsResponse {
#[serde(default)]
pub results: Vec<InboundSms>,
pub message_count: Option<i32>,
pub pending_message_count: Option<i32>,
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct InboundSms {
pub application_id: Option<String>,
pub message_id: Option<String>,
pub from: Option<String>,
pub to: Option<String>,
pub text: Option<String>,
pub clean_text: Option<String>,
pub keyword: Option<String>,
pub received_at: Option<String>,
pub sms_count: Option<i32>,
pub price: Option<Price>,
pub callback_data: Option<String>,
pub entity_id: Option<String>,
pub campaign_reference_id: Option<String>,
}
#[derive(Debug, Clone, Default, Serialize)]
#[serde(rename_all = "camelCase")]
pub struct InboundQuery {
#[serde(skip_serializing_if = "Option::is_none")]
pub limit: Option<i32>,
#[serde(skip_serializing_if = "Option::is_none")]
pub application_id: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub entity_id: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub campaign_reference_id: Option<String>,
}