use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct GoogleBusinessPlatformDataOffer {
#[serde(rename = "offerType", skip_serializing_if = "Option::is_none")]
pub offer_type: Option<OfferType>,
#[serde(rename = "redeemOnlineUrl", skip_serializing_if = "Option::is_none")]
pub redeem_online_url: Option<String>,
#[serde(rename = "termsConditions", skip_serializing_if = "Option::is_none")]
pub terms_conditions: Option<String>,
#[serde(rename = "couponCode", skip_serializing_if = "Option::is_none")]
pub coupon_code: Option<String>,
}
impl GoogleBusinessPlatformDataOffer {
pub fn new() -> GoogleBusinessPlatformDataOffer {
GoogleBusinessPlatformDataOffer {
offer_type: None,
redeem_online_url: None,
terms_conditions: None,
coupon_code: None,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum OfferType {
#[serde(rename = "OFFER")]
Offer,
#[serde(rename = "BUY_ONE_GET_ONE")]
BuyOneGetOne,
}
impl Default for OfferType {
fn default() -> OfferType {
Self::Offer
}
}