1use super::nut05::{MeltQuoteCustomResponse, MeltRequest};
6use super::nut23::MeltQuoteBolt11Response;
7use crate::Amount;
8
9impl<Q> MeltRequest<Q> {
10 pub fn output_amount(&self) -> Option<Amount> {
12 self.outputs()
13 .as_ref()
14 .and_then(|o| Amount::try_sum(o.iter().map(|proof| proof.amount)).ok())
15 }
16}
17
18impl<Q> MeltQuoteBolt11Response<Q> {
19 pub fn change_amount(&self) -> Option<Amount> {
21 self.change
22 .as_ref()
23 .and_then(|o| Amount::try_sum(o.iter().map(|proof| proof.amount)).ok())
24 }
25}
26
27impl<Q> MeltQuoteCustomResponse<Q> {
28 pub fn change_amount(&self) -> Option<Amount> {
30 self.change
31 .as_ref()
32 .and_then(|o| Amount::try_sum(o.iter().map(|proof| proof.amount)).ok())
33 }
34}