use std::future::{ready, Future};
use crate::transaction::{Transaction, TransactionError};
pub trait TransactionHook: Send + 'static {
fn pre_commit<'a>(
&'a mut self,
_tx: &'a mut Transaction,
) -> impl Future<Output = Result<(), TransactionError>> + Send + use<'a, Self> {
ready(Ok(()))
}
fn post_commit(&mut self) {}
fn on_rollback(&mut self) {}
}