btcpay-client 0.1.0

A client library for BTCPay Server.
Documentation
/*
 * BTCPay Greenfield API
 *
 * A full API to use your BTCPay Server
 *
 * The version of the OpenAPI document: v1
 * 
 * Generated by: https://openapi-generator.tech
 */

use crate::models::time_span_seconds::TimeSpanSeconds;


#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
pub struct CreateLightningInvoiceRequest {
    /// Amount wrapped in a string, represented in a millistatoshi string. (1000 millisatoshi = 1 satoshi)
    #[serde(rename = "amount", skip_serializing_if = "Option::is_none")]
    pub amount: Option<String>,
    /// Description of the invoice in the BOLT11
    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
    pub description: Option<String>,
    /// Description hash of the invoice in the BOLT11
    #[serde(rename = "descriptionHash", skip_serializing_if = "Option::is_none")]
    pub description_hash: Option<String>,
    /// Expiration time in seconds
    #[serde(rename = "expiry", skip_serializing_if = "Option::is_none")]
    pub expiry: Option<Box<TimeSpanSeconds>>,
    /// True if the invoice should include private route hints
    #[serde(rename = "privateRouteHints", skip_serializing_if = "Option::is_none")]
    pub private_route_hints: Option<bool>,
}

impl CreateLightningInvoiceRequest {
    pub fn new() -> CreateLightningInvoiceRequest {
        CreateLightningInvoiceRequest {
            amount: None,
            description: None,
            description_hash: None,
            expiry: None,
            private_route_hints: None,
        }
    }
}