pub trait Interaction {
// Required methods
fn on_mouse_move(
&mut self,
event: &MouseMoveEvent,
ctx: &mut PluginContext<'_>,
) -> InteractionResult;
fn on_mouse_up(
&mut self,
event: &MouseUpEvent,
ctx: &mut PluginContext<'_>,
) -> InteractionResult;
// Provided method
fn render(&self, _ctx: &mut RenderContext<'_>) -> Option<AnyElement> { ... }
}