import { HasSsrParam, HasStoreParam, PrefetchCallback } from "quasar"; import Vue from "vue"; import { RawLocation, Route } from "vue-router"; declare module "quasar" { interface PreFetchOptions extends HasSsrParam, HasStoreParam { currentRoute: Route; previousRoute: Route; redirect: (url: RawLocation) => void; } // https://github.com/quasarframework/quasar/issues/6576#issuecomment-603787603 // Promise<{}> allow nearly any type of Promise to be used type PrefetchCallback = ( options: PreFetchOptions ) => void | Promise | Promise<{}>; } declare module "vue/types/options" { interface ComponentOptions { preFetch?: PrefetchCallback; } }