import * as _$vue from "vue"; import { MaybeRef, MaybeRefOrGetter, Ref } from "vue"; import { RouteParamValueRaw, useRoute, useRouter } from "vue-router"; //#region _types.d.ts type RouteQueryValueRaw = RouteParamValueRaw | string[]; type RouteHashValueRaw = string | null | undefined; interface ReactiveRouteOptions { /** * Mode to update the router query, ref is also acceptable * * @default 'replace' */ mode?: MaybeRef<'replace' | 'push'>; /** * Route instance, use `useRoute()` if not given */ route?: ReturnType; /** * Router instance, use `useRouter()` if not given */ router?: ReturnType; } interface ReactiveRouteOptionsWithTransform extends ReactiveRouteOptions { /** * Function to transform data before return, or an object with one or both functions: * `get` to transform data before returning, and `set` to transform data before setting */ transform?: ((val: V) => R) | ({ get?: (value: V) => R; set?: (value: R) => V; }); } //#endregion //#region useRouteHash/index.d.ts declare function useRouteHash(defaultValue?: MaybeRefOrGetter, { mode, route, router }?: ReactiveRouteOptions): _$vue.Ref; //#endregion //#region useRouteParams/index.d.ts declare function useRouteParams(name: string): Ref; declare function useRouteParams(name: string, defaultValue?: MaybeRefOrGetter, options?: ReactiveRouteOptionsWithTransform): Ref; //#endregion //#region useRouteQuery/index.d.ts declare function useRouteQuery(name: string): Ref; declare function useRouteQuery(name: string, defaultValue?: MaybeRefOrGetter, options?: ReactiveRouteOptionsWithTransform): Ref; //#endregion export { useRouteHash, useRouteParams, useRouteQuery };