pub trait Plugin: Send + Sync + PluginClone + 'static {
fn handle<'async_trait>(
self: Box<Self>,
event: Event,
bot: Client
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>>
where
Self: 'async_trait;
}
Expand description
Plugins can keep their own personal state, listen to events, and add new functions to Client.