1use std::io;
2
3use nakamoto_client::handle;
4use thiserror::Error;
5
6use crate::{
7 input,
8 wallet::{db, hw, ui},
9};
10
11#[derive(Error, Debug)]
13pub enum Error {
14 #[error("client handle error: {0}")]
15 Handle(#[from] handle::Error),
16 #[error("client error: {0}")]
17 Client(#[from] nakamoto_client::Error),
18 #[error("i/o error: {0}")]
19 Io(#[from] io::Error),
20 #[error("input error: {0}")]
21 Input(#[from] input::Error),
22 #[error("ui error: {0}")]
23 Ui(#[from] ui::Error),
24 #[error("channel error: {0}")]
25 Channel(#[from] crossbeam_channel::RecvError),
26 #[error(transparent)]
27 Db(#[from] db::Error),
28 #[error(transparent)]
29 Hw(#[from] hw::Error),
30}