pub trait PluginBuilder<T: UserEvent> { type Plugin: Plugin<T>; // Required method fn build(self, context: Context<T>) -> Self::Plugin; }