5
5
// It's recommended to commit this file.
6
6
// Make sure to add this file to your tsconfig.json file as an "includes" or "files" entry.
7
7
8
- /// <reference types="unplugin-vue-router/client" />
8
+ declare module 'vue-router/auto-routes' {
9
+ import type {
10
+ RouteRecordInfo ,
11
+ ParamValue ,
12
+ ParamValueOneOrMore ,
13
+ ParamValueZeroOrMore ,
14
+ ParamValueZeroOrOne ,
15
+ } from 'vue-router'
9
16
10
- import type {
11
- // type safe route locations
12
- RouteLocationTypedList ,
13
- RouteLocationResolvedTypedList ,
14
- RouteLocationNormalizedTypedList ,
15
- RouteLocationNormalizedLoadedTypedList ,
16
- RouteLocationAsString ,
17
- RouteLocationAsRelativeTypedList ,
18
- RouteLocationAsPathTypedList ,
19
-
20
- // helper types
21
- // route definitions
22
- RouteRecordInfo ,
23
- ParamValue ,
24
- ParamValueOneOrMore ,
25
- ParamValueZeroOrMore ,
26
- ParamValueZeroOrOne ,
27
-
28
- // vue-router extensions
29
- _RouterTyped ,
30
- RouterLinkTyped ,
31
- RouterLinkPropsTyped ,
32
- NavigationGuard ,
33
- UseLinkFnTyped ,
34
-
35
- // data fetching
36
- _DataLoader ,
37
- _DefineLoaderOptions ,
38
- } from 'unplugin-vue-router/types'
39
-
40
- declare module 'vue-router/auto/routes' {
17
+ /**
18
+ * Route name map generated by unplugin-vue-router
19
+ */
41
20
export interface RouteNamedMap {
42
21
'/' : RouteRecordInfo < '/' , '/' , Record < never , never > , Record < never , never > > ,
43
22
'/app-check' : RouteRecordInfo < '/app-check' , '/app-check' , Record < never , never > , Record < never , never > > ,
@@ -53,100 +32,3 @@ declare module 'vue-router/auto/routes' {
53
32
'/vuex-store' : RouteRecordInfo < '/vuex-store' , '/vuex-store' , Record < never , never > , Record < never , never > > ,
54
33
}
55
34
}
56
-
57
- declare module 'vue-router/auto' {
58
- import type { RouteNamedMap } from 'vue-router/auto/routes'
59
-
60
- export type RouterTyped = _RouterTyped < RouteNamedMap >
61
-
62
- /**
63
- * Type safe version of `RouteLocationNormalized` (the type of `to` and `from` in navigation guards).
64
- * Allows passing the name of the route to be passed as a generic.
65
- */
66
- export type RouteLocationNormalized < Name extends keyof RouteNamedMap = keyof RouteNamedMap > = RouteLocationNormalizedTypedList < RouteNamedMap > [ Name ]
67
-
68
- /**
69
- * Type safe version of `RouteLocationNormalizedLoaded` (the return type of `useRoute()`).
70
- * Allows passing the name of the route to be passed as a generic.
71
- */
72
- export type RouteLocationNormalizedLoaded < Name extends keyof RouteNamedMap = keyof RouteNamedMap > = RouteLocationNormalizedLoadedTypedList < RouteNamedMap > [ Name ]
73
-
74
- /**
75
- * Type safe version of `RouteLocationResolved` (the returned route of `router.resolve()`).
76
- * Allows passing the name of the route to be passed as a generic.
77
- */
78
- export type RouteLocationResolved < Name extends keyof RouteNamedMap = keyof RouteNamedMap > = RouteLocationResolvedTypedList < RouteNamedMap > [ Name ]
79
-
80
- /**
81
- * Type safe version of `RouteLocation` . Allows passing the name of the route to be passed as a generic.
82
- */
83
- export type RouteLocation < Name extends keyof RouteNamedMap = keyof RouteNamedMap > = RouteLocationTypedList < RouteNamedMap > [ Name ]
84
-
85
- /**
86
- * Type safe version of `RouteLocationRaw` . Allows passing the name of the route to be passed as a generic.
87
- */
88
- export type RouteLocationRaw < Name extends keyof RouteNamedMap = keyof RouteNamedMap > =
89
- | RouteLocationAsString < RouteNamedMap >
90
- | RouteLocationAsRelativeTypedList < RouteNamedMap > [ Name ]
91
- | RouteLocationAsPathTypedList < RouteNamedMap > [ Name ]
92
-
93
- /**
94
- * Generate a type safe params for a route location. Requires the name of the route to be passed as a generic.
95
- */
96
- export type RouteParams < Name extends keyof RouteNamedMap > = RouteNamedMap [ Name ] [ 'params' ]
97
- /**
98
- * Generate a type safe raw params for a route location. Requires the name of the route to be passed as a generic.
99
- */
100
- export type RouteParamsRaw < Name extends keyof RouteNamedMap > = RouteNamedMap [ Name ] [ 'paramsRaw' ]
101
-
102
- export function useRouter ( ) : RouterTyped
103
- export function useRoute < Name extends keyof RouteNamedMap = keyof RouteNamedMap > ( name ?: Name ) : RouteLocationNormalizedLoadedTypedList < RouteNamedMap > [ Name ]
104
-
105
- export const useLink : UseLinkFnTyped < RouteNamedMap >
106
-
107
- export function onBeforeRouteLeave ( guard : NavigationGuard < RouteNamedMap > ) : void
108
- export function onBeforeRouteUpdate ( guard : NavigationGuard < RouteNamedMap > ) : void
109
-
110
- export const RouterLink : RouterLinkTyped < RouteNamedMap >
111
- export const RouterLinkProps : RouterLinkPropsTyped < RouteNamedMap >
112
-
113
- // Experimental Data Fetching
114
-
115
- export function defineLoader <
116
- P extends Promise < any > ,
117
- Name extends keyof RouteNamedMap = keyof RouteNamedMap ,
118
- isLazy extends boolean = false ,
119
- > (
120
- name : Name ,
121
- loader : ( route : RouteLocationNormalizedLoaded < Name > ) => P ,
122
- options ?: _DefineLoaderOptions < isLazy > ,
123
- ) : _DataLoader < Awaited < P > , isLazy >
124
- export function defineLoader <
125
- P extends Promise < any > ,
126
- isLazy extends boolean = false ,
127
- > (
128
- loader : ( route : RouteLocationNormalizedLoaded ) => P ,
129
- options ?: _DefineLoaderOptions < isLazy > ,
130
- ) : _DataLoader < Awaited < P > , isLazy >
131
-
132
- export {
133
- _definePage as definePage ,
134
- _HasDataLoaderMeta as HasDataLoaderMeta ,
135
- _setupDataFetchingGuard as setupDataFetchingGuard ,
136
- _stopDataFetchingScope as stopDataFetchingScope ,
137
- } from 'unplugin-vue-router/runtime'
138
- }
139
-
140
- declare module 'vue-router' {
141
- import type { RouteNamedMap } from 'vue-router/auto/routes'
142
-
143
- export interface TypesConfig {
144
- beforeRouteUpdate : NavigationGuard < RouteNamedMap >
145
- beforeRouteLeave : NavigationGuard < RouteNamedMap >
146
-
147
- $route : RouteLocationNormalizedLoadedTypedList < RouteNamedMap > [ keyof RouteNamedMap ]
148
- $router : _RouterTyped < RouteNamedMap >
149
-
150
- RouterLink : RouterLinkTyped < RouteNamedMap >
151
- }
152
- }
0 commit comments