A named object that provides a value.
Creates a new Provider.
The name of the component.
A function that returns the component.
An optional array of string tags for the component.
The logger instance.
The component name.
The tags for the component.
Instantiates the component.
If the factory function itself throws an Error or a rejected promise, this result is cached and the factory will not be invoked a second time.
The container object.
the component as produced by the factory function.
A named object that provides a value.