bluefin_api 1.7.0

Bluefin API
Documentation
/*
 * Bluefin API
 *
 * Bluefin API
 *
 * The version of the OpenAPI document: 1.0.0
 * 
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct MarkAsClaimedRequest {
    /// The interval number
    #[serde(rename = "intervalNumber")]
    pub interval_number: i32,
    /// The campaign name
    #[serde(rename = "campaignName")]
    pub campaign_name: CampaignName,
    /// The transaction digest of the claim
    #[serde(rename = "txnDigest")]
    pub txn_digest: String,
}

impl MarkAsClaimedRequest {
    pub fn new(interval_number: i32, campaign_name: CampaignName, txn_digest: String) -> MarkAsClaimedRequest {
        MarkAsClaimedRequest {
            interval_number,
            campaign_name,
            txn_digest,
        }
    }
}
/// The campaign name
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum CampaignName {
    #[serde(rename = "TRADE_AND_EARN")]
    TradeAndEarn,
    #[serde(rename = "WAL_TRADE_AND_EARN")]
    WalTradeAndEarn,
    #[serde(rename = "AFFILIATE")]
    Affiliate,
}

impl Default for CampaignName {
    fn default() -> CampaignName {
        Self::TradeAndEarn
    }
}