@forklaunch/hyper-express 0.5.4 → 0.5.6

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/lib/index.d.ts CHANGED
@@ -1,12 +1,705 @@
1
- import * as _forklaunch_hyper_express_fork from '@forklaunch/hyper-express-fork';
2
- import { Server, MiddlewareHandler, Request, Response, MiddlewareNext, ServerConstructorOptions, Router as Router$1 } from '@forklaunch/hyper-express-fork';
3
- export { MiddlewareNext as NextFunction, Request, Response } from '@forklaunch/hyper-express-fork';
4
1
  import * as _forklaunch_core_http from '@forklaunch/core/http';
5
- import { ForklaunchExpressLikeApplication, OpenTelemetryCollector, MetricsDefinition, DocsConfiguration, ForklaunchExpressLikeRouter, ForklaunchRouter, TypedMiddlewareDefinition } from '@forklaunch/core/http';
2
+ import { ParamsObject, ResponsesObject, Body, QueryObject, HeadersObject, ContractDetails, ExpressLikeSchemaHandler, ForklaunchExpressLikeApplication, OpenTelemetryCollector, MetricsDefinition, DocsConfiguration, ForklaunchExpressLikeRouter, ForklaunchRouter, TypedMiddlewareDefinition } from '@forklaunch/core/http';
3
+ import { Request, Response, MiddlewareNext, Server, MiddlewareHandler, ServerConstructorOptions, Router as Router$1 } from '@forklaunch/hyper-express-fork';
6
4
  import { AnySchemaValidator } from '@forklaunch/validator';
7
5
  import { BusboyConfig } from 'busboy';
8
6
  import * as uWebsockets from 'uWebSockets.js';
9
- export { ParsedQs } from 'qs';
7
+
8
+ /**
9
+ * Creates a route handler that matches any HTTP method with schema validation and type safety.
10
+ *
11
+ * @template SV - The schema validator type
12
+ * @template Path - The route path type (must start with '/')
13
+ * @template P - The path parameters type
14
+ * @template ResBodyMap - The response body map type
15
+ * @template ReqBody - The request body type
16
+ * @template ReqQuery - The request query parameters type
17
+ * @template ReqHeaders - The request headers type
18
+ * @template ResHeaders - The response headers type
19
+ * @template LocalsObj - The locals object type
20
+ *
21
+ * @param {SV} schemaValidator - The schema validator instance
22
+ * @param {Path} path - The route path
23
+ * @param {ContractDetails<SV, 'any', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>} contractDetails - The contract details for the route
24
+ * @param {...ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]} handlers - The route handlers
25
+ *
26
+ * @returns {void} - Returns nothing, registers the route with Hyper-Express
27
+ *
28
+ * @example
29
+ * ```typescript
30
+ * any(
31
+ * schemaValidator,
32
+ * '/webhooks',
33
+ * {
34
+ * summary: 'Webhook endpoint',
35
+ * description: 'Handles webhook requests from any HTTP method',
36
+ * tags: ['webhooks'],
37
+ * responses: {
38
+ * 200: {
39
+ * description: 'Webhook processed successfully',
40
+ * content: {
41
+ * 'application/json': {
42
+ * schema: {
43
+ * type: 'object',
44
+ * properties: {
45
+ * status: { type: 'string' }
46
+ * }
47
+ * }
48
+ * }
49
+ * }
50
+ * }
51
+ * }
52
+ * },
53
+ * async (req, res) => {
54
+ * const method = req.method;
55
+ * const body = await req.json();
56
+ * await processWebhook(method, body);
57
+ * res.status(200).json({ status: 'processed' });
58
+ * }
59
+ * );
60
+ * ```
61
+ */
62
+ declare const any: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: ContractDetails<SV, "middleware", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>, ...handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]) => {
63
+ _typedHandler: true;
64
+ _path: Path;
65
+ contractDetails: _forklaunch_core_http.MiddlewareContractDetails<SV, Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>;
66
+ handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[];
67
+ };
68
+
69
+ /**
70
+ * Creates a DELETE route handler with schema validation and type safety.
71
+ *
72
+ * @template SV - The schema validator type
73
+ * @template Path - The route path type (must start with '/')
74
+ * @template P - The path parameters type
75
+ * @template ResBodyMap - The response body map type
76
+ * @template ReqBody - The request body type
77
+ * @template ReqQuery - The request query parameters type
78
+ * @template ReqHeaders - The request headers type
79
+ * @template ResHeaders - The response headers type
80
+ * @template LocalsObj - The locals object type
81
+ *
82
+ * @param {SV} schemaValidator - The schema validator instance
83
+ * @param {Path} path - The route path
84
+ * @param {ContractDetails<SV, 'delete', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>} contractDetails - The contract details for the route
85
+ * @param {...ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]} handlers - The route handlers
86
+ *
87
+ * @returns {void} - Returns nothing, registers the route with Hyper-Express
88
+ *
89
+ * @example
90
+ * ```typescript
91
+ * delete_(
92
+ * schemaValidator,
93
+ * '/users/:id',
94
+ * {
95
+ * summary: 'Delete user',
96
+ * description: 'Deletes a user by ID',
97
+ * tags: ['users'],
98
+ * parameters: [
99
+ * {
100
+ * name: 'id',
101
+ * in: 'path',
102
+ * required: true,
103
+ * schema: { type: 'string' }
104
+ * }
105
+ * ],
106
+ * responses: {
107
+ * 204: {
108
+ * description: 'User deleted successfully'
109
+ * },
110
+ * 404: {
111
+ * description: 'User not found',
112
+ * content: {
113
+ * 'application/json': {
114
+ * schema: {
115
+ * type: 'object',
116
+ * properties: {
117
+ * error: { type: 'string' }
118
+ * }
119
+ * }
120
+ * }
121
+ * }
122
+ * }
123
+ * }
124
+ * },
125
+ * async (req, res) => {
126
+ * const { id } = req.params;
127
+ * await deleteUser(id);
128
+ * res.status(204).end();
129
+ * }
130
+ * );
131
+ * ```
132
+ */
133
+ declare const delete_: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: ContractDetails<SV, "delete", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>, ...handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]) => _forklaunch_core_http.ExpressLikeTypedHandler<SV, "delete", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>;
134
+
135
+ /**
136
+ * Creates a GET route handler with schema validation and type safety.
137
+ *
138
+ * @template SV - The schema validator type
139
+ * @template Path - The route path type (must start with '/')
140
+ * @template P - The path parameters type
141
+ * @template ResBodyMap - The response body map type
142
+ * @template ReqBody - The request body type
143
+ * @template ReqQuery - The request query parameters type
144
+ * @template ReqHeaders - The request headers type
145
+ * @template ResHeaders - The response headers type
146
+ * @template LocalsObj - The locals object type
147
+ *
148
+ * @param {SV} schemaValidator - The schema validator instance
149
+ * @param {Path} path - The route path
150
+ * @param {ContractDetails<SV, 'get', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>} contractDetails - The contract details for the route
151
+ * @param {...ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]} handlers - The route handlers
152
+ *
153
+ * @returns {void} - Returns nothing, registers the route with Hyper-Express
154
+ *
155
+ * @example
156
+ * ```typescript
157
+ * get(
158
+ * schemaValidator,
159
+ * '/users/:id',
160
+ * {
161
+ * summary: 'Get user',
162
+ * description: 'Retrieves a user by ID',
163
+ * tags: ['users'],
164
+ * parameters: [
165
+ * {
166
+ * name: 'id',
167
+ * in: 'path',
168
+ * required: true,
169
+ * schema: { type: 'string' }
170
+ * }
171
+ * ],
172
+ * responses: {
173
+ * 200: {
174
+ * description: 'User retrieved successfully',
175
+ * content: {
176
+ * 'application/json': {
177
+ * schema: {
178
+ * type: 'object',
179
+ * properties: {
180
+ * id: { type: 'string' },
181
+ * name: { type: 'string' },
182
+ * email: { type: 'string' }
183
+ * }
184
+ * }
185
+ * }
186
+ * }
187
+ * },
188
+ * 404: {
189
+ * description: 'User not found',
190
+ * content: {
191
+ * 'application/json': {
192
+ * schema: {
193
+ * type: 'object',
194
+ * properties: {
195
+ * error: { type: 'string' }
196
+ * }
197
+ * }
198
+ * }
199
+ * }
200
+ * }
201
+ * }
202
+ * },
203
+ * async (req, res) => {
204
+ * const { id } = req.params;
205
+ * const user = await getUser(id);
206
+ * res.status(200).json(user);
207
+ * }
208
+ * );
209
+ * ```
210
+ */
211
+ declare const get: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: ContractDetails<SV, "get", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>, ...handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]) => _forklaunch_core_http.ExpressLikeTypedHandler<SV, "get", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>;
212
+
213
+ /**
214
+ * Creates a HEAD route handler with schema validation and type safety.
215
+ *
216
+ * @template SV - The schema validator type
217
+ * @template Path - The route path type (must start with '/')
218
+ * @template P - The path parameters type
219
+ * @template ResBodyMap - The response body map type
220
+ * @template ReqBody - The request body type
221
+ * @template ReqQuery - The request query parameters type
222
+ * @template ReqHeaders - The request headers type
223
+ * @template ResHeaders - The response headers type
224
+ * @template LocalsObj - The locals object type
225
+ *
226
+ * @param {SV} schemaValidator - The schema validator instance
227
+ * @param {Path} path - The route path
228
+ * @param {ContractDetails<SV, 'head', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>} contractDetails - The contract details for the route
229
+ * @param {...ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]} handlers - The route handlers
230
+ *
231
+ * @returns {void} - Returns nothing, registers the route with Hyper-Express
232
+ *
233
+ * @example
234
+ * ```typescript
235
+ * head(
236
+ * schemaValidator,
237
+ * '/files/:id',
238
+ * {
239
+ * summary: 'Get file metadata',
240
+ * description: 'Retrieves metadata for a file without downloading its contents',
241
+ * tags: ['files'],
242
+ * parameters: [
243
+ * {
244
+ * name: 'id',
245
+ * in: 'path',
246
+ * required: true,
247
+ * schema: { type: 'string' }
248
+ * }
249
+ * ],
250
+ * responses: {
251
+ * 200: {
252
+ * description: 'File metadata retrieved successfully',
253
+ * headers: {
254
+ * 'content-length': {
255
+ * schema: { type: 'string' }
256
+ * },
257
+ * 'content-type': {
258
+ * schema: { type: 'string' }
259
+ * },
260
+ * 'last-modified': {
261
+ * schema: { type: 'string' }
262
+ * }
263
+ * }
264
+ * },
265
+ * 404: {
266
+ * description: 'File not found'
267
+ * }
268
+ * }
269
+ * },
270
+ * async (req, res) => {
271
+ * const { id } = req.params;
272
+ * const metadata = await getFileMetadata(id);
273
+ * res.setHeader('content-length', metadata.size);
274
+ * res.setHeader('content-type', metadata.type);
275
+ * res.setHeader('last-modified', metadata.lastModified);
276
+ * res.status(200).end();
277
+ * }
278
+ * );
279
+ * ```
280
+ */
281
+ declare const head: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: ContractDetails<SV, "head", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>, ...handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]) => _forklaunch_core_http.ExpressLikeTypedHandler<SV, "head", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>;
282
+
283
+ /**
284
+ * Creates a middleware handler with schema validation and type safety.
285
+ *
286
+ * @template SV - The schema validator type
287
+ * @template Path - The route path type (must start with '/')
288
+ * @template P - The path parameters type
289
+ * @template ResBodyMap - The response body map type
290
+ * @template ReqBody - The request body type
291
+ * @template ReqQuery - The request query parameters type
292
+ * @template ReqHeaders - The request headers type
293
+ * @template ResHeaders - The response headers type
294
+ * @template LocalsObj - The locals object type
295
+ *
296
+ * @param {SV} schemaValidator - The schema validator instance
297
+ * @param {Path} path - The route path
298
+ * @param {ContractDetails<SV, 'middleware', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>} contractDetails - The contract details for the route
299
+ * @param {...ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]} handlers - The route handlers
300
+ *
301
+ * @returns {void} - Returns nothing, registers the middleware with Hyper-Express
302
+ *
303
+ * @example
304
+ * ```typescript
305
+ * middleware(
306
+ * schemaValidator,
307
+ * '/api/*',
308
+ * {
309
+ * summary: 'Authentication middleware',
310
+ * description: 'Validates JWT tokens for API routes',
311
+ * tags: ['auth'],
312
+ * responses: {
313
+ * 401: {
314
+ * description: 'Unauthorized',
315
+ * content: {
316
+ * 'application/json': {
317
+ * schema: {
318
+ * type: 'object',
319
+ * properties: {
320
+ * error: { type: 'string' }
321
+ * }
322
+ * }
323
+ * }
324
+ * }
325
+ * }
326
+ * }
327
+ * },
328
+ * async (req, res, next) => {
329
+ * const token = req.headers.authorization?.split(' ')[1];
330
+ * if (!token) {
331
+ * res.status(401).json({ error: 'No token provided' });
332
+ * return;
333
+ * }
334
+ * try {
335
+ * const decoded = await verifyToken(token);
336
+ * req.user = decoded;
337
+ * next();
338
+ * } catch (err) {
339
+ * res.status(401).json({ error: 'Invalid token' });
340
+ * }
341
+ * }
342
+ * );
343
+ * ```
344
+ */
345
+ declare const middleware: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: ContractDetails<SV, "middleware", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>, ...handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]) => {
346
+ _typedHandler: true;
347
+ _path: Path;
348
+ contractDetails: _forklaunch_core_http.MiddlewareContractDetails<SV, Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>;
349
+ handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[];
350
+ };
351
+
352
+ /**
353
+ * Creates an OPTIONS route handler with schema validation and type safety.
354
+ *
355
+ * @template SV - The schema validator type
356
+ * @template Path - The route path type (must start with '/')
357
+ * @template P - The path parameters type
358
+ * @template ResBodyMap - The response body map type
359
+ * @template ReqBody - The request body type
360
+ * @template ReqQuery - The request query parameters type
361
+ * @template ReqHeaders - The request headers type
362
+ * @template ResHeaders - The response headers type
363
+ * @template LocalsObj - The locals object type
364
+ *
365
+ * @param {SV} schemaValidator - The schema validator instance
366
+ * @param {Path} path - The route path
367
+ * @param {ContractDetails<SV, 'options', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>} contractDetails - The contract details for the route
368
+ * @param {...ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]} handlers - The route handlers
369
+ *
370
+ * @returns {void} - Returns nothing, registers the route with Hyper-Express
371
+ *
372
+ * @example
373
+ * ```typescript
374
+ * options(
375
+ * schemaValidator,
376
+ * '/users/:id',
377
+ * {
378
+ * summary: 'Get user options',
379
+ * description: 'Returns the allowed HTTP methods for the user resource',
380
+ * tags: ['users'],
381
+ * parameters: [
382
+ * {
383
+ * name: 'id',
384
+ * in: 'path',
385
+ * required: true,
386
+ * schema: { type: 'string' }
387
+ * }
388
+ * ],
389
+ * responses: {
390
+ * 200: {
391
+ * description: 'Allowed methods retrieved successfully',
392
+ * headers: {
393
+ * 'allow': {
394
+ * schema: { type: 'string' }
395
+ * }
396
+ * }
397
+ * }
398
+ * }
399
+ * },
400
+ * async (req, res) => {
401
+ * res.setHeader('allow', 'GET, PUT, PATCH, DELETE');
402
+ * res.status(200).end();
403
+ * }
404
+ * );
405
+ * ```
406
+ */
407
+ declare const options: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: ContractDetails<SV, "options", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>, ...handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]) => _forklaunch_core_http.ExpressLikeTypedHandler<SV, "options", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>;
408
+
409
+ /**
410
+ * Creates a PATCH route handler with schema validation and type safety.
411
+ *
412
+ * @template SV - The schema validator type
413
+ * @template Path - The route path type (must start with '/')
414
+ * @template P - The path parameters type
415
+ * @template ResBodyMap - The response body map type
416
+ * @template ReqBody - The request body type
417
+ * @template ReqQuery - The request query parameters type
418
+ * @template ReqHeaders - The request headers type
419
+ * @template ResHeaders - The response headers type
420
+ * @template LocalsObj - The locals object type
421
+ *
422
+ * @param {SV} schemaValidator - The schema validator instance
423
+ * @param {Path} path - The route path
424
+ * @param {ContractDetails<SV, 'patch', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>} contractDetails - The contract details for the route
425
+ * @param {...ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]} handlers - The route handlers
426
+ *
427
+ * @returns {void} - Returns nothing, registers the route with Hyper-Express
428
+ *
429
+ * @example
430
+ * ```typescript
431
+ * patch(
432
+ * schemaValidator,
433
+ * '/users/:id',
434
+ * {
435
+ * summary: 'Update user partially',
436
+ * description: 'Updates specific fields of a user by ID',
437
+ * tags: ['users'],
438
+ * parameters: [
439
+ * {
440
+ * name: 'id',
441
+ * in: 'path',
442
+ * required: true,
443
+ * schema: { type: 'string' }
444
+ * }
445
+ * ],
446
+ * requestBody: {
447
+ * content: {
448
+ * 'application/json': {
449
+ * schema: {
450
+ * type: 'object',
451
+ * properties: {
452
+ * name: { type: 'string' },
453
+ * email: { type: 'string' }
454
+ * }
455
+ * }
456
+ * }
457
+ * }
458
+ * },
459
+ * responses: {
460
+ * 200: {
461
+ * description: 'User updated successfully',
462
+ * content: {
463
+ * 'application/json': {
464
+ * schema: {
465
+ * type: 'object',
466
+ * properties: {
467
+ * id: { type: 'string' },
468
+ * name: { type: 'string' },
469
+ * email: { type: 'string' }
470
+ * }
471
+ * }
472
+ * }
473
+ * }
474
+ * },
475
+ * 404: {
476
+ * description: 'User not found',
477
+ * content: {
478
+ * 'application/json': {
479
+ * schema: {
480
+ * type: 'object',
481
+ * properties: {
482
+ * error: { type: 'string' }
483
+ * }
484
+ * }
485
+ * }
486
+ * }
487
+ * }
488
+ * }
489
+ * },
490
+ * async (req, res) => {
491
+ * const { id } = req.params;
492
+ * const updates = await req.json();
493
+ * const user = await updateUser(id, updates);
494
+ * res.status(200).json(user);
495
+ * }
496
+ * );
497
+ * ```
498
+ */
499
+ declare const patch: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: ContractDetails<SV, "patch", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>, ...handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]) => _forklaunch_core_http.ExpressLikeTypedHandler<SV, "patch", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>;
500
+
501
+ /**
502
+ * Creates a POST route handler with schema validation and type safety.
503
+ *
504
+ * @template SV - The schema validator type
505
+ * @template Path - The route path type (must start with '/')
506
+ * @template P - The path parameters type
507
+ * @template ResBodyMap - The response body map type
508
+ * @template ReqBody - The request body type
509
+ * @template ReqQuery - The request query parameters type
510
+ * @template ReqHeaders - The request headers type
511
+ * @template ResHeaders - The response headers type
512
+ * @template LocalsObj - The locals object type
513
+ *
514
+ * @param {SV} schemaValidator - The schema validator instance
515
+ * @param {Path} path - The route path
516
+ * @param {ContractDetails<SV, 'post', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>} contractDetails - The contract details for the route
517
+ * @param {...ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]} handlers - The route handlers
518
+ *
519
+ * @returns {void} - Returns nothing, registers the route with Hyper-Express
520
+ *
521
+ * @example
522
+ * ```typescript
523
+ * post(
524
+ * schemaValidator,
525
+ * '/users',
526
+ * {
527
+ * summary: 'Create user',
528
+ * description: 'Creates a new user',
529
+ * tags: ['users'],
530
+ * requestBody: {
531
+ * content: {
532
+ * 'application/json': {
533
+ * schema: {
534
+ * type: 'object',
535
+ * properties: {
536
+ * name: { type: 'string' },
537
+ * email: { type: 'string' },
538
+ * password: { type: 'string' }
539
+ * },
540
+ * required: ['name', 'email', 'password']
541
+ * }
542
+ * }
543
+ * }
544
+ * },
545
+ * responses: {
546
+ * 201: {
547
+ * description: 'User created successfully',
548
+ * content: {
549
+ * 'application/json': {
550
+ * schema: {
551
+ * type: 'object',
552
+ * properties: {
553
+ * id: { type: 'string' },
554
+ * name: { type: 'string' },
555
+ * email: { type: 'string' }
556
+ * }
557
+ * }
558
+ * }
559
+ * }
560
+ * },
561
+ * 400: {
562
+ * description: 'Invalid input',
563
+ * content: {
564
+ * 'application/json': {
565
+ * schema: {
566
+ * type: 'object',
567
+ * properties: {
568
+ * error: { type: 'string' }
569
+ * }
570
+ * }
571
+ * }
572
+ * }
573
+ * }
574
+ * }
575
+ * },
576
+ * async (req, res) => {
577
+ * const userData = await req.json();
578
+ * const user = await createUser(userData);
579
+ * res.status(201).json(user);
580
+ * }
581
+ * );
582
+ * ```
583
+ */
584
+ declare const post: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: ContractDetails<SV, "post", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>, ...handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]) => _forklaunch_core_http.ExpressLikeTypedHandler<SV, "post", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>;
585
+
586
+ /**
587
+ * Creates a PUT route handler with schema validation and type safety for Hyper-Express.
588
+ *
589
+ * @template SV - The schema validator type
590
+ * @template Path - The route path type (must start with '/')
591
+ * @template P - The path parameters type
592
+ * @template ResBodyMap - The response body map type
593
+ * @template ReqBody - The request body type
594
+ * @template ReqQuery - The request query parameters type
595
+ * @template ReqHeaders - The request headers type
596
+ * @template ResHeaders - The response headers type
597
+ * @template LocalsObj - The locals object type
598
+ *
599
+ * @param {SV} schemaValidator - The schema validator instance
600
+ * @param {Path} path - The route path
601
+ * @param {ContractDetails<SV, 'put', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>} contractDetails - The contract details for the route
602
+ * @param {...ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]} handlers - The route handlers
603
+ *
604
+ * @returns {void} - Returns nothing, registers the route with Hyper-Express
605
+ *
606
+ * @example
607
+ * ```typescript
608
+ * put(
609
+ * schemaValidator,
610
+ * '/users/:id',
611
+ * {
612
+ * summary: 'Update user',
613
+ * description: 'Updates a user by ID',
614
+ * tags: ['users'],
615
+ * pathParams: {
616
+ * id: { type: 'string' }
617
+ * },
618
+ * body: {
619
+ * type: 'object',
620
+ * properties: {
621
+ * name: { type: 'string' }
622
+ * }
623
+ * },
624
+ * responses: {
625
+ * 200: {
626
+ * description: 'User updated successfully',
627
+ * content: {
628
+ * 'application/json': {
629
+ * schema: {
630
+ * type: 'object',
631
+ * properties: {
632
+ * id: { type: 'string' },
633
+ * name: { type: 'string' }
634
+ * }
635
+ * }
636
+ * }
637
+ * }
638
+ * }
639
+ * }
640
+ * },
641
+ * async (req, res) => {
642
+ * const { id } = req.params;
643
+ * const { name } = req.body;
644
+ * // Update user logic
645
+ * res.json({ id, name });
646
+ * }
647
+ * );
648
+ * ```
649
+ */
650
+ declare const put: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: ContractDetails<SV, "put", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>, ...handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]) => _forklaunch_core_http.ExpressLikeTypedHandler<SV, "put", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>;
651
+
652
+ /**
653
+ * Creates a TRACE route handler with schema validation and type safety.
654
+ *
655
+ * @template SV - The schema validator type
656
+ * @template Path - The route path type (must start with '/')
657
+ * @template P - The path parameters type
658
+ * @template ResBodyMap - The response body map type
659
+ * @template ReqBody - The request body type
660
+ * @template ReqQuery - The request query parameters type
661
+ * @template ReqHeaders - The request headers type
662
+ * @template ResHeaders - The response headers type
663
+ * @template LocalsObj - The locals object type
664
+ *
665
+ * @param {SV} schemaValidator - The schema validator instance
666
+ * @param {Path} path - The route path
667
+ * @param {ContractDetails<SV, 'trace', Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>} contractDetails - The contract details for the route
668
+ * @param {...ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]} handlers - The route handlers
669
+ *
670
+ * @returns {void} - Returns nothing, registers the route with Hyper-Express
671
+ *
672
+ * @example
673
+ * ```typescript
674
+ * trace(
675
+ * schemaValidator,
676
+ * '/debug',
677
+ * {
678
+ * summary: 'Debug endpoint',
679
+ * description: 'Returns the request message for debugging purposes',
680
+ * tags: ['debug'],
681
+ * responses: {
682
+ * 200: {
683
+ * description: 'Request message returned successfully',
684
+ * content: {
685
+ * 'message/http': {
686
+ * schema: {
687
+ * type: 'string'
688
+ * }
689
+ * }
690
+ * }
691
+ * }
692
+ * }
693
+ * },
694
+ * async (req, res) => {
695
+ * const message = await req.text();
696
+ * res.setHeader('content-type', 'message/http');
697
+ * res.status(200).send(message);
698
+ * }
699
+ * );
700
+ * ```
701
+ */
702
+ declare const trace: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends ParamsObject<SV>, ResBodyMap extends ResponsesObject<SV>, ReqBody extends Body<SV>, ReqQuery extends QueryObject<SV>, ReqHeaders extends HeadersObject<SV>, ResHeaders extends HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: ContractDetails<SV, "trace", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, Request<LocalsObj>>, ...handlers: ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>[]) => _forklaunch_core_http.ExpressLikeTypedHandler<SV, "trace", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, Request<LocalsObj>, Response<LocalsObj>, MiddlewareNext>;
10
703
 
11
704
  /**
12
705
  * Represents an application built on top of Hyper-Express and Forklaunch.
@@ -120,26 +813,16 @@ declare function forklaunchRouter<SV extends AnySchemaValidator, BasePath extend
120
813
  }): Router<SV, BasePath>;
121
814
 
122
815
  declare const handlers: {
123
- any: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends _forklaunch_core_http.ParamsObject<SV>, ResBodyMap extends _forklaunch_core_http.ResponsesObject<SV>, ReqBody extends _forklaunch_core_http.Body<SV>, ReqQuery extends _forklaunch_core_http.QueryObject<SV>, ReqHeaders extends _forklaunch_core_http.HeadersObject<SV>, ResHeaders extends _forklaunch_core_http.HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: _forklaunch_core_http.ContractDetails<SV, "middleware", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, _forklaunch_hyper_express_fork.Request<LocalsObj>>, ...handlers: _forklaunch_core_http.ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>[]) => {
124
- _typedHandler: true;
125
- _path: Path;
126
- contractDetails: _forklaunch_core_http.MiddlewareContractDetails<SV, Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, _forklaunch_hyper_express_fork.Request<LocalsObj>>;
127
- handlers: _forklaunch_core_http.ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>[];
128
- };
129
- delete: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends _forklaunch_core_http.ParamsObject<SV>, ResBodyMap extends _forklaunch_core_http.ResponsesObject<SV>, ReqBody extends _forklaunch_core_http.Body<SV>, ReqQuery extends _forklaunch_core_http.QueryObject<SV>, ReqHeaders extends _forklaunch_core_http.HeadersObject<SV>, ResHeaders extends _forklaunch_core_http.HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: _forklaunch_core_http.ContractDetails<SV, "delete", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, _forklaunch_hyper_express_fork.Request<LocalsObj>>, ...handlers: _forklaunch_core_http.ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>[]) => _forklaunch_core_http.ExpressLikeTypedHandler<SV, "delete", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>;
130
- get: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends _forklaunch_core_http.ParamsObject<SV>, ResBodyMap extends _forklaunch_core_http.ResponsesObject<SV>, ReqBody extends _forklaunch_core_http.Body<SV>, ReqQuery extends _forklaunch_core_http.QueryObject<SV>, ReqHeaders extends _forklaunch_core_http.HeadersObject<SV>, ResHeaders extends _forklaunch_core_http.HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: _forklaunch_core_http.ContractDetails<SV, "get", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, _forklaunch_hyper_express_fork.Request<LocalsObj>>, ...handlers: _forklaunch_core_http.ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>[]) => _forklaunch_core_http.ExpressLikeTypedHandler<SV, "get", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>;
131
- head: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends _forklaunch_core_http.ParamsObject<SV>, ResBodyMap extends _forklaunch_core_http.ResponsesObject<SV>, ReqBody extends _forklaunch_core_http.Body<SV>, ReqQuery extends _forklaunch_core_http.QueryObject<SV>, ReqHeaders extends _forklaunch_core_http.HeadersObject<SV>, ResHeaders extends _forklaunch_core_http.HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: _forklaunch_core_http.ContractDetails<SV, "head", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, _forklaunch_hyper_express_fork.Request<LocalsObj>>, ...handlers: _forklaunch_core_http.ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>[]) => _forklaunch_core_http.ExpressLikeTypedHandler<SV, "head", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>;
132
- middleware: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends _forklaunch_core_http.ParamsObject<SV>, ResBodyMap extends _forklaunch_core_http.ResponsesObject<SV>, ReqBody extends _forklaunch_core_http.Body<SV>, ReqQuery extends _forklaunch_core_http.QueryObject<SV>, ReqHeaders extends _forklaunch_core_http.HeadersObject<SV>, ResHeaders extends _forklaunch_core_http.HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: _forklaunch_core_http.ContractDetails<SV, "middleware", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, _forklaunch_hyper_express_fork.Request<LocalsObj>>, ...handlers: _forklaunch_core_http.ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>[]) => {
133
- _typedHandler: true;
134
- _path: Path;
135
- contractDetails: _forklaunch_core_http.MiddlewareContractDetails<SV, Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, _forklaunch_hyper_express_fork.Request<LocalsObj>>;
136
- handlers: _forklaunch_core_http.ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>[];
137
- };
138
- options: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends _forklaunch_core_http.ParamsObject<SV>, ResBodyMap extends _forklaunch_core_http.ResponsesObject<SV>, ReqBody extends _forklaunch_core_http.Body<SV>, ReqQuery extends _forklaunch_core_http.QueryObject<SV>, ReqHeaders extends _forklaunch_core_http.HeadersObject<SV>, ResHeaders extends _forklaunch_core_http.HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: _forklaunch_core_http.ContractDetails<SV, "options", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, _forklaunch_hyper_express_fork.Request<LocalsObj>>, ...handlers: _forklaunch_core_http.ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>[]) => _forklaunch_core_http.ExpressLikeTypedHandler<SV, "options", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>;
139
- patch: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends _forklaunch_core_http.ParamsObject<SV>, ResBodyMap extends _forklaunch_core_http.ResponsesObject<SV>, ReqBody extends _forklaunch_core_http.Body<SV>, ReqQuery extends _forklaunch_core_http.QueryObject<SV>, ReqHeaders extends _forklaunch_core_http.HeadersObject<SV>, ResHeaders extends _forklaunch_core_http.HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: _forklaunch_core_http.ContractDetails<SV, "patch", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, _forklaunch_hyper_express_fork.Request<LocalsObj>>, ...handlers: _forklaunch_core_http.ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>[]) => _forklaunch_core_http.ExpressLikeTypedHandler<SV, "patch", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>;
140
- post: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends _forklaunch_core_http.ParamsObject<SV>, ResBodyMap extends _forklaunch_core_http.ResponsesObject<SV>, ReqBody extends _forklaunch_core_http.Body<SV>, ReqQuery extends _forklaunch_core_http.QueryObject<SV>, ReqHeaders extends _forklaunch_core_http.HeadersObject<SV>, ResHeaders extends _forklaunch_core_http.HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: _forklaunch_core_http.ContractDetails<SV, "post", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, _forklaunch_hyper_express_fork.Request<LocalsObj>>, ...handlers: _forklaunch_core_http.ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>[]) => _forklaunch_core_http.ExpressLikeTypedHandler<SV, "post", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>;
141
- put: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends _forklaunch_core_http.ParamsObject<SV>, ResBodyMap extends _forklaunch_core_http.ResponsesObject<SV>, ReqBody extends _forklaunch_core_http.Body<SV>, ReqQuery extends _forklaunch_core_http.QueryObject<SV>, ReqHeaders extends _forklaunch_core_http.HeadersObject<SV>, ResHeaders extends _forklaunch_core_http.HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: _forklaunch_core_http.ContractDetails<SV, "put", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, _forklaunch_hyper_express_fork.Request<LocalsObj>>, ...handlers: _forklaunch_core_http.ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>[]) => _forklaunch_core_http.ExpressLikeTypedHandler<SV, "put", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>;
142
- trace: <SV extends AnySchemaValidator, Path extends `/${string}`, P extends _forklaunch_core_http.ParamsObject<SV>, ResBodyMap extends _forklaunch_core_http.ResponsesObject<SV>, ReqBody extends _forklaunch_core_http.Body<SV>, ReqQuery extends _forklaunch_core_http.QueryObject<SV>, ReqHeaders extends _forklaunch_core_http.HeadersObject<SV>, ResHeaders extends _forklaunch_core_http.HeadersObject<SV>, LocalsObj extends Record<string, unknown>>(schemaValidator: SV, path: Path, contractDetails: _forklaunch_core_http.ContractDetails<SV, "trace", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, _forklaunch_hyper_express_fork.Request<LocalsObj>>, ...handlers: _forklaunch_core_http.ExpressLikeSchemaHandler<SV, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>[]) => _forklaunch_core_http.ExpressLikeTypedHandler<SV, "trace", Path, P, ResBodyMap, ReqBody, ReqQuery, ReqHeaders, ResHeaders, LocalsObj, _forklaunch_hyper_express_fork.Request<LocalsObj>, _forklaunch_hyper_express_fork.Response<LocalsObj>, _forklaunch_hyper_express_fork.MiddlewareNext>;
816
+ any: typeof any;
817
+ delete: typeof delete_;
818
+ get: typeof get;
819
+ head: typeof head;
820
+ middleware: typeof middleware;
821
+ options: typeof options;
822
+ patch: typeof patch;
823
+ post: typeof post;
824
+ put: typeof put;
825
+ trace: typeof trace;
143
826
  };
144
827
 
145
828
  export { type App, Application, Router, forklaunchExpress, forklaunchRouter, handlers };