mod services;
mod ctl;
use lnp2p::bifrost;
use microservices::rpc;
use storm_ext::ExtMsg;
use storm_rpc::{RadioMsg, RpcMsg};
pub use self::ctl::{AddressedClientMsg, ChunkSend, CtlMsg};
pub(crate) use self::services::{DaemonId, Endpoints, Responder, ServiceBus};
#[derive(Clone, Debug, Display, From, Api)]
#[api(encoding = "strict")]
#[display(inner)]
pub(crate) enum BusMsg {
#[api(type = 3)]
#[from]
Bifrost(bifrost::Messages),
#[api(type = 4)]
#[display(inner)]
#[from]
Rpc(RpcMsg),
#[api(type = 5)]
#[display(inner)]
#[from]
Storm(ExtMsg),
#[api(type = 6)]
#[display(inner)]
#[from]
Ctl(CtlMsg),
#[api(type = 0x81)]
#[display(inner)]
#[from]
Chat(RadioMsg),
}
impl rpc::Request for BusMsg {}