use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ActivateReferralDtoData {
#[serde(rename = "sender")]
pub sender: String,
#[serde(rename = "intent")]
pub intent: Intent,
#[serde(rename = "signedAt")]
pub signed_at: i32,
#[serde(rename = "subaccount")]
pub subaccount: String,
}
impl ActivateReferralDtoData {
pub fn new(
sender: String,
intent: Intent,
signed_at: i32,
subaccount: String,
) -> ActivateReferralDtoData {
ActivateReferralDtoData {
sender,
intent,
signed_at,
subaccount,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Intent {
#[serde(rename = "0")]
REFERRAL_ACTIVATION,
#[serde(rename = "1")]
REFERRAL_CLAIM,
#[serde(rename = "2")]
REFERRAL_READ,
}
impl Default for Intent {
fn default() -> Intent {
Self::REFERRAL_ACTIVATION
}
}