mod builder;
mod mock;
mod simple;
mod sink;
use chrono::{DateTime, Utc};
use std::future::Future;
pub use builder::*;
pub use simple::*;
pub use sink::*;
pub type Timestamp = DateTime<Utc>;
pub trait Processor: Send + 'static {
fn process(&mut self, line: String, timestamp: Timestamp) -> impl Future<Output = ()> + Send;
fn truncate(&mut self) -> impl Future<Output = ()> + Send;
}