use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ClaimSignatureItem {
#[serde(rename = "rewardType")]
pub reward_type: RewardType,
#[serde(rename = "sigPayload")]
pub sig_payload: models::SigPayload,
#[serde(rename = "signature")]
pub signature: String,
}
impl ClaimSignatureItem {
pub fn new(reward_type: RewardType, sig_payload: models::SigPayload, signature: String) -> ClaimSignatureItem {
ClaimSignatureItem {
reward_type,
sig_payload,
signature,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum RewardType {
#[serde(rename = "Blue")]
Blue,
#[serde(rename = "Sui")]
Sui,
#[serde(rename = "Wal")]
Wal,
#[serde(rename = "Cash")]
Cash,
}
impl Default for RewardType {
fn default() -> RewardType {
Self::Blue
}
}