@novice1/routing 1.1.1 → 1.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.d.ts +5 -5
- package/lib/layer.js +123 -123
- package/lib/route/createLayers.js +39 -39
- package/lib/route/metadataMiddleware.js +32 -32
- package/lib/route.js +205 -205
- package/lib/router/authMethods.js +36 -36
- package/lib/router/editLayersMethods.js +11 -11
- package/lib/router/metaMethods.js +13 -13
- package/lib/router/validatorsMethods.js +36 -36
- package/lib/router.d.ts +432 -432
- package/lib/router.js +314 -314
- package/lib/utils/toArray.js +28 -28
- package/package.json +32 -30
package/lib/router.d.ts
CHANGED
|
@@ -1,433 +1,433 @@
|
|
|
1
|
-
import * as e from 'express';
|
|
2
|
-
import * as core from 'express-serve-static-core';
|
|
3
|
-
import { ParsedQs } from 'qs'
|
|
4
|
-
|
|
5
|
-
declare namespace routing {
|
|
6
|
-
|
|
7
|
-
//--- META
|
|
8
|
-
|
|
9
|
-
export interface BaseMeta<ResType> {
|
|
10
|
-
name?: string;
|
|
11
|
-
description?: string;
|
|
12
|
-
tags?: string | string[];
|
|
13
|
-
auth?: boolean;
|
|
14
|
-
parameters?: Record<string, any>;
|
|
15
|
-
responses?: ResType;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export interface RouteMeta extends BaseMeta<any> {
|
|
19
|
-
path: string | RegExp;
|
|
20
|
-
methods: Record<string, any>;
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
export interface RequestMeta<ResType = any> extends BaseMeta<ResType> {
|
|
24
|
-
method: string;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
//--- REQUEST
|
|
28
|
-
|
|
29
|
-
export interface Request<
|
|
30
|
-
P = core.ParamsDictionary,
|
|
31
|
-
ResBody = any,
|
|
32
|
-
ReqBody = any,
|
|
33
|
-
ReqQuery = ParsedQs,
|
|
34
|
-
Locals extends Record<string, any> = Record<string, any>,
|
|
35
|
-
MetaResType = any
|
|
36
|
-
> extends core.Request<P, ResBody, ReqBody, ReqQuery, Locals> {
|
|
37
|
-
meta: RequestMeta<MetaResType>;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
export interface RequestHandler<
|
|
41
|
-
P = core.ParamsDictionary,
|
|
42
|
-
ResBody = any,
|
|
43
|
-
ReqBody = any,
|
|
44
|
-
ReqQuery = ParsedQs,
|
|
45
|
-
Locals extends Record<string, any> = Record<string, any>,
|
|
46
|
-
MetaResType = any
|
|
47
|
-
> {
|
|
48
|
-
// tslint:disable-next-line callable-types (This is extended from and can't extend from a type alias in ts<2.2)
|
|
49
|
-
(
|
|
50
|
-
req: Request<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>,
|
|
51
|
-
res: core.Response<ResBody, Locals>,
|
|
52
|
-
next: core.NextFunction,
|
|
53
|
-
): void;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
export type ErrorRequestHandler<
|
|
57
|
-
P = core.ParamsDictionary,
|
|
58
|
-
ResBody = any,
|
|
59
|
-
ReqBody = any,
|
|
60
|
-
ReqQuery = ParsedQs,
|
|
61
|
-
Locals extends Record<string, any> = Record<string, any>,
|
|
62
|
-
MetaResType = any
|
|
63
|
-
> = ((
|
|
64
|
-
err: any,
|
|
65
|
-
req: Request<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>,
|
|
66
|
-
res: core.Response<ResBody, Locals>,
|
|
67
|
-
next: core.NextFunction,
|
|
68
|
-
) => void);
|
|
69
|
-
|
|
70
|
-
export type RequestHandlerParams<
|
|
71
|
-
P = core.ParamsDictionary,
|
|
72
|
-
ResBody = any,
|
|
73
|
-
ReqBody = any,
|
|
74
|
-
ReqQuery = ParsedQs,
|
|
75
|
-
Locals extends Record<string, any> = Record<string, any>,
|
|
76
|
-
MetaResType = any
|
|
77
|
-
> =
|
|
78
|
-
| RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>
|
|
79
|
-
| ErrorRequestHandler<P, ResBody, ReqBody, ReqQuery, Locals>
|
|
80
|
-
| Array<RequestHandler<P> | ErrorRequestHandler<P>>;
|
|
81
|
-
|
|
82
|
-
//--- ROUTE SETTINGS
|
|
83
|
-
|
|
84
|
-
export interface RouteSettings
|
|
85
|
-
<
|
|
86
|
-
Path = string,
|
|
87
|
-
P = core.ParamsDictionary,
|
|
88
|
-
ResBody = any,
|
|
89
|
-
ReqBody = any,
|
|
90
|
-
ReqQuery = ParsedQs,
|
|
91
|
-
Locals extends Record<string, any> = Record<string, any>,
|
|
92
|
-
MetaResType = any
|
|
93
|
-
> extends BaseMeta<MetaResType> {
|
|
94
|
-
path: Path;
|
|
95
|
-
preValidators?:
|
|
96
|
-
RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>
|
|
97
|
-
| RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>[];
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
export interface RouteSettingsParams
|
|
101
|
-
<
|
|
102
|
-
Path = string,
|
|
103
|
-
P = core.ParamsDictionary,
|
|
104
|
-
ResBody = any,
|
|
105
|
-
ReqBody = any,
|
|
106
|
-
ReqQuery = ParsedQs,
|
|
107
|
-
Locals extends Record<string, any> = Record<string, any>,
|
|
108
|
-
MetaResType = any
|
|
109
|
-
> extends BaseMeta<MetaResType> {
|
|
110
|
-
path: Path;
|
|
111
|
-
preValidators?:
|
|
112
|
-
RequestHandlerParams<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>
|
|
113
|
-
| RequestHandlerParams<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>[];
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
//--- ROUTER MATCHER
|
|
117
|
-
|
|
118
|
-
export interface IRouterMatcher<
|
|
119
|
-
T,
|
|
120
|
-
Method extends 'all' | 'get' | 'post' | 'put' | 'delete' | 'patch' | 'options' | 'head' = any
|
|
121
|
-
> {
|
|
122
|
-
<
|
|
123
|
-
Route extends string,
|
|
124
|
-
P = core.RouteParameters<Route>,
|
|
125
|
-
ResBody = any,
|
|
126
|
-
ReqBody = any,
|
|
127
|
-
ReqQuery = ParsedQs,
|
|
128
|
-
Locals extends Record<string, any> = Record<string, any>,
|
|
129
|
-
MetaResType = any
|
|
130
|
-
>(
|
|
131
|
-
// tslint:disable-next-line no-unnecessary-generics (it's used as the default type parameter for P)
|
|
132
|
-
path: RouteSettings<Route, P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>,
|
|
133
|
-
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
134
|
-
...handlers: Array<RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
135
|
-
): T;
|
|
136
|
-
<
|
|
137
|
-
Path extends string,
|
|
138
|
-
P = core.RouteParameters<Path>,
|
|
139
|
-
ResBody = any,
|
|
140
|
-
ReqBody = any,
|
|
141
|
-
ReqQuery = ParsedQs,
|
|
142
|
-
Locals extends Record<string, any> = Record<string, any>,
|
|
143
|
-
MetaResType = any
|
|
144
|
-
>(
|
|
145
|
-
// tslint:disable-next-line no-unnecessary-generics (it's used as the default type parameter for P)
|
|
146
|
-
path: RouteSettingsParams<Path, P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>,
|
|
147
|
-
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
148
|
-
...handlers: Array<RequestHandlerParams<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
149
|
-
): T;
|
|
150
|
-
<
|
|
151
|
-
P = core.ParamsDictionary,
|
|
152
|
-
ResBody = any,
|
|
153
|
-
ReqBody = any,
|
|
154
|
-
ReqQuery = ParsedQs,
|
|
155
|
-
Locals extends Record<string, any> = Record<string, any>,
|
|
156
|
-
MetaResType = any
|
|
157
|
-
>(
|
|
158
|
-
path: RouteSettings<core.PathParams, P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>,
|
|
159
|
-
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
160
|
-
...handlers: Array<RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
161
|
-
): T;
|
|
162
|
-
<
|
|
163
|
-
P = core.ParamsDictionary,
|
|
164
|
-
ResBody = any,
|
|
165
|
-
ReqBody = any,
|
|
166
|
-
ReqQuery = ParsedQs,
|
|
167
|
-
Locals extends Record<string, any> = Record<string, any>,
|
|
168
|
-
MetaResType = any
|
|
169
|
-
>(
|
|
170
|
-
path: RouteSettingsParams<core.PathParams, P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>,
|
|
171
|
-
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
172
|
-
...handlers: Array<RequestHandlerParams<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
173
|
-
): T;
|
|
174
|
-
<
|
|
175
|
-
Route extends string,
|
|
176
|
-
P = core.RouteParameters<Route>,
|
|
177
|
-
ResBody = any,
|
|
178
|
-
ReqBody = any,
|
|
179
|
-
ReqQuery = ParsedQs,
|
|
180
|
-
Locals extends Record<string, any> = Record<string, any>
|
|
181
|
-
>(
|
|
182
|
-
// tslint:disable-next-line no-unnecessary-generics (it's used as the default type parameter for P)
|
|
183
|
-
path: Route,
|
|
184
|
-
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
185
|
-
...handlers: Array<RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals>>
|
|
186
|
-
): T;
|
|
187
|
-
<
|
|
188
|
-
Path extends string,
|
|
189
|
-
P = core.RouteParameters<Path>,
|
|
190
|
-
ResBody = any,
|
|
191
|
-
ReqBody = any,
|
|
192
|
-
ReqQuery = ParsedQs,
|
|
193
|
-
Locals extends Record<string, any> = Record<string, any>
|
|
194
|
-
>(
|
|
195
|
-
// tslint:disable-next-line no-unnecessary-generics (it's used as the default type parameter for P)
|
|
196
|
-
path: Path,
|
|
197
|
-
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
198
|
-
...handlers: Array<RequestHandlerParams<P, ResBody, ReqBody, ReqQuery, Locals>>
|
|
199
|
-
): T;
|
|
200
|
-
<
|
|
201
|
-
P = core.ParamsDictionary,
|
|
202
|
-
ResBody = any,
|
|
203
|
-
ReqBody = any,
|
|
204
|
-
ReqQuery = ParsedQs,
|
|
205
|
-
Locals extends Record<string, any> = Record<string, any>
|
|
206
|
-
>(
|
|
207
|
-
path: core.PathParams,
|
|
208
|
-
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
209
|
-
...handlers: Array<RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals>>
|
|
210
|
-
): T;
|
|
211
|
-
<
|
|
212
|
-
P = core.ParamsDictionary,
|
|
213
|
-
ResBody = any,
|
|
214
|
-
ReqBody = any,
|
|
215
|
-
ReqQuery = ParsedQs,
|
|
216
|
-
Locals extends Record<string, any> = Record<string, any>
|
|
217
|
-
>(
|
|
218
|
-
path: core.PathParams,
|
|
219
|
-
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
220
|
-
...handlers: Array<RequestHandlerParams<P, ResBody, ReqBody, ReqQuery, Locals>>
|
|
221
|
-
): T;
|
|
222
|
-
(path: core.PathParams, subApplication: core.Application): T;
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
//--- ROUTER MIDDLEWARE EDITOR
|
|
226
|
-
|
|
227
|
-
export interface IRouterMiddlewareEditor<
|
|
228
|
-
T
|
|
229
|
-
> {
|
|
230
|
-
<
|
|
231
|
-
P = core.ParamsDictionary,
|
|
232
|
-
ResBody = any,
|
|
233
|
-
ReqBody = any,
|
|
234
|
-
ReqQuery = ParsedQs,
|
|
235
|
-
Locals extends Record<string, any> = Record<string, any>,
|
|
236
|
-
MetaResType = any
|
|
237
|
-
>(
|
|
238
|
-
...handlers: Array<RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
239
|
-
): T;
|
|
240
|
-
<
|
|
241
|
-
P = core.ParamsDictionary,
|
|
242
|
-
ResBody = any,
|
|
243
|
-
ReqBody = any,
|
|
244
|
-
ReqQuery = ParsedQs,
|
|
245
|
-
Locals extends Record<string, any> = Record<string, any>,
|
|
246
|
-
MetaResType = any
|
|
247
|
-
>(
|
|
248
|
-
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
249
|
-
...handlers: Array<RequestHandlerParams<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
250
|
-
): T;
|
|
251
|
-
}
|
|
252
|
-
|
|
253
|
-
//--- ROUTER HANDLER
|
|
254
|
-
|
|
255
|
-
export interface IRouterHandler<T, Route extends string = string, MetaResType = any> {
|
|
256
|
-
(...handlers: Array<RequestHandler<
|
|
257
|
-
core.RouteParameters<Route>,
|
|
258
|
-
any, any, ParsedQs, Record<string, any>, MetaResType
|
|
259
|
-
>>): T;
|
|
260
|
-
(...handlers: Array<RequestHandlerParams<
|
|
261
|
-
core.RouteParameters<Route>,
|
|
262
|
-
any, any, ParsedQs, Record<string, any>, MetaResType
|
|
263
|
-
>>): T;
|
|
264
|
-
<
|
|
265
|
-
P = core.RouteParameters<Route>,
|
|
266
|
-
ResBody = any,
|
|
267
|
-
ReqBody = any,
|
|
268
|
-
ReqQuery = ParsedQs,
|
|
269
|
-
Locals extends Record<string, any> = Record<string, any>
|
|
270
|
-
>(
|
|
271
|
-
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
272
|
-
...handlers: Array<RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
273
|
-
): T;
|
|
274
|
-
<
|
|
275
|
-
P = core.RouteParameters<Route>,
|
|
276
|
-
ResBody = any,
|
|
277
|
-
ReqBody = any,
|
|
278
|
-
ReqQuery = ParsedQs,
|
|
279
|
-
Locals extends Record<string, any> = Record<string, any>
|
|
280
|
-
>(
|
|
281
|
-
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
282
|
-
...handlers: Array<RequestHandlerParams<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
283
|
-
): T;
|
|
284
|
-
<
|
|
285
|
-
P = core.ParamsDictionary,
|
|
286
|
-
ResBody = any,
|
|
287
|
-
ReqBody = any,
|
|
288
|
-
ReqQuery = ParsedQs,
|
|
289
|
-
Locals extends Record<string, any> = Record<string, any>
|
|
290
|
-
>(
|
|
291
|
-
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
292
|
-
...handlers: Array<RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
293
|
-
): T;
|
|
294
|
-
<
|
|
295
|
-
P = core.ParamsDictionary,
|
|
296
|
-
ResBody = any,
|
|
297
|
-
ReqBody = any,
|
|
298
|
-
ReqQuery = ParsedQs,
|
|
299
|
-
Locals extends Record<string, any> = Record<string, any>
|
|
300
|
-
>(
|
|
301
|
-
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
302
|
-
...handlers: Array<RequestHandlerParams<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
303
|
-
): T;
|
|
304
|
-
}
|
|
305
|
-
|
|
306
|
-
//--- ROUTE
|
|
307
|
-
|
|
308
|
-
export interface IRoute<Route extends string = string, MetaResType = any> {
|
|
309
|
-
path: string;
|
|
310
|
-
stack: any;
|
|
311
|
-
all: IRouterHandler<this, Route, MetaResType>;
|
|
312
|
-
get: IRouterHandler<this, Route, MetaResType>;
|
|
313
|
-
post: IRouterHandler<this, Route, MetaResType>;
|
|
314
|
-
put: IRouterHandler<this, Route, MetaResType>;
|
|
315
|
-
delete: IRouterHandler<this, Route, MetaResType>;
|
|
316
|
-
patch: IRouterHandler<this, Route, MetaResType>;
|
|
317
|
-
options: IRouterHandler<this, Route, MetaResType>;
|
|
318
|
-
head: IRouterHandler<this, Route, MetaResType>;
|
|
319
|
-
|
|
320
|
-
checkout: IRouterHandler<this, Route, MetaResType>;
|
|
321
|
-
copy: IRouterHandler<this, Route, MetaResType>;
|
|
322
|
-
lock: IRouterHandler<this, Route, MetaResType>;
|
|
323
|
-
merge: IRouterHandler<this, Route, MetaResType>;
|
|
324
|
-
mkactivity: IRouterHandler<this, Route, MetaResType>;
|
|
325
|
-
mkcol: IRouterHandler<this, Route, MetaResType>;
|
|
326
|
-
move: IRouterHandler<this, Route, MetaResType>;
|
|
327
|
-
'm-search': IRouterHandler<this, Route, MetaResType>;
|
|
328
|
-
notify: IRouterHandler<this, Route, MetaResType>;
|
|
329
|
-
purge: IRouterHandler<this, Route, MetaResType>;
|
|
330
|
-
report: IRouterHandler<this, Route, MetaResType>;
|
|
331
|
-
search: IRouterHandler<this, Route, MetaResType>;
|
|
332
|
-
subscribe: IRouterHandler<this, Route, MetaResType>;
|
|
333
|
-
trace: IRouterHandler<this, Route, MetaResType>;
|
|
334
|
-
unlock: IRouterHandler<this, Route, MetaResType>;
|
|
335
|
-
unsubscribe: IRouterHandler<this, Route, MetaResType>;
|
|
336
|
-
}
|
|
337
|
-
|
|
338
|
-
//--- ROUTE METHOD
|
|
339
|
-
|
|
340
|
-
export interface IRouteMethod {
|
|
341
|
-
<T extends string>(prefix: T): IRoute<T>;
|
|
342
|
-
(prefix: core.PathParams): IRoute;
|
|
343
|
-
<
|
|
344
|
-
Route extends string,
|
|
345
|
-
P = core.RouteParameters<Route>,
|
|
346
|
-
ResBody = any,
|
|
347
|
-
ReqBody = any,
|
|
348
|
-
ReqQuery = ParsedQs,
|
|
349
|
-
Locals extends Record<string, any> = Record<string, any>,
|
|
350
|
-
MetaResType = any
|
|
351
|
-
>(
|
|
352
|
-
prefix: RouteSettings<Route, P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>
|
|
353
|
-
): IRoute<Route, MetaResType>;
|
|
354
|
-
<
|
|
355
|
-
Path extends string,
|
|
356
|
-
P = core.RouteParameters<Path>,
|
|
357
|
-
ResBody = any,
|
|
358
|
-
ReqBody = any,
|
|
359
|
-
ReqQuery = ParsedQs,
|
|
360
|
-
Locals extends Record<string, any> = Record<string, any>,
|
|
361
|
-
MetaResType = any
|
|
362
|
-
>(
|
|
363
|
-
prefix: RouteSettingsParams<Path, P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>
|
|
364
|
-
): IRoute<Path, MetaResType>;
|
|
365
|
-
<
|
|
366
|
-
P = core.ParamsDictionary,
|
|
367
|
-
ResBody = any,
|
|
368
|
-
ReqBody = any,
|
|
369
|
-
ReqQuery = ParsedQs,
|
|
370
|
-
Locals extends Record<string, any> = Record<string, any>,
|
|
371
|
-
MetaResType = any
|
|
372
|
-
>(
|
|
373
|
-
prefix: RouteSettings<core.PathParams, P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>
|
|
374
|
-
): IRoute<string, MetaResType>;
|
|
375
|
-
<
|
|
376
|
-
P = core.ParamsDictionary,
|
|
377
|
-
ResBody = any,
|
|
378
|
-
ReqBody = any,
|
|
379
|
-
ReqQuery = ParsedQs,
|
|
380
|
-
Locals extends Record<string, any> = Record<string, any>,
|
|
381
|
-
MetaResType = any
|
|
382
|
-
>(
|
|
383
|
-
prefix: RouteSettingsParams<core.PathParams, P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>
|
|
384
|
-
): IRoute<string, MetaResType>;
|
|
385
|
-
}
|
|
386
|
-
|
|
387
|
-
//--- ROUTER
|
|
388
|
-
|
|
389
|
-
export interface IRouter extends e.IRouter {
|
|
390
|
-
all: IRouterMatcher<this, 'all'>;
|
|
391
|
-
get: IRouterMatcher<this, 'get'>;
|
|
392
|
-
post: IRouterMatcher<this, 'post'>;
|
|
393
|
-
put: IRouterMatcher<this, 'put'>;
|
|
394
|
-
delete: IRouterMatcher<this, 'delete'>;
|
|
395
|
-
patch: IRouterMatcher<this, 'patch'>;
|
|
396
|
-
options: IRouterMatcher<this, 'options'>;
|
|
397
|
-
head: IRouterMatcher<this, 'head'>;
|
|
398
|
-
checkout: IRouterMatcher<this>;
|
|
399
|
-
connect: IRouterMatcher<this>;
|
|
400
|
-
copy: IRouterMatcher<this>;
|
|
401
|
-
lock: IRouterMatcher<this>;
|
|
402
|
-
merge: IRouterMatcher<this>;
|
|
403
|
-
mkactivity: IRouterMatcher<this>;
|
|
404
|
-
mkcol: IRouterMatcher<this>;
|
|
405
|
-
move: IRouterMatcher<this>;
|
|
406
|
-
'm-search': IRouterMatcher<this>;
|
|
407
|
-
notify: IRouterMatcher<this>;
|
|
408
|
-
propfind: IRouterMatcher<this>;
|
|
409
|
-
proppatch: IRouterMatcher<this>;
|
|
410
|
-
purge: IRouterMatcher<this>;
|
|
411
|
-
report: IRouterMatcher<this>;
|
|
412
|
-
search: IRouterMatcher<this>;
|
|
413
|
-
subscribe: IRouterMatcher<this>;
|
|
414
|
-
trace: IRouterMatcher<this>;
|
|
415
|
-
unlock: IRouterMatcher<this>;
|
|
416
|
-
unsubscribe: IRouterMatcher<this>;
|
|
417
|
-
|
|
418
|
-
route: IRouteMethod;
|
|
419
|
-
|
|
420
|
-
//--- ROUTER DEV METHODS
|
|
421
|
-
|
|
422
|
-
getMeta(): RouteMeta[];
|
|
423
|
-
|
|
424
|
-
setAuthHandlers: IRouterMiddlewareEditor<this>;
|
|
425
|
-
setAuthHandlersIfNone: IRouterMiddlewareEditor<this>;
|
|
426
|
-
setValidators: IRouterMiddlewareEditor<this>;
|
|
427
|
-
setValidatorsIfNone: IRouterMiddlewareEditor<this>;
|
|
428
|
-
}
|
|
429
|
-
}
|
|
430
|
-
|
|
431
|
-
declare function routing(options?: e.RouterOptions): routing.IRouter;
|
|
432
|
-
|
|
1
|
+
import * as e from 'express';
|
|
2
|
+
import * as core from 'express-serve-static-core';
|
|
3
|
+
import { ParsedQs } from 'qs'
|
|
4
|
+
|
|
5
|
+
declare namespace routing {
|
|
6
|
+
|
|
7
|
+
//--- META
|
|
8
|
+
|
|
9
|
+
export interface BaseMeta<ResType> {
|
|
10
|
+
name?: string;
|
|
11
|
+
description?: string;
|
|
12
|
+
tags?: string | string[];
|
|
13
|
+
auth?: boolean;
|
|
14
|
+
parameters?: Record<string, any>;
|
|
15
|
+
responses?: ResType;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export interface RouteMeta extends BaseMeta<any> {
|
|
19
|
+
path: string | RegExp;
|
|
20
|
+
methods: Record<string, any>;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export interface RequestMeta<ResType = any> extends BaseMeta<ResType> {
|
|
24
|
+
method: string;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
//--- REQUEST
|
|
28
|
+
|
|
29
|
+
export interface Request<
|
|
30
|
+
P = core.ParamsDictionary,
|
|
31
|
+
ResBody = any,
|
|
32
|
+
ReqBody = any,
|
|
33
|
+
ReqQuery = ParsedQs,
|
|
34
|
+
Locals extends Record<string, any> = Record<string, any>,
|
|
35
|
+
MetaResType = any
|
|
36
|
+
> extends core.Request<P, ResBody, ReqBody, ReqQuery, Locals> {
|
|
37
|
+
meta: RequestMeta<MetaResType>;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export interface RequestHandler<
|
|
41
|
+
P = core.ParamsDictionary,
|
|
42
|
+
ResBody = any,
|
|
43
|
+
ReqBody = any,
|
|
44
|
+
ReqQuery = ParsedQs,
|
|
45
|
+
Locals extends Record<string, any> = Record<string, any>,
|
|
46
|
+
MetaResType = any
|
|
47
|
+
> {
|
|
48
|
+
// tslint:disable-next-line callable-types (This is extended from and can't extend from a type alias in ts<2.2)
|
|
49
|
+
(
|
|
50
|
+
req: Request<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>,
|
|
51
|
+
res: core.Response<ResBody, Locals>,
|
|
52
|
+
next: core.NextFunction,
|
|
53
|
+
): void;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export type ErrorRequestHandler<
|
|
57
|
+
P = core.ParamsDictionary,
|
|
58
|
+
ResBody = any,
|
|
59
|
+
ReqBody = any,
|
|
60
|
+
ReqQuery = ParsedQs,
|
|
61
|
+
Locals extends Record<string, any> = Record<string, any>,
|
|
62
|
+
MetaResType = any
|
|
63
|
+
> = ((
|
|
64
|
+
err: any,
|
|
65
|
+
req: Request<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>,
|
|
66
|
+
res: core.Response<ResBody, Locals>,
|
|
67
|
+
next: core.NextFunction,
|
|
68
|
+
) => void);
|
|
69
|
+
|
|
70
|
+
export type RequestHandlerParams<
|
|
71
|
+
P = core.ParamsDictionary,
|
|
72
|
+
ResBody = any,
|
|
73
|
+
ReqBody = any,
|
|
74
|
+
ReqQuery = ParsedQs,
|
|
75
|
+
Locals extends Record<string, any> = Record<string, any>,
|
|
76
|
+
MetaResType = any
|
|
77
|
+
> =
|
|
78
|
+
| RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>
|
|
79
|
+
| ErrorRequestHandler<P, ResBody, ReqBody, ReqQuery, Locals>
|
|
80
|
+
| Array<RequestHandler<P> | ErrorRequestHandler<P>>;
|
|
81
|
+
|
|
82
|
+
//--- ROUTE SETTINGS
|
|
83
|
+
|
|
84
|
+
export interface RouteSettings
|
|
85
|
+
<
|
|
86
|
+
Path = string,
|
|
87
|
+
P = core.ParamsDictionary,
|
|
88
|
+
ResBody = any,
|
|
89
|
+
ReqBody = any,
|
|
90
|
+
ReqQuery = ParsedQs,
|
|
91
|
+
Locals extends Record<string, any> = Record<string, any>,
|
|
92
|
+
MetaResType = any
|
|
93
|
+
> extends BaseMeta<MetaResType> {
|
|
94
|
+
path: Path;
|
|
95
|
+
preValidators?:
|
|
96
|
+
RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>
|
|
97
|
+
| RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>[];
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
export interface RouteSettingsParams
|
|
101
|
+
<
|
|
102
|
+
Path = string,
|
|
103
|
+
P = core.ParamsDictionary,
|
|
104
|
+
ResBody = any,
|
|
105
|
+
ReqBody = any,
|
|
106
|
+
ReqQuery = ParsedQs,
|
|
107
|
+
Locals extends Record<string, any> = Record<string, any>,
|
|
108
|
+
MetaResType = any
|
|
109
|
+
> extends BaseMeta<MetaResType> {
|
|
110
|
+
path: Path;
|
|
111
|
+
preValidators?:
|
|
112
|
+
RequestHandlerParams<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>
|
|
113
|
+
| RequestHandlerParams<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>[];
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
//--- ROUTER MATCHER
|
|
117
|
+
|
|
118
|
+
export interface IRouterMatcher<
|
|
119
|
+
T,
|
|
120
|
+
Method extends 'all' | 'get' | 'post' | 'put' | 'delete' | 'patch' | 'options' | 'head' = any
|
|
121
|
+
> {
|
|
122
|
+
<
|
|
123
|
+
Route extends string,
|
|
124
|
+
P = core.RouteParameters<Route>,
|
|
125
|
+
ResBody = any,
|
|
126
|
+
ReqBody = any,
|
|
127
|
+
ReqQuery = ParsedQs,
|
|
128
|
+
Locals extends Record<string, any> = Record<string, any>,
|
|
129
|
+
MetaResType = any
|
|
130
|
+
>(
|
|
131
|
+
// tslint:disable-next-line no-unnecessary-generics (it's used as the default type parameter for P)
|
|
132
|
+
path: RouteSettings<Route, P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>,
|
|
133
|
+
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
134
|
+
...handlers: Array<RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
135
|
+
): T;
|
|
136
|
+
<
|
|
137
|
+
Path extends string,
|
|
138
|
+
P = core.RouteParameters<Path>,
|
|
139
|
+
ResBody = any,
|
|
140
|
+
ReqBody = any,
|
|
141
|
+
ReqQuery = ParsedQs,
|
|
142
|
+
Locals extends Record<string, any> = Record<string, any>,
|
|
143
|
+
MetaResType = any
|
|
144
|
+
>(
|
|
145
|
+
// tslint:disable-next-line no-unnecessary-generics (it's used as the default type parameter for P)
|
|
146
|
+
path: RouteSettingsParams<Path, P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>,
|
|
147
|
+
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
148
|
+
...handlers: Array<RequestHandlerParams<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
149
|
+
): T;
|
|
150
|
+
<
|
|
151
|
+
P = core.ParamsDictionary,
|
|
152
|
+
ResBody = any,
|
|
153
|
+
ReqBody = any,
|
|
154
|
+
ReqQuery = ParsedQs,
|
|
155
|
+
Locals extends Record<string, any> = Record<string, any>,
|
|
156
|
+
MetaResType = any
|
|
157
|
+
>(
|
|
158
|
+
path: RouteSettings<core.PathParams, P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>,
|
|
159
|
+
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
160
|
+
...handlers: Array<RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
161
|
+
): T;
|
|
162
|
+
<
|
|
163
|
+
P = core.ParamsDictionary,
|
|
164
|
+
ResBody = any,
|
|
165
|
+
ReqBody = any,
|
|
166
|
+
ReqQuery = ParsedQs,
|
|
167
|
+
Locals extends Record<string, any> = Record<string, any>,
|
|
168
|
+
MetaResType = any
|
|
169
|
+
>(
|
|
170
|
+
path: RouteSettingsParams<core.PathParams, P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>,
|
|
171
|
+
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
172
|
+
...handlers: Array<RequestHandlerParams<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
173
|
+
): T;
|
|
174
|
+
<
|
|
175
|
+
Route extends string,
|
|
176
|
+
P = core.RouteParameters<Route>,
|
|
177
|
+
ResBody = any,
|
|
178
|
+
ReqBody = any,
|
|
179
|
+
ReqQuery = ParsedQs,
|
|
180
|
+
Locals extends Record<string, any> = Record<string, any>
|
|
181
|
+
>(
|
|
182
|
+
// tslint:disable-next-line no-unnecessary-generics (it's used as the default type parameter for P)
|
|
183
|
+
path: Route,
|
|
184
|
+
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
185
|
+
...handlers: Array<RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals>>
|
|
186
|
+
): T;
|
|
187
|
+
<
|
|
188
|
+
Path extends string,
|
|
189
|
+
P = core.RouteParameters<Path>,
|
|
190
|
+
ResBody = any,
|
|
191
|
+
ReqBody = any,
|
|
192
|
+
ReqQuery = ParsedQs,
|
|
193
|
+
Locals extends Record<string, any> = Record<string, any>
|
|
194
|
+
>(
|
|
195
|
+
// tslint:disable-next-line no-unnecessary-generics (it's used as the default type parameter for P)
|
|
196
|
+
path: Path,
|
|
197
|
+
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
198
|
+
...handlers: Array<RequestHandlerParams<P, ResBody, ReqBody, ReqQuery, Locals>>
|
|
199
|
+
): T;
|
|
200
|
+
<
|
|
201
|
+
P = core.ParamsDictionary,
|
|
202
|
+
ResBody = any,
|
|
203
|
+
ReqBody = any,
|
|
204
|
+
ReqQuery = ParsedQs,
|
|
205
|
+
Locals extends Record<string, any> = Record<string, any>
|
|
206
|
+
>(
|
|
207
|
+
path: core.PathParams,
|
|
208
|
+
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
209
|
+
...handlers: Array<RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals>>
|
|
210
|
+
): T;
|
|
211
|
+
<
|
|
212
|
+
P = core.ParamsDictionary,
|
|
213
|
+
ResBody = any,
|
|
214
|
+
ReqBody = any,
|
|
215
|
+
ReqQuery = ParsedQs,
|
|
216
|
+
Locals extends Record<string, any> = Record<string, any>
|
|
217
|
+
>(
|
|
218
|
+
path: core.PathParams,
|
|
219
|
+
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
220
|
+
...handlers: Array<RequestHandlerParams<P, ResBody, ReqBody, ReqQuery, Locals>>
|
|
221
|
+
): T;
|
|
222
|
+
(path: core.PathParams, subApplication: core.Application): T;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
//--- ROUTER MIDDLEWARE EDITOR
|
|
226
|
+
|
|
227
|
+
export interface IRouterMiddlewareEditor<
|
|
228
|
+
T
|
|
229
|
+
> {
|
|
230
|
+
<
|
|
231
|
+
P = core.ParamsDictionary,
|
|
232
|
+
ResBody = any,
|
|
233
|
+
ReqBody = any,
|
|
234
|
+
ReqQuery = ParsedQs,
|
|
235
|
+
Locals extends Record<string, any> = Record<string, any>,
|
|
236
|
+
MetaResType = any
|
|
237
|
+
>(
|
|
238
|
+
...handlers: Array<RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
239
|
+
): T;
|
|
240
|
+
<
|
|
241
|
+
P = core.ParamsDictionary,
|
|
242
|
+
ResBody = any,
|
|
243
|
+
ReqBody = any,
|
|
244
|
+
ReqQuery = ParsedQs,
|
|
245
|
+
Locals extends Record<string, any> = Record<string, any>,
|
|
246
|
+
MetaResType = any
|
|
247
|
+
>(
|
|
248
|
+
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
249
|
+
...handlers: Array<RequestHandlerParams<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
250
|
+
): T;
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
//--- ROUTER HANDLER
|
|
254
|
+
|
|
255
|
+
export interface IRouterHandler<T, Route extends string = string, MetaResType = any> {
|
|
256
|
+
(...handlers: Array<RequestHandler<
|
|
257
|
+
core.RouteParameters<Route>,
|
|
258
|
+
any, any, ParsedQs, Record<string, any>, MetaResType
|
|
259
|
+
>>): T;
|
|
260
|
+
(...handlers: Array<RequestHandlerParams<
|
|
261
|
+
core.RouteParameters<Route>,
|
|
262
|
+
any, any, ParsedQs, Record<string, any>, MetaResType
|
|
263
|
+
>>): T;
|
|
264
|
+
<
|
|
265
|
+
P = core.RouteParameters<Route>,
|
|
266
|
+
ResBody = any,
|
|
267
|
+
ReqBody = any,
|
|
268
|
+
ReqQuery = ParsedQs,
|
|
269
|
+
Locals extends Record<string, any> = Record<string, any>
|
|
270
|
+
>(
|
|
271
|
+
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
272
|
+
...handlers: Array<RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
273
|
+
): T;
|
|
274
|
+
<
|
|
275
|
+
P = core.RouteParameters<Route>,
|
|
276
|
+
ResBody = any,
|
|
277
|
+
ReqBody = any,
|
|
278
|
+
ReqQuery = ParsedQs,
|
|
279
|
+
Locals extends Record<string, any> = Record<string, any>
|
|
280
|
+
>(
|
|
281
|
+
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
282
|
+
...handlers: Array<RequestHandlerParams<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
283
|
+
): T;
|
|
284
|
+
<
|
|
285
|
+
P = core.ParamsDictionary,
|
|
286
|
+
ResBody = any,
|
|
287
|
+
ReqBody = any,
|
|
288
|
+
ReqQuery = ParsedQs,
|
|
289
|
+
Locals extends Record<string, any> = Record<string, any>
|
|
290
|
+
>(
|
|
291
|
+
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
292
|
+
...handlers: Array<RequestHandler<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
293
|
+
): T;
|
|
294
|
+
<
|
|
295
|
+
P = core.ParamsDictionary,
|
|
296
|
+
ResBody = any,
|
|
297
|
+
ReqBody = any,
|
|
298
|
+
ReqQuery = ParsedQs,
|
|
299
|
+
Locals extends Record<string, any> = Record<string, any>
|
|
300
|
+
>(
|
|
301
|
+
// tslint:disable-next-line no-unnecessary-generics (This generic is meant to be passed explicitly.)
|
|
302
|
+
...handlers: Array<RequestHandlerParams<P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>>
|
|
303
|
+
): T;
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
//--- ROUTE
|
|
307
|
+
|
|
308
|
+
export interface IRoute<Route extends string = string, MetaResType = any> {
|
|
309
|
+
path: string;
|
|
310
|
+
stack: any;
|
|
311
|
+
all: IRouterHandler<this, Route, MetaResType>;
|
|
312
|
+
get: IRouterHandler<this, Route, MetaResType>;
|
|
313
|
+
post: IRouterHandler<this, Route, MetaResType>;
|
|
314
|
+
put: IRouterHandler<this, Route, MetaResType>;
|
|
315
|
+
delete: IRouterHandler<this, Route, MetaResType>;
|
|
316
|
+
patch: IRouterHandler<this, Route, MetaResType>;
|
|
317
|
+
options: IRouterHandler<this, Route, MetaResType>;
|
|
318
|
+
head: IRouterHandler<this, Route, MetaResType>;
|
|
319
|
+
|
|
320
|
+
checkout: IRouterHandler<this, Route, MetaResType>;
|
|
321
|
+
copy: IRouterHandler<this, Route, MetaResType>;
|
|
322
|
+
lock: IRouterHandler<this, Route, MetaResType>;
|
|
323
|
+
merge: IRouterHandler<this, Route, MetaResType>;
|
|
324
|
+
mkactivity: IRouterHandler<this, Route, MetaResType>;
|
|
325
|
+
mkcol: IRouterHandler<this, Route, MetaResType>;
|
|
326
|
+
move: IRouterHandler<this, Route, MetaResType>;
|
|
327
|
+
'm-search': IRouterHandler<this, Route, MetaResType>;
|
|
328
|
+
notify: IRouterHandler<this, Route, MetaResType>;
|
|
329
|
+
purge: IRouterHandler<this, Route, MetaResType>;
|
|
330
|
+
report: IRouterHandler<this, Route, MetaResType>;
|
|
331
|
+
search: IRouterHandler<this, Route, MetaResType>;
|
|
332
|
+
subscribe: IRouterHandler<this, Route, MetaResType>;
|
|
333
|
+
trace: IRouterHandler<this, Route, MetaResType>;
|
|
334
|
+
unlock: IRouterHandler<this, Route, MetaResType>;
|
|
335
|
+
unsubscribe: IRouterHandler<this, Route, MetaResType>;
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
//--- ROUTE METHOD
|
|
339
|
+
|
|
340
|
+
export interface IRouteMethod {
|
|
341
|
+
<T extends string>(prefix: T): IRoute<T>;
|
|
342
|
+
(prefix: core.PathParams): IRoute;
|
|
343
|
+
<
|
|
344
|
+
Route extends string,
|
|
345
|
+
P = core.RouteParameters<Route>,
|
|
346
|
+
ResBody = any,
|
|
347
|
+
ReqBody = any,
|
|
348
|
+
ReqQuery = ParsedQs,
|
|
349
|
+
Locals extends Record<string, any> = Record<string, any>,
|
|
350
|
+
MetaResType = any
|
|
351
|
+
>(
|
|
352
|
+
prefix: RouteSettings<Route, P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>
|
|
353
|
+
): IRoute<Route, MetaResType>;
|
|
354
|
+
<
|
|
355
|
+
Path extends string,
|
|
356
|
+
P = core.RouteParameters<Path>,
|
|
357
|
+
ResBody = any,
|
|
358
|
+
ReqBody = any,
|
|
359
|
+
ReqQuery = ParsedQs,
|
|
360
|
+
Locals extends Record<string, any> = Record<string, any>,
|
|
361
|
+
MetaResType = any
|
|
362
|
+
>(
|
|
363
|
+
prefix: RouteSettingsParams<Path, P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>
|
|
364
|
+
): IRoute<Path, MetaResType>;
|
|
365
|
+
<
|
|
366
|
+
P = core.ParamsDictionary,
|
|
367
|
+
ResBody = any,
|
|
368
|
+
ReqBody = any,
|
|
369
|
+
ReqQuery = ParsedQs,
|
|
370
|
+
Locals extends Record<string, any> = Record<string, any>,
|
|
371
|
+
MetaResType = any
|
|
372
|
+
>(
|
|
373
|
+
prefix: RouteSettings<core.PathParams, P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>
|
|
374
|
+
): IRoute<string, MetaResType>;
|
|
375
|
+
<
|
|
376
|
+
P = core.ParamsDictionary,
|
|
377
|
+
ResBody = any,
|
|
378
|
+
ReqBody = any,
|
|
379
|
+
ReqQuery = ParsedQs,
|
|
380
|
+
Locals extends Record<string, any> = Record<string, any>,
|
|
381
|
+
MetaResType = any
|
|
382
|
+
>(
|
|
383
|
+
prefix: RouteSettingsParams<core.PathParams, P, ResBody, ReqBody, ReqQuery, Locals, MetaResType>
|
|
384
|
+
): IRoute<string, MetaResType>;
|
|
385
|
+
}
|
|
386
|
+
|
|
387
|
+
//--- ROUTER
|
|
388
|
+
|
|
389
|
+
export interface IRouter extends e.IRouter {
|
|
390
|
+
all: IRouterMatcher<this, 'all'>;
|
|
391
|
+
get: IRouterMatcher<this, 'get'>;
|
|
392
|
+
post: IRouterMatcher<this, 'post'>;
|
|
393
|
+
put: IRouterMatcher<this, 'put'>;
|
|
394
|
+
delete: IRouterMatcher<this, 'delete'>;
|
|
395
|
+
patch: IRouterMatcher<this, 'patch'>;
|
|
396
|
+
options: IRouterMatcher<this, 'options'>;
|
|
397
|
+
head: IRouterMatcher<this, 'head'>;
|
|
398
|
+
checkout: IRouterMatcher<this>;
|
|
399
|
+
connect: IRouterMatcher<this>;
|
|
400
|
+
copy: IRouterMatcher<this>;
|
|
401
|
+
lock: IRouterMatcher<this>;
|
|
402
|
+
merge: IRouterMatcher<this>;
|
|
403
|
+
mkactivity: IRouterMatcher<this>;
|
|
404
|
+
mkcol: IRouterMatcher<this>;
|
|
405
|
+
move: IRouterMatcher<this>;
|
|
406
|
+
'm-search': IRouterMatcher<this>;
|
|
407
|
+
notify: IRouterMatcher<this>;
|
|
408
|
+
propfind: IRouterMatcher<this>;
|
|
409
|
+
proppatch: IRouterMatcher<this>;
|
|
410
|
+
purge: IRouterMatcher<this>;
|
|
411
|
+
report: IRouterMatcher<this>;
|
|
412
|
+
search: IRouterMatcher<this>;
|
|
413
|
+
subscribe: IRouterMatcher<this>;
|
|
414
|
+
trace: IRouterMatcher<this>;
|
|
415
|
+
unlock: IRouterMatcher<this>;
|
|
416
|
+
unsubscribe: IRouterMatcher<this>;
|
|
417
|
+
|
|
418
|
+
route: IRouteMethod;
|
|
419
|
+
|
|
420
|
+
//--- ROUTER DEV METHODS
|
|
421
|
+
|
|
422
|
+
getMeta(): RouteMeta[];
|
|
423
|
+
|
|
424
|
+
setAuthHandlers: IRouterMiddlewareEditor<this>;
|
|
425
|
+
setAuthHandlersIfNone: IRouterMiddlewareEditor<this>;
|
|
426
|
+
setValidators: IRouterMiddlewareEditor<this>;
|
|
427
|
+
setValidatorsIfNone: IRouterMiddlewareEditor<this>;
|
|
428
|
+
}
|
|
429
|
+
}
|
|
430
|
+
|
|
431
|
+
declare function routing(options?: e.RouterOptions): routing.IRouter;
|
|
432
|
+
|
|
433
433
|
export = routing;
|