diff --git a/docs/latest/extensions/lifecycle/pre-registration.md b/docs/latest/extensions/lifecycle/pre-registration.md index 30008556b..932dbc00c 100644 --- a/docs/latest/extensions/lifecycle/pre-registration.md +++ b/docs/latest/extensions/lifecycle/pre-registration.md @@ -1,12 +1,30 @@ # Lifecylce Hook: preRegistration If an extension defines the `preRegistration` lifecycle hook, it is called -before any modules are registered in the `ExtensionManager`. +before any modules are registered in the `ExtensionManager`. This hook can be +used to: + +- initialize 3rd party libraries +- register event listeners +- add or call services +- add or call commands + +The `preRegistration` hook receives an object containing the +`ExtensionManager`'s associated `ServicesManager`, `CommandsManager`, and any +`configuration` that was provided with the extension at time of registration. + +_Example `preRegistration` hook implementation_ ```js export default { id: 'MyExampleExtension', + /** + * @param {ServicesManager} servicesManager + * @param {CommandsManager} commandsManager + * @param {object} configuration + * @returns void + */ preRegistration({ servicesManager, commandsManager, configuration }) { console.log('Wiring up important stuff.');