Identifies this plugin within a host DI scope. Defaults to
TypeEntity(runtimeType), so only one instance of a given Plugin
subclass can be installed in the same scope at once. Override to support
multiple coexisting variants (e.g. multiple ThemePlugins keyed by
name).
Called when this plugin is installed. scope is a fresh child DI
scope owned by this plugin — register services, resources, and nested
scopes here. Everything in scope is torn down automatically on
uninstall.
Called when this plugin is uninstalled, beforescope is torn down.
Use this only for cleanup the registry cannot do automatically —
e.g. deregistering from singletons living outsidescope, closing
external resources not held as services.