# Type Alias HookResult

HookResult: boolean | TargetState | void | Promise<boolean | TargetState | void>

The return value of a [[TransitionHookFn]] or [[TransitionStateHookFn]]

When returned from a [[TransitionHookFn]] or [[TransitionStateHookFn]], these values alter the running [[Transition]]:

- `false`: the transition will be cancelled.
- [[TargetState]]: the transition will be redirected to the new target state (see: [[StateService.target]])
- `Promise`: the transition will wait for the promise to resolve or reject
  - If the promise is rejected (or resolves to `false`), the transition will be cancelled
  - If the promise resolves to a [[TargetState]], the transition will be redirected
  - If the promise resolves to anything else, the transition will resume
- Anything else: the transition will resume

- Defined in src/router/transition/interface.ts:286