h3 0.8.6 → 1.0.1

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,16 +1,15 @@
1
- import { IncomingMessage, ServerResponse, OutgoingMessage } from 'http';
2
- export { IncomingMessage as NodeIncomingMessage, ServerResponse as NodeServerResponse } from 'http';
1
+ import { IncomingMessage, ServerResponse, OutgoingMessage } from 'node:http';
2
+ export { IncomingMessage as NodeIncomingMessage, ServerResponse as NodeServerResponse } from 'node:http';
3
3
  import { CookieSerializeOptions } from 'cookie-es';
4
- import { RequestHeaders as RequestHeaders$1 } from 'src/types';
5
4
  import * as ufo from 'ufo';
6
5
 
7
- declare type HTTPMethod = 'GET' | 'HEAD' | 'PATCH' | 'POST' | 'PUT' | 'DELETE' | 'CONNECT' | 'OPTIONS' | 'TRACE';
8
- declare type Encoding = false | 'ascii' | 'utf8' | 'utf-8' | 'utf16le' | 'ucs2' | 'ucs-2' | 'base64' | 'latin1' | 'binary' | 'hex';
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";
9
8
  interface H3EventContext extends Record<string, any> {
10
9
  }
11
10
  declare type EventHandlerResponse<T = any> = T | Promise<T>;
12
11
  interface EventHandler<T = any> {
13
- '__is_handler__'?: true;
12
+ "__is_handler__"?: true;
14
13
  (event: H3Event): EventHandlerResponse<T>;
15
14
  }
16
15
  declare type LazyEventHandler = () => EventHandler | Promise<EventHandler>;
@@ -63,12 +62,20 @@ declare class H3Response implements Response {
63
62
  text(): Promise<string>;
64
63
  }
65
64
 
66
- declare class H3Event implements Pick<FetchEvent, 'respondWith'> {
67
- '__is_event__': boolean;
65
+ interface NodeEventContext {
68
66
  req: IncomingMessage;
69
67
  res: ServerResponse;
68
+ }
69
+ declare class H3Event implements Pick<FetchEvent, "respondWith"> {
70
+ "__is_event__": boolean;
71
+ node: NodeEventContext;
70
72
  context: H3EventContext;
71
73
  constructor(req: IncomingMessage, res: ServerResponse);
74
+ get path(): string | undefined;
75
+ /** @deprecated Please use `event.node.res` instead. **/
76
+ get req(): IncomingMessage;
77
+ /** @deprecated Please use `event.node.res` instead. **/
78
+ get res(): ServerResponse<IncomingMessage>;
72
79
  respondWith(r: H3Response | PromiseLike<H3Response>): void;
73
80
  }
74
81
  declare function isEvent(input: any): input is H3Event;
@@ -172,8 +179,6 @@ declare function useBase(base: string, handler: EventHandler): EventHandler;
172
179
  * @return {String|Buffer} Encoded raw string or raw Buffer of the body
173
180
  */
174
181
  declare function readRawBody(event: H3Event, encoding?: Encoding): Encoding extends false ? Buffer : Promise<string | Buffer | undefined>;
175
- /** @deprecated Use `h3.readRawBody` */
176
- declare const useRawBody: typeof readRawBody;
177
182
  /**
178
183
  * Reads request body and try to safely parse using [destr](https://github.com/unjs/destr)
179
184
  * @param event {H3Event} H3 event or req passed by h3 handler
@@ -186,8 +191,6 @@ declare const useRawBody: typeof readRawBody;
186
191
  * ```
187
192
  */
188
193
  declare function readBody<T = any>(event: H3Event): Promise<T>;
189
- /** @deprecated Use `h3.readBody` */
190
- declare const useBody: typeof readBody;
191
194
 
192
195
  interface CacheConditions {
193
196
  modifiedTime?: string | Date;
@@ -216,8 +219,6 @@ declare const MIMES: {
216
219
  * ```
217
220
  */
218
221
  declare function parseCookies(event: H3Event): Record<string, string>;
219
- /** @deprecated Use `h3.parseCookies` */
220
- declare const useCookies: typeof parseCookies;
221
222
  /**
222
223
  * Get a cookie value by name.
223
224
  * @param event {H3Event} H3 event or req passed by h3 handler
@@ -228,8 +229,6 @@ declare const useCookies: typeof parseCookies;
228
229
  * ```
229
230
  */
230
231
  declare function getCookie(event: H3Event, name: string): string | undefined;
231
- /** @deprecated Use `h3.getCookie` */
232
- declare const useCookie: typeof getCookie;
233
232
  /**
234
233
  * Set a cookie value by name.
235
234
  * @param event {H3Event} H3 event or res passed by h3 handler
@@ -252,22 +251,19 @@ declare function setCookie(event: H3Event, name: string, value: string, serializ
252
251
  */
253
252
  declare function deleteCookie(event: H3Event, name: string, serializeOptions?: CookieSerializeOptions): void;
254
253
 
255
- interface SendProxyOptions {
256
- headers?: RequestHeaders$1 | HeadersInit;
254
+ interface ProxyOptions {
255
+ headers?: RequestHeaders | HeadersInit;
257
256
  fetchOptions?: RequestInit;
258
257
  fetch?: typeof fetch;
259
258
  sendStream?: boolean;
260
259
  }
261
- declare function sendProxy(event: H3Event, target: string, opts?: SendProxyOptions): Promise<void>;
260
+ declare function proxyRequest(event: H3Event, target: string, opts?: ProxyOptions): Promise<void>;
261
+ declare function sendProxy(event: H3Event, target: string, opts?: ProxyOptions): Promise<void>;
262
262
 
263
263
  declare function getQuery(event: H3Event): ufo.QueryObject;
264
- /** @deprecated Use `h3.getQuery` */
265
- declare const useQuery: typeof getQuery;
266
- declare function getRouterParams(event: H3Event): H3Event['context'];
267
- declare function getRouterParam(event: H3Event, name: string): H3Event['context'][string];
264
+ declare function getRouterParams(event: H3Event): H3Event["context"];
265
+ declare function getRouterParam(event: H3Event, name: string): H3Event["context"][string];
268
266
  declare function getMethod(event: H3Event, defaultMethod?: HTTPMethod): HTTPMethod;
269
- /** @deprecated Use `h3.getMethod` */
270
- declare const useMethod: typeof getMethod;
271
267
  declare function isMethod(event: H3Event, expected: HTTPMethod | HTTPMethod[], allowHead?: boolean): boolean;
272
268
  declare function assertMethod(event: H3Event, expected: HTTPMethod | HTTPMethod[], allowHead?: boolean): void;
273
269
  declare function getRequestHeaders(event: H3Event): RequestHeaders;
@@ -278,11 +274,11 @@ declare const getHeader: typeof getRequestHeader;
278
274
  declare function send(event: H3Event, data?: any, type?: string): Promise<void>;
279
275
  declare function defaultContentType(event: H3Event, type?: string): void;
280
276
  declare function sendRedirect(event: H3Event, location: string, code?: number): Promise<void>;
281
- declare function getResponseHeaders(event: H3Event): ReturnType<H3Event['res']['getHeaders']>;
282
- declare function getResponseHeader(event: H3Event, name: string): ReturnType<H3Event['res']['getHeader']>;
283
- declare function setResponseHeaders(event: H3Event, headers: Record<string, Parameters<OutgoingMessage['setHeader']>[1]>): void;
277
+ declare function getResponseHeaders(event: H3Event): ReturnType<H3Event["res"]["getHeaders"]>;
278
+ declare function getResponseHeader(event: H3Event, name: string): ReturnType<H3Event["res"]["getHeader"]>;
279
+ declare function setResponseHeaders(event: H3Event, headers: Record<string, Parameters<OutgoingMessage["setHeader"]>[1]>): void;
284
280
  declare const setHeaders: typeof setResponseHeaders;
285
- declare function setResponseHeader(event: H3Event, name: string, value: Parameters<OutgoingMessage['setHeader']>[1]): void;
281
+ declare function setResponseHeader(event: H3Event, name: string, value: Parameters<OutgoingMessage["setHeader"]>[1]): void;
286
282
  declare const setHeader: typeof setResponseHeader;
287
283
  declare function appendResponseHeaders(event: H3Event, headers: Record<string, string>): void;
288
284
  declare const appendHeaders: typeof appendResponseHeaders;
@@ -305,4 +301,4 @@ interface CreateRouterOptions {
305
301
  }
306
302
  declare function createRouter(opts?: CreateRouterOptions): Router;
307
303
 
308
- 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, RequestHeaders, Router, RouterMethod, RouterUse, SendProxyOptions, 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, sendProxy, sendRedirect, sendStream, setCookie, setHeader, setHeaders, setResponseHeader, setResponseHeaders, toEventHandler, toNodeListener, use, useBase, useBody, useCookie, useCookies, useMethod, useQuery, useRawBody, writeEarlyHints };
304
+ export { AddRouteShortcuts, App, AppOptions, AppUse, CacheConditions, CreateRouterOptions, DynamicEventHandler, Encoding, EventHandler, EventHandlerResponse, H3Error, H3Event, H3EventContext, H3Headers, H3Response, HTTPMethod, InputLayer, InputStack, Layer, LazyEventHandler, MIMES, Matcher, NodeEventContext, NodeListener, NodeMiddleware, NodePromisifiedHandler, ProxyOptions, RequestHeaders, 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, proxyRequest, readBody, readRawBody, send, sendError, sendProxy, sendRedirect, sendStream, setCookie, setHeader, setHeaders, setResponseHeader, setResponseHeaders, toEventHandler, toNodeListener, use, useBase, writeEarlyHints };