one-click-sdk-rs 0.1.17

API for One-Click Swaps
Documentation
/*
 * 1Click Swap API
 *
 * API for One-Click Swaps
 *
 * The version of the OpenAPI document: 0.1
 * 
 * Generated by: https://openapi-generator.tech
 */

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

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct GetExecutionStatusResponse {
    /// Quote response from original request
    #[serde(rename = "quoteResponse")]
    pub quote_response: Box<models::QuoteResponse>,
    #[serde(rename = "status")]
    pub status: Status,
    /// Last time the state was updated
    #[serde(rename = "updatedAt")]
    pub updated_at: String,
    /// Details of actual swaps and withdrawals
    #[serde(rename = "swapDetails")]
    pub swap_details: Box<models::SwapDetails>,
}

impl GetExecutionStatusResponse {
    pub fn new(quote_response: models::QuoteResponse, status: Status, updated_at: String, swap_details: models::SwapDetails) -> GetExecutionStatusResponse {
        GetExecutionStatusResponse {
            quote_response: Box::new(quote_response),
            status,
            updated_at,
            swap_details: Box::new(swap_details),
        }
    }
}
/// 
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Status {
    #[serde(rename = "KNOWN_DEPOSIT_TX")]
    KnownDepositTx,
    #[serde(rename = "PENDING_DEPOSIT")]
    PendingDeposit,
    #[serde(rename = "INCOMPLETE_DEPOSIT")]
    IncompleteDeposit,
    #[serde(rename = "PROCESSING")]
    Processing,
    #[serde(rename = "SUCCESS")]
    Success,
    #[serde(rename = "REFUNDED")]
    Refunded,
    #[serde(rename = "FAILED")]
    Failed,
}

impl Default for Status {
    fn default() -> Status {
        Self::KnownDepositTx
    }
}