h3 0.7.21 → 0.8.0

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/dist/index.d.ts CHANGED
@@ -1,7 +1,29 @@
1
- import { IncomingMessage as IncomingMessage$1, ServerResponse as ServerResponse$1, OutgoingMessage } from 'http';
1
+ import { IncomingMessage, ServerResponse, OutgoingMessage } from 'http';
2
+ export { IncomingMessage as NodeIncomingMessage, ServerResponse as NodeServerResponse } from 'http';
2
3
  import { CookieSerializeOptions } from 'cookie-es';
3
4
  import * as ufo from 'ufo';
4
5
 
6
+ declare type HTTPMethod = 'GET' | 'HEAD' | 'PATCH' | 'POST' | 'PUT' | 'DELETE' | 'CONNECT' | 'OPTIONS' | 'TRACE';
7
+ declare type Encoding = false | 'ascii' | 'utf8' | 'utf-8' | 'utf16le' | 'ucs2' | 'ucs-2' | 'base64' | 'latin1' | 'binary' | 'hex';
8
+ interface H3EventContext extends Record<string, any> {
9
+ }
10
+ declare type EventHandlerResponse<T = any> = T | Promise<T>;
11
+ interface EventHandler<T = any> {
12
+ '__is_handler__'?: true;
13
+ (event: H3Event): EventHandlerResponse<T>;
14
+ }
15
+ declare type LazyEventHandler = () => EventHandler | Promise<EventHandler>;
16
+
17
+ declare type NodeListener = (req: IncomingMessage, res: ServerResponse) => void;
18
+ declare type NodePromisifiedHandler = (req: IncomingMessage, res: ServerResponse) => Promise<any>;
19
+ declare type NodeMiddleware = (req: IncomingMessage, res: ServerResponse, next: (err?: Error) => any) => any;
20
+ declare const defineNodeListener: (handler: NodeListener) => NodeListener;
21
+ declare const defineNodeMiddleware: (middleware: NodeMiddleware) => NodeMiddleware;
22
+ declare function fromNodeMiddleware(handler: NodeListener | NodeMiddleware): EventHandler;
23
+ declare function toNodeListener(app: App): NodeListener;
24
+ declare function promisifyNodeListener(handler: NodeListener | NodeMiddleware): NodePromisifiedHandler;
25
+ declare function callNodeListener(handler: NodeMiddleware, req: IncomingMessage, res: ServerResponse): Promise<unknown>;
26
+
5
27
  declare class H3Headers implements Headers {
6
28
  _headers: Record<string, string>;
7
29
  constructor(init?: HeadersInit);
@@ -24,7 +46,7 @@ declare class H3Response implements Response {
24
46
  readonly body: ReadableStream<Uint8Array> | null;
25
47
  readonly type: ResponseType;
26
48
  readonly bodyUsed = false;
27
- constructor(body?: BodyInit | HandlerResponse | null, init?: ResponseInit);
49
+ constructor(body?: BodyInit | EventHandlerResponse | null, init?: ResponseInit);
28
50
  clone(): H3Response;
29
51
  arrayBuffer(): Promise<ArrayBuffer>;
30
52
  blob(): Promise<Blob>;
@@ -37,18 +59,17 @@ declare class H3Event implements Pick<FetchEvent, 'respondWith'> {
37
59
  '__is_event__': boolean;
38
60
  req: IncomingMessage;
39
61
  res: ServerResponse;
40
- event: H3Event;
41
62
  context: H3EventContext;
42
- constructor(req: IncomingMessage$1 | IncomingMessage, res: ServerResponse$1 | ServerResponse);
63
+ constructor(req: IncomingMessage, res: ServerResponse);
43
64
  respondWith(r: H3Response | PromiseLike<H3Response>): void;
44
65
  }
45
66
  declare function isEvent(input: any): input is H3Event;
46
- declare function createEvent(req: IncomingMessage$1, res: ServerResponse$1): H3Event;
67
+ declare function createEvent(req: IncomingMessage, res: ServerResponse): H3Event;
47
68
 
48
69
  declare function defineEventHandler<T = any>(handler: EventHandler<T>): EventHandler<T>;
49
70
  declare const eventHandler: typeof defineEventHandler;
50
71
  declare function isEventHandler(input: any): input is EventHandler;
51
- declare function toEventHandler(handler: CompatibilityEventHandler): EventHandler;
72
+ declare function toEventHandler(input: any, _?: any, _route?: string): EventHandler;
52
73
  interface DynamicEventHandler extends EventHandler {
53
74
  set: (handler: EventHandler) => void;
54
75
  }
@@ -56,38 +77,6 @@ declare function dynamicEventHandler(initial?: EventHandler): DynamicEventHandle
56
77
  declare function defineLazyEventHandler(factory: LazyEventHandler): EventHandler;
57
78
  declare const lazyEventHandler: typeof defineLazyEventHandler;
58
79
 
59
- interface CompatibilityRequestProps {
60
- event: H3Event;
61
- context: H3EventContext;
62
- /** Only available with connect and press */
63
- originalUrl?: string;
64
- }
65
- interface IncomingMessage extends IncomingMessage$1, CompatibilityRequestProps {
66
- req: H3Event['req'];
67
- res: H3Event['res'];
68
- }
69
- interface ServerResponse extends ServerResponse$1 {
70
- event: H3Event;
71
- res: H3Event['res'];
72
- req: ServerResponse$1['req'] & CompatibilityRequestProps;
73
- }
74
- declare type Handler<T = any, ReqT = {}> = (req: IncomingMessage & ReqT, res: ServerResponse) => T;
75
- declare type PromisifiedHandler = Handler<Promise<any>>;
76
- declare type Middleware = (req: IncomingMessage, res: ServerResponse, next: (err?: Error) => any) => any;
77
- declare type LazyHandler = () => Handler | Promise<Handler>;
78
- declare type Encoding = false | 'ascii' | 'utf8' | 'utf-8' | 'utf16le' | 'ucs2' | 'ucs-2' | 'base64' | 'latin1' | 'binary' | 'hex';
79
- declare type HTTPMethod = 'GET' | 'HEAD' | 'PATCH' | 'POST' | 'PUT' | 'DELETE' | 'CONNECT' | 'OPTIONS' | 'TRACE';
80
- interface H3EventContext extends Record<string, any> {
81
- }
82
- declare type CompatibilityEvent = H3Event | IncomingMessage;
83
- declare type HandlerResponse<T = any> = T | Promise<T>;
84
- interface EventHandler<T = any> {
85
- '__is_handler__'?: true;
86
- (event: H3Event): HandlerResponse<T>;
87
- }
88
- declare type LazyEventHandler = () => EventHandler | Promise<EventHandler>;
89
- declare type CompatibilityEventHandler = EventHandler | Handler | Middleware;
90
-
91
80
  interface Layer {
92
81
  route: string;
93
82
  match?: Matcher;
@@ -97,33 +86,28 @@ declare type Stack = Layer[];
97
86
  interface InputLayer {
98
87
  route?: string;
99
88
  match?: Matcher;
100
- handler: Handler | LazyHandler | EventHandler | LazyEventHandler;
89
+ handler: EventHandler;
101
90
  lazy?: boolean;
102
- /** @deprecated */
103
- handle?: Handler;
104
- /** @deprecated */
105
- promisify?: boolean;
106
91
  }
107
92
  declare type InputStack = InputLayer[];
108
- declare type Matcher = (url: string, event?: CompatibilityEvent) => boolean;
93
+ declare type Matcher = (url: string, event?: H3Event) => boolean;
109
94
  interface AppUse {
110
- (route: string | string[], handler: CompatibilityEventHandler | CompatibilityEventHandler[], options?: Partial<InputLayer>): App;
111
- (handler: CompatibilityEventHandler | CompatibilityEventHandler[], options?: Partial<InputLayer>): App;
95
+ (route: string | string[], handler: EventHandler | EventHandler[], options?: Partial<InputLayer>): App;
96
+ (handler: EventHandler | EventHandler[], options?: Partial<InputLayer>): App;
112
97
  (options: InputLayer): App;
113
98
  }
114
- declare type NodeHandler = (req: IncomingMessage$1, res: ServerResponse$1) => Promise<void>;
115
- interface App extends NodeHandler {
99
+ interface AppOptions {
100
+ debug?: boolean;
101
+ onError?: (error: Error, event: H3Event) => any;
102
+ }
103
+ interface App {
116
104
  stack: Stack;
117
105
  handler: EventHandler;
118
- nodeHandler: NodeHandler;
106
+ options: AppOptions;
119
107
  use: AppUse;
120
108
  }
121
- interface AppOptions {
122
- debug?: boolean;
123
- onError?: (error: Error, event: CompatibilityEvent) => any;
124
- }
125
109
  declare function createApp(options?: AppOptions): App;
126
- declare function use(app: App, arg1: string | Handler | InputLayer | InputLayer[], arg2?: Handler | Partial<InputLayer> | Handler[] | Middleware | Middleware[], arg3?: Partial<InputLayer>): App;
110
+ declare function use(app: App, arg1: string | EventHandler | InputLayer | InputLayer[], arg2?: Partial<InputLayer> | EventHandler | EventHandler[], arg3?: Partial<InputLayer>): App;
127
111
  declare function createAppEventHandler(stack: Stack, options: AppOptions): EventHandler<void>;
128
112
 
129
113
  /**
@@ -143,7 +127,7 @@ declare class H3Error extends Error {
143
127
  statusCode: number;
144
128
  fatal: boolean;
145
129
  unhandled: boolean;
146
- statusMessage: string;
130
+ statusMessage?: string;
147
131
  data?: any;
148
132
  }
149
133
  /**
@@ -158,40 +142,29 @@ declare function createError(input: string | Partial<H3Error>): H3Error;
158
142
  * H3 internally uses this function to handle unhandled errors.<br>
159
143
  * Note that calling this function will close the connection and no other data will be sent to client afterwards.
160
144
  *
161
- @param event {CompatibilityEvent} H3 event or req passed by h3 handler
145
+ @param event {H3Event} H3 event or req passed by h3 handler
162
146
  * @param error {H3Error|Error} Raised error
163
147
  * @param debug {Boolean} Whether application is in debug mode.<br>
164
148
  * In the debug mode the stack trace of errors will be return in response.
165
149
  */
166
- declare function sendError(event: CompatibilityEvent, error: Error | H3Error, debug?: boolean): void;
150
+ declare function sendError(event: H3Event, error: Error | H3Error, debug?: boolean): void;
167
151
  declare function isError(input: any): input is H3Error;
168
152
 
169
- declare const defineHandler: <T>(handler: Handler<T, {}>) => Handler<T, {}>;
170
- /** @deprecated Use defineHandler */
171
- declare const defineHandle: <T>(handler: Handler<T, {}>) => Handler<T, {}>;
172
- declare const defineMiddleware: (middleware: Middleware) => Middleware;
173
- declare function promisifyHandler(handler: Handler | Middleware): PromisifiedHandler;
174
- /** @deprecated Use defineHandler */
175
- declare const promisifyHandle: typeof promisifyHandler;
176
- declare function callHandler(handler: Middleware, req: IncomingMessage, res: ServerResponse): Promise<unknown>;
177
- declare function defineLazyHandler(handler: LazyHandler, promisify?: boolean): Handler;
178
- /** @deprecated Use defineLazyHandler */
179
- declare const lazyHandle: typeof defineLazyHandler;
180
- declare function useBase(base: string, handler: Handler): Handler;
153
+ declare function useBase(base: string, handler: EventHandler): EventHandler;
181
154
 
182
155
  /**
183
156
  * Reads body of the request and returns encoded raw string (default) or `Buffer` if encoding if falsy.
184
- * @param event {CompatibilityEvent} H3 event or req passed by h3 handler
157
+ * @param event {H3Event} H3 event or req passed by h3 handler
185
158
  * @param encoding {Encoding} encoding="utf-8" - The character encoding to use.
186
159
  *
187
160
  * @return {String|Buffer} Encoded raw string or raw Buffer of the body
188
161
  */
189
- declare function readRawBody(event: CompatibilityEvent, encoding?: Encoding): Encoding extends false ? Buffer : Promise<string | Buffer>;
162
+ declare function readRawBody(event: H3Event, encoding?: Encoding): Encoding extends false ? Buffer : Promise<string | Buffer>;
190
163
  /** @deprecated Use `h3.readRawBody` */
191
164
  declare const useRawBody: typeof readRawBody;
192
165
  /**
193
166
  * Reads request body and try to safely parse using [destr](https://github.com/unjs/destr)
194
- * @param event {CompatibilityEvent} H3 event or req passed by h3 handler
167
+ * @param event {H3Event} H3 event or req passed by h3 handler
195
168
  * @param encoding {Encoding} encoding="utf-8" - The character encoding to use.
196
169
  *
197
170
  * @return {*} The `Object`, `Array`, `String`, `Number`, `Boolean`, or `null` value corresponding to the request JSON body
@@ -200,7 +173,7 @@ declare const useRawBody: typeof readRawBody;
200
173
  * const body = await useBody(req)
201
174
  * ```
202
175
  */
203
- declare function readBody<T = any>(event: CompatibilityEvent): Promise<T>;
176
+ declare function readBody<T = any>(event: H3Event): Promise<T>;
204
177
  /** @deprecated Use `h3.readBody` */
205
178
  declare const useBody: typeof readBody;
206
179
 
@@ -215,7 +188,7 @@ interface CacheConditions {
215
188
  * Note: `public` cache control will be added by default
216
189
  * @returns `true` when cache headers are matching. When `true` is returned, no reponse should be sent anymore
217
190
  */
218
- declare function handleCacheHeaders(event: CompatibilityEvent, opts: CacheConditions): boolean;
191
+ declare function handleCacheHeaders(event: H3Event, opts: CacheConditions): boolean;
219
192
 
220
193
  declare const MIMES: {
221
194
  html: string;
@@ -224,30 +197,30 @@ declare const MIMES: {
224
197
 
225
198
  /**
226
199
  * Parse the request to get HTTP Cookie header string and returning an object of all cookie name-value pairs.
227
- * @param event {CompatibilityEvent} H3 event or req passed by h3 handler
200
+ * @param event {H3Event} H3 event or req passed by h3 handler
228
201
  * @returns Object of cookie name-value pairs
229
202
  * ```ts
230
203
  * const cookies = parseCookies(event)
231
204
  * ```
232
205
  */
233
- declare function parseCookies(event: CompatibilityEvent): Record<string, string>;
206
+ declare function parseCookies(event: H3Event): Record<string, string>;
234
207
  /** @deprecated Use `h3.parseCookies` */
235
208
  declare const useCookies: typeof parseCookies;
236
209
  /**
237
210
  * Get a cookie value by name.
238
- * @param event {CompatibilityEvent} H3 event or req passed by h3 handler
211
+ * @param event {H3Event} H3 event or req passed by h3 handler
239
212
  * @param name Name of the cookie to get
240
213
  * @returns {*} Value of the cookie (String or undefined)
241
214
  * ```ts
242
215
  * const authorization = useCookie(request, 'Authorization')
243
216
  * ```
244
217
  */
245
- declare function getCookie(event: CompatibilityEvent, name: string): string | undefined;
218
+ declare function getCookie(event: H3Event, name: string): string | undefined;
246
219
  /** @deprecated Use `h3.getCookie` */
247
220
  declare const useCookie: typeof getCookie;
248
221
  /**
249
222
  * Set a cookie value by name.
250
- * @param event {CompatibilityEvent} H3 event or res passed by h3 handler
223
+ * @param event {H3Event} H3 event or res passed by h3 handler
251
224
  * @param name Name of the cookie to set
252
225
  * @param value Value of the cookie to set
253
226
  * @param serializeOptions {CookieSerializeOptions} Options for serializing the cookie
@@ -255,57 +228,61 @@ declare const useCookie: typeof getCookie;
255
228
  * setCookie(res, 'Authorization', '1234567')
256
229
  * ```
257
230
  */
258
- declare function setCookie(event: CompatibilityEvent, name: string, value: string, serializeOptions?: CookieSerializeOptions): void;
231
+ declare function setCookie(event: H3Event, name: string, value: string, serializeOptions?: CookieSerializeOptions): void;
259
232
  /**
260
233
  * Set a cookie value by name.
261
- * @param event {CompatibilityEvent} H3 event or res passed by h3 handler
234
+ * @param event {H3Event} H3 event or res passed by h3 handler
262
235
  * @param name Name of the cookie to delete
263
236
  * @param serializeOptions {CookieSerializeOptions} Cookie options
264
237
  * ```ts
265
238
  * deleteCookie(res, 'SessionId')
266
239
  * ```
267
240
  */
268
- declare function deleteCookie(event: CompatibilityEvent, name: string, serializeOptions?: CookieSerializeOptions): void;
241
+ declare function deleteCookie(event: H3Event, name: string, serializeOptions?: CookieSerializeOptions): void;
269
242
 
270
- declare function getQuery(event: CompatibilityEvent): ufo.QueryObject;
243
+ declare function getQuery(event: H3Event): ufo.QueryObject;
271
244
  /** @deprecated Use `h3.getQuery` */
272
245
  declare const useQuery: typeof getQuery;
273
- declare function getRouterParams(event: CompatibilityEvent): CompatibilityEvent['context'];
274
- declare function getRouterParam(event: CompatibilityEvent, name: string): CompatibilityEvent['context'][string];
275
- declare function getMethod(event: CompatibilityEvent, defaultMethod?: HTTPMethod): HTTPMethod;
246
+ declare function getRouterParams(event: H3Event): H3Event['context'];
247
+ declare function getRouterParam(event: H3Event, name: string): H3Event['context'][string];
248
+ declare function getMethod(event: H3Event, defaultMethod?: HTTPMethod): HTTPMethod;
276
249
  /** @deprecated Use `h3.getMethod` */
277
250
  declare const useMethod: typeof getMethod;
278
- declare function isMethod(event: CompatibilityEvent, expected: HTTPMethod | HTTPMethod[], allowHead?: boolean): boolean;
279
- declare function assertMethod(event: CompatibilityEvent, expected: HTTPMethod | HTTPMethod[], allowHead?: boolean): void;
280
- declare function getRequestHeaders(event: CompatibilityEvent): CompatibilityEvent['req']['headers'];
251
+ declare function isMethod(event: H3Event, expected: HTTPMethod | HTTPMethod[], allowHead?: boolean): boolean;
252
+ declare function assertMethod(event: H3Event, expected: HTTPMethod | HTTPMethod[], allowHead?: boolean): void;
253
+ declare function getRequestHeaders(event: H3Event): H3Event['req']['headers'];
281
254
  declare const getHeaders: typeof getRequestHeaders;
282
- declare function getRequestHeader(event: CompatibilityEvent, name: string): CompatibilityEvent['req']['headers'][string];
255
+ declare function getRequestHeader(event: H3Event, name: string): H3Event['req']['headers'][string];
283
256
  declare const getHeader: typeof getRequestHeader;
284
257
 
285
- declare function send(event: CompatibilityEvent, data?: any, type?: string): Promise<void>;
286
- declare function defaultContentType(event: CompatibilityEvent, type?: string): void;
287
- declare function sendRedirect(event: CompatibilityEvent, location: string, code?: number): Promise<void>;
288
- declare function getResponseHeaders(event: CompatibilityEvent): ReturnType<CompatibilityEvent['res']['getHeaders']>;
289
- declare function getResponseHeader(event: CompatibilityEvent, name: string): ReturnType<CompatibilityEvent['res']['getHeader']>;
290
- declare function setResponseHeaders(event: CompatibilityEvent, headers: Record<string, Parameters<OutgoingMessage['setHeader']>[1]>): void;
258
+ declare function send(event: H3Event, data?: any, type?: string): Promise<void>;
259
+ declare function defaultContentType(event: H3Event, type?: string): void;
260
+ declare function sendRedirect(event: H3Event, location: string, code?: number): Promise<void>;
261
+ declare function getResponseHeaders(event: H3Event): ReturnType<H3Event['res']['getHeaders']>;
262
+ declare function getResponseHeader(event: H3Event, name: string): ReturnType<H3Event['res']['getHeader']>;
263
+ declare function setResponseHeaders(event: H3Event, headers: Record<string, Parameters<OutgoingMessage['setHeader']>[1]>): void;
291
264
  declare const setHeaders: typeof setResponseHeaders;
292
- declare function setResponseHeader(event: CompatibilityEvent, name: string, value: Parameters<OutgoingMessage['setHeader']>[1]): void;
265
+ declare function setResponseHeader(event: H3Event, name: string, value: Parameters<OutgoingMessage['setHeader']>[1]): void;
293
266
  declare const setHeader: typeof setResponseHeader;
294
- declare function appendResponseHeaders(event: CompatibilityEvent, headers: Record<string, string>): void;
267
+ declare function appendResponseHeaders(event: H3Event, headers: Record<string, string>): void;
295
268
  declare const appendHeaders: typeof appendResponseHeaders;
296
- declare function appendResponseHeader(event: CompatibilityEvent, name: string, value: string): void;
269
+ declare function appendResponseHeader(event: H3Event, name: string, value: string): void;
297
270
  declare const appendHeader: typeof appendResponseHeader;
298
271
  declare function isStream(data: any): any;
299
- declare function sendStream(event: CompatibilityEvent, data: any): Promise<void>;
272
+ declare function sendStream(event: H3Event, data: any): Promise<void>;
273
+ declare function writeEarlyHints(event: H3Event, links: string | string[], callback?: () => void): void;
300
274
 
301
275
  declare type RouterMethod = Lowercase<HTTPMethod>;
302
- declare type RouterUse = (path: string, handler: CompatibilityEventHandler, method?: RouterMethod | RouterMethod[]) => Router;
276
+ declare type RouterUse = (path: string, handler: EventHandler, method?: RouterMethod | RouterMethod[]) => Router;
303
277
  declare type AddRouteShortcuts = Record<RouterMethod, RouterUse>;
304
278
  interface Router extends AddRouteShortcuts {
305
279
  add: RouterUse;
306
280
  use: RouterUse;
307
281
  handler: EventHandler;
308
282
  }
309
- declare function createRouter(): Router;
283
+ interface CreateRouterOptions {
284
+ preemtive?: boolean;
285
+ }
286
+ declare function createRouter(opts?: CreateRouterOptions): Router;
310
287
 
311
- export { AddRouteShortcuts, App, AppOptions, AppUse, CacheConditions, CompatibilityEvent, CompatibilityEventHandler, DynamicEventHandler, Encoding, EventHandler, H3Error, H3Event, H3EventContext, H3Headers, H3Response, HTTPMethod, Handler, HandlerResponse, IncomingMessage, InputLayer, InputStack, Layer, LazyEventHandler, LazyHandler, MIMES, Matcher, Middleware, NodeHandler, PromisifiedHandler, Router, RouterMethod, RouterUse, ServerResponse, Stack, appendHeader, appendHeaders, appendResponseHeader, appendResponseHeaders, assertMethod, callHandler, createApp, createAppEventHandler, createError, createEvent, createRouter, defaultContentType, defineEventHandler, defineHandle, defineHandler, defineLazyEventHandler, defineLazyHandler, defineMiddleware, deleteCookie, dynamicEventHandler, eventHandler, getCookie, getHeader, getHeaders, getMethod, getQuery, getRequestHeader, getRequestHeaders, getResponseHeader, getResponseHeaders, getRouterParam, getRouterParams, handleCacheHeaders, isError, isEvent, isEventHandler, isMethod, isStream, lazyEventHandler, lazyHandle, parseCookies, promisifyHandle, promisifyHandler, readBody, readRawBody, send, sendError, sendRedirect, sendStream, setCookie, setHeader, setHeaders, setResponseHeader, setResponseHeaders, toEventHandler, use, useBase, useBody, useCookie, useCookies, useMethod, useQuery, useRawBody };
288
+ export { AddRouteShortcuts, App, AppOptions, AppUse, CacheConditions, CreateRouterOptions, DynamicEventHandler, Encoding, EventHandler, EventHandlerResponse, H3Error, H3Event, H3EventContext, H3Headers, H3Response, HTTPMethod, InputLayer, InputStack, Layer, LazyEventHandler, MIMES, Matcher, NodeListener, NodeMiddleware, NodePromisifiedHandler, Router, RouterMethod, RouterUse, Stack, appendHeader, appendHeaders, appendResponseHeader, appendResponseHeaders, assertMethod, callNodeListener, createApp, createAppEventHandler, createError, createEvent, createRouter, defaultContentType, defineEventHandler, defineLazyEventHandler, defineNodeListener, defineNodeMiddleware, deleteCookie, dynamicEventHandler, eventHandler, fromNodeMiddleware, getCookie, getHeader, getHeaders, getMethod, getQuery, getRequestHeader, getRequestHeaders, getResponseHeader, getResponseHeaders, getRouterParam, getRouterParams, handleCacheHeaders, isError, isEvent, isEventHandler, isMethod, isStream, lazyEventHandler, parseCookies, promisifyNodeListener, readBody, readRawBody, send, sendError, sendRedirect, sendStream, setCookie, setHeader, setHeaders, setResponseHeader, setResponseHeaders, toEventHandler, toNodeListener, use, useBase, useBody, useCookie, useCookies, useMethod, useQuery, useRawBody, writeEarlyHints };