Constructs a SettingsManager instance, initializing configuration providers and loading
package.json
and README information.
Optional
bootstrapSettings: BootstrapOptionsBootstrap settings, define how the Custom and the Service Registry settings should be loaded.
Optional
serviceRegistrySettings: ServiceRegistryOptions<CustomSettings>Service Registry settings, used as a base for the Service Registry configuration manager.
Optional
customSettings: Partial<CustomSettings>Custom settings provided by the user, used as a base for the Custom configuration manager.
SettingsManager is responsible for managing the application's settings, including the configuration for the service registry and custom settings specified by the user. It extends EventEmitter to allow for emitting events related to settings management and implements the Service interface from the Layer.App namespace, indicating its role in the application's service architecture. It utilizes configuration managers for both service registry and custom settings, supporting dynamic loading and management of these configurations.
Additionally, it can load application metadata from package.json and README.md content, providing a centralized way to access application information and documentation.