use std::fmt::Debug;
pub trait TransformRequest: Send + Sync + Debug + Clone {
type Identifier: Send + Sync + Eq + Debug;
type Input: Send + Clone;
type Output: Send + Clone;
fn request_id(&self) -> Self::Identifier;
fn input(&self) -> &Self::Input;
fn get_dyn_configs(&self) -> Vec<(String, Vec<u8>)>;
}
#[cfg(test)]
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct NilTR;
#[cfg(test)]
impl TransformRequest for NilTR {
type Identifier = ();
type Input = ();
type Output = ();
fn request_id(&self) -> Self::Identifier { () }
fn input(&self) -> &Self::Input { &() }
fn get_dyn_configs(&self) -> Vec<(String, Vec<u8>)> { vec![] }
}