pub trait LongOperation: Send + 'static {
type Output: Send + Sync + 'static + Serialize;
// Required method
fn execute(
&self,
progress_callback: Box<dyn Fn(OperationProgress) + Send>,
cancel_flag: Arc<AtomicBool>,
) -> Result<Self::Output>;
}