ark-rest 0.9.3

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 GetVtxosRequest {
    /// Include only vtxos with last update after the given unix time in milliseconds. A value of 0
    /// means no lower bound.
    #[serde(rename = "after", skip_serializing_if = "Option::is_none")]
    pub after: Option<String>,
    /// Include only vtxos with last update before the given unix time in milliseconds, greater
    /// value than the after when specified. A value of 0 means no upper bound.
    #[serde(rename = "before", skip_serializing_if = "Option::is_none")]
    pub before: Option<String>,
    /// Or specify a list of vtxo outpoints. The 2 filters are mutually exclusive.
    #[serde(rename = "outpoints", skip_serializing_if = "Option::is_none")]
    pub outpoints: Option<Vec<String>>,
    #[serde(rename = "page", skip_serializing_if = "Option::is_none")]
    pub page: Option<models::IndexerPageRequest>,
    /// Include only spent vtxos that are not finalized.
    #[serde(rename = "pendingOnly", skip_serializing_if = "Option::is_none")]
    pub pending_only: Option<bool>,
    /// Retrieve only recoverable vtxos (notes, subdust or swept vtxos). The 3 filters are mutually
    /// exclusive,
    #[serde(rename = "recoverableOnly", skip_serializing_if = "Option::is_none")]
    pub recoverable_only: Option<bool>,
    /// Either specify a list of vtxo scripts.
    #[serde(rename = "scripts", skip_serializing_if = "Option::is_none")]
    pub scripts: Option<Vec<String>>,
    /// Retrieve only spendable vtxos
    #[serde(rename = "spendableOnly", skip_serializing_if = "Option::is_none")]
    pub spendable_only: Option<bool>,
    /// Retrieve only spent vtxos.
    #[serde(rename = "spentOnly", skip_serializing_if = "Option::is_none")]
    pub spent_only: Option<bool>,
}

impl GetVtxosRequest {
    pub fn new() -> GetVtxosRequest {
        GetVtxosRequest {
            after: None,
            before: None,
            outpoints: None,
            page: None,
            pending_only: None,
            recoverable_only: None,
            scripts: None,
            spendable_only: None,
            spent_only: None,
        }
    }
}