ark-rest 0.8.0

REST client for Ark server communication
Documentation
/*
 * Ark API
 *
 * Combined Ark Service, Indexer, Admin, Signer Manager, and Wallet API
 *
 * The version of the OpenAPI document: 1.0.0
 *
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::Deserialize;
use serde::Serialize;

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct GetInfoResponse {
    #[serde(rename = "boardingExitDelay", skip_serializing_if = "Option::is_none")]
    pub boarding_exit_delay: Option<String>,
    #[serde(
        rename = "checkpointTapscript",
        skip_serializing_if = "Option::is_none"
    )]
    pub checkpoint_tapscript: Option<String>,
    #[serde(rename = "deprecatedSigners", skip_serializing_if = "Option::is_none")]
    pub deprecated_signers: Option<Vec<models::DeprecatedSigner>>,
    #[serde(rename = "digest", skip_serializing_if = "Option::is_none")]
    pub digest: Option<String>,
    #[serde(rename = "dust", skip_serializing_if = "Option::is_none")]
    pub dust: Option<String>,
    #[serde(rename = "fees", skip_serializing_if = "Option::is_none")]
    pub fees: Option<models::FeeInfo>,
    #[serde(rename = "forfeitAddress", skip_serializing_if = "Option::is_none")]
    pub forfeit_address: Option<String>,
    #[serde(rename = "forfeitPubkey", skip_serializing_if = "Option::is_none")]
    pub forfeit_pubkey: Option<String>,
    #[serde(rename = "network", skip_serializing_if = "Option::is_none")]
    pub network: Option<String>,
    #[serde(rename = "scheduledSession", skip_serializing_if = "Option::is_none")]
    pub scheduled_session: Option<models::ScheduledSession>,
    #[serde(rename = "serviceStatus", skip_serializing_if = "Option::is_none")]
    pub service_status: Option<std::collections::HashMap<String, String>>,
    #[serde(rename = "sessionDuration", skip_serializing_if = "Option::is_none")]
    pub session_duration: Option<String>,
    #[serde(rename = "signerPubkey", skip_serializing_if = "Option::is_none")]
    pub signer_pubkey: Option<String>,
    #[serde(
        rename = "unilateralExitDelay",
        skip_serializing_if = "Option::is_none"
    )]
    pub unilateral_exit_delay: Option<String>,
    /// -1 means no limit (default), 0 means boarding not allowed
    #[serde(rename = "utxoMaxAmount", skip_serializing_if = "Option::is_none")]
    pub utxo_max_amount: Option<String>,
    #[serde(rename = "utxoMinAmount", skip_serializing_if = "Option::is_none")]
    pub utxo_min_amount: Option<String>,
    #[serde(rename = "version", skip_serializing_if = "Option::is_none")]
    pub version: Option<String>,
    /// -1 means no limit (default)
    #[serde(rename = "vtxoMaxAmount", skip_serializing_if = "Option::is_none")]
    pub vtxo_max_amount: Option<String>,
    #[serde(rename = "vtxoMinAmount", skip_serializing_if = "Option::is_none")]
    pub vtxo_min_amount: Option<String>,
}

impl GetInfoResponse {
    pub fn new() -> GetInfoResponse {
        GetInfoResponse {
            boarding_exit_delay: None,
            checkpoint_tapscript: None,
            deprecated_signers: None,
            digest: None,
            dust: None,
            fees: None,
            forfeit_address: None,
            forfeit_pubkey: None,
            network: None,
            scheduled_session: None,
            service_status: None,
            session_duration: None,
            signer_pubkey: None,
            unilateral_exit_delay: None,
            utxo_max_amount: None,
            utxo_min_amount: None,
            version: None,
            vtxo_max_amount: None,
            vtxo_min_amount: None,
        }
    }
}