diff --git a/types/navigo/index.d.ts b/types/navigo/index.d.ts index 3a277711a9..d9e6a43ff7 100644 --- a/types/navigo/index.d.ts +++ b/types/navigo/index.d.ts @@ -4,9 +4,17 @@ // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped interface NavigoHooks { - before?(done: (suppress?: boolean) => void): void; - after?(): void; + before?(done: (suppress?: boolean) => void, params?: Params): void; + after?(params?: Params): void; + leave?(params?: Params): void; + already?(params?: Params): void; } + +interface GenericHooks { + before?(done: (suppress?: boolean) => void, params?: Params): void; + after?(params?: Params): void; +} + type RouteHandler = ((parametersObj: any, query: string) => void) | { as: string; uses(parametersObj: any): void }; declare class Navigo { @@ -34,9 +42,13 @@ declare class Navigo { resolve(currentURL?: string): boolean; link(path: string): string; + + lastRouteResolved(): {url: string, query: string}; disableIfAPINotAvailable(): void; + hooks(hooks: GenericHooks): void; + pause(): void; resume(): void; diff --git a/types/navigo/navigo-tests.ts b/types/navigo/navigo-tests.ts index 762c97b6de..a59bf3cfab 100644 --- a/types/navigo/navigo-tests.ts +++ b/types/navigo/navigo-tests.ts @@ -5,6 +5,11 @@ const useHash = false; let router = new Navigo(root, useHash); +router.hooks({ + before: function(done, params) { //do something }, + after: function(params) { //do something } + }); + router .on('/products/list', () => { // display all the products