use std::sync::Arc; use async_trait::async_trait; use crate::{errors::TransportError, EventInfo}; #[async_trait] pub trait Transport { async fn publish(&self, event_info: &EventInfo, content: Vec) -> Result<(), TransportError>; } pub type DynTransport = Arc;