use crate::subscriptions::freedesktop_proxy::NotificationsProxy;
use cosmic::{
iced::{
futures::{self, SinkExt},
subscription,
},
iced_futures::Subscription,
};
use tokio::sync::mpsc::{channel, Receiver, Sender};
use tracing::{error, warn};
use zbus::{export::futures_util::StreamExt, Connection};
#[derive(Debug)]
pub enum State {
Ready,
WaitingForNotificationEvent(NotificationsProxy<'static>, Receiver),
Finished,
}
#[derive(Debug, Clone, Copy)]
pub enum Input {
Dismiss(u32),
CloseEvent(u32),
}
#[derive(Debug, Clone)]
pub enum Output {
Ready(Sender),
CloseEvent(u32),
}
pub fn proxy() -> Subscription