diff --git a/docs/2.guide/3.going-further/2.hooks.md b/docs/2.guide/3.going-further/2.hooks.md index d850c1d4a8..9b630f7d08 100644 --- a/docs/2.guide/3.going-further/2.hooks.md +++ b/docs/2.guide/3.going-further/2.hooks.md @@ -42,8 +42,8 @@ App hooks can be mainly used by [Nuxt Plugins](/docs/guide/directory-structure/p ```js [plugins/test.ts] export default defineNuxtPlugin((nuxtApp) => { nuxtApp.hook('page:start', () => { - /* your code goes here */ - }) + /* your code goes here */ + }) }) ``` @@ -73,3 +73,26 @@ export default defineNitroPlugin((nitroApp) => { ::alert{icon=👉} Learn more about available [Nitro lifecycle hooks](/docs/api/advanced/hooks#nitro-app-hooks-runtime-server-side). :: + +## Add additional hooks + +You can add additional hooks by augmenting the types provided by Nuxt. This can be useful for modules. + +```ts +import { HookResult } from "@nuxt/schema"; + +declare module '#app' { + interface RuntimeNuxtHooks { + 'your-nuxt-runtime-hook': () => HookResult + } + interface NuxtHooks { + 'your-nuxt-hook': () => HookResult + } +} + +declare module 'nitropack' { + interface NitroRuntimeHooks { + 'your-nitro-hook': () => void; + } +} +```