use crate::error::StreamingError;
use async_trait::async_trait;
#[async_trait]
pub trait StreamingBackend: Send + Sync {
async fn publish(&self, topic: &str, payload: Vec<u8>) -> Result<(), StreamingError>;
async fn poll(&self, topic: &str) -> Result<Option<Vec<u8>>, StreamingError>;
}