cdk_common/
melt.rs

1//! Melt types
2use cashu::{MeltQuoteBolt11Request, MeltQuoteBolt12Request};
3
4/// Melt quote request enum for different types of quotes
5///
6/// This enum represents the different types of melt quote requests
7/// that can be made, either BOLT11 or BOLT12.
8#[derive(Debug, Clone, PartialEq, Eq)]
9pub enum MeltQuoteRequest {
10    /// Lightning Network BOLT11 invoice request
11    Bolt11(MeltQuoteBolt11Request),
12    /// Lightning Network BOLT12 offer request
13    Bolt12(MeltQuoteBolt12Request),
14}
15
16impl From<MeltQuoteBolt11Request> for MeltQuoteRequest {
17    fn from(request: MeltQuoteBolt11Request) -> Self {
18        MeltQuoteRequest::Bolt11(request)
19    }
20}
21
22impl From<MeltQuoteBolt12Request> for MeltQuoteRequest {
23    fn from(request: MeltQuoteBolt12Request) -> Self {
24        MeltQuoteRequest::Bolt12(request)
25    }
26}