lnurl/
withdraw.rs

1use crate::Tag;
2use serde::{Deserialize, Serialize};
3
4#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
5pub struct WithdrawalResponse {
6    /// A default withdrawal invoice description
7    #[serde(rename = "defaultDescription")]
8    pub default_description: String,
9    /// a second-level url which would accept a withdrawal
10    /// lightning invoice as query parameter
11    pub callback: String,
12    /// an ephemeral secret which would allow user to withdraw funds
13    pub k1: String,
14    /// max withdrawable amount for a given user on a given service
15    #[serde(rename = "maxWithdrawable")]
16    pub max_withdrawable: u64,
17    /// An optional field, defaults to 1 MilliSatoshi if not present,
18    /// can not be less than 1 or more than `max_withdrawable`
19    #[serde(rename = "minWithdrawable")]
20    pub min_withdrawable: Option<u64>,
21    /// tag of the request
22    pub tag: Tag,
23}