#![doc = include_str!("../README.md")]
mod config;
mod core;
mod event;
pub(crate) mod utils;
pub use config::*;
pub use core::*;
pub use event::*;
pub use fast_down;
pub use tokio_util::sync::CancellationToken;
pub type Tx = crossfire::MTx<crossfire::mpmc::List<Event>>;
pub type Rx = crossfire::MAsyncRx<crossfire::mpmc::List<Event>>;
#[must_use]
pub fn create_channel() -> (Tx, Rx) {
crossfire::mpmc::unbounded_async()
}
#[must_use]
pub fn create_cancellation_token() -> CancellationToken {
CancellationToken::new()
}