#![deny(missing_docs)]
#![deny(unsafe_code)]
#![doc = tx5_core::__doc_header!()]
#[cfg(feature = "backend-go-pion")]
pub use tx5_connection::Tx5InitConfig;
use std::collections::HashMap;
use std::io::{Error, Result};
use std::sync::{Arc, Mutex, Weak};
pub use tx5_connection::tx5_signal::PubKey;
mod url;
pub use url::*;
pub type BoxFuture<'lt, T> =
std::pin::Pin<Box<dyn std::future::Future<Output = T> + 'lt + Send>>;
pub type PreflightSendCb = Arc<
dyn Fn(&PeerUrl) -> BoxFuture<'static, Result<Vec<u8>>>
+ 'static
+ Send
+ Sync,
>;
pub type PreflightCheckCb = Arc<
dyn Fn(&PeerUrl, Vec<u8>) -> BoxFuture<'static, Result<()>>
+ 'static
+ Send
+ Sync,
>;
mod config;
pub use config::*;
mod sig;
pub(crate) use sig::*;
mod peer;
pub(crate) use peer::*;
mod ep;
pub use ep::*;
pub mod stats;
#[cfg(test)]
mod test;