package registry import ( "context" "github.com/grafana/grafana/pkg/plugins" ) // Service is responsible for the internal storing and retrieval of plugins. type Service interface { // Plugin finds a plugin by its ID and version. Plugin(ctx context.Context, id, version string) (*plugins.Plugin, bool) // Plugins returns all plugins. Plugins(ctx context.Context) []*plugins.Plugin // Add adds the provided plugin to the registry. Add(ctx context.Context, plugin *plugins.Plugin) error // Remove deletes the requested plugin from the registry. Remove(ctx context.Context, id, version string) error }