rustywallet_lightning/
error.rs1use thiserror::Error;
4
5#[derive(Debug, Error)]
7pub enum LightningError {
8 #[error("Invalid BOLT11 invoice: {0}")]
10 InvalidInvoice(String),
11
12 #[error("Invalid payment hash: {0}")]
14 InvalidPaymentHash(String),
15
16 #[error("Invalid preimage: {0}")]
18 InvalidPreimage(String),
19
20 #[error("Invalid node ID: {0}")]
22 InvalidNodeId(String),
23
24 #[error("Invalid channel point: {0}")]
26 InvalidChannelPoint(String),
27
28 #[error("Invalid route hint: {0}")]
30 InvalidRouteHint(String),
31
32 #[error("Bech32 error: {0}")]
34 Bech32Error(String),
35
36 #[error("Key derivation error: {0}")]
38 KeyDerivationError(String),
39
40 #[error("Signature error: {0}")]
42 SignatureError(String),
43
44 #[error("Invoice expired")]
46 InvoiceExpired,
47
48 #[error("Amount mismatch: expected {expected}, got {actual}")]
50 AmountMismatch { expected: u64, actual: u64 },
51}