From d3979d365fbfaeb2dcd89842567e1c4bb4936922 Mon Sep 17 00:00:00 2001 From: Sedo <107271763+LikiosSedo@users.noreply.github.com> Date: Wed, 25 Mar 2026 13:40:52 +0800 Subject: [PATCH 1/3] feat: re-export TypedHeaders and header map types from fetchdts Re-export TypedHeaders, RequestHeaders, ResponseHeaders, RequestHeaderMap, and ResponseHeaderMap so consumers can type functions that accept h3 headers without importing fetchdts directly. Closes #1308 --- src/index.ts | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/index.ts b/src/index.ts index 9893c62f7..b375c5bb7 100644 --- a/src/index.ts +++ b/src/index.ts @@ -43,6 +43,14 @@ export type { TypedServerRequest, } from "./types/handler.ts"; +export type { + TypedHeaders, + RequestHeaders, + ResponseHeaders, + RequestHeaderMap, + ResponseHeaderMap, +} from "fetchdts"; + export { defineHandler, defineLazyEventHandler, From 9ad773dd766860e971bbef0ba35ce567cec72f73 Mon Sep 17 00:00:00 2001 From: Sedo <107271763+LikiosSedo@users.noreply.github.com> Date: Wed, 25 Mar 2026 13:48:18 +0800 Subject: [PATCH 2/3] refactor: export header types via types/handler.ts instead of direct fetchdts re-export MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Avoids build issues since fetchdts is a devDependency — the build tool (obuild) inlines types referenced through h3's own modules but may not handle direct re-exports from external packages. --- src/index.ts | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/index.ts b/src/index.ts index b375c5bb7..a5b518403 100644 --- a/src/index.ts +++ b/src/index.ts @@ -41,15 +41,12 @@ export type { FetchableObject, HTTPHandler, TypedServerRequest, -} from "./types/handler.ts"; - -export type { TypedHeaders, RequestHeaders, ResponseHeaders, RequestHeaderMap, ResponseHeaderMap, -} from "fetchdts"; +} from "./types/handler.ts"; export { defineHandler, From 6b5743021105f732c0718e81fce537c1ec605a31 Mon Sep 17 00:00:00 2001 From: Sedo <107271763+LikiosSedo@users.noreply.github.com> Date: Wed, 25 Mar 2026 13:48:30 +0800 Subject: [PATCH 3/3] feat: import and re-export header types from fetchdts Import TypedHeaders, RequestHeaders, ResponseHeaders, RequestHeaderMap, and ResponseHeaderMap from fetchdts and re-export them so the build tool can inline them properly. --- src/types/handler.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/types/handler.ts b/src/types/handler.ts index 8709c9d3c..d92134ba5 100644 --- a/src/types/handler.ts +++ b/src/types/handler.ts @@ -1,5 +1,5 @@ import type { ServerRequest } from "srvx"; -import type { TypedRequest, TypedResponse, ResponseHeaderMap } from "fetchdts"; +import type { TypedRequest, TypedResponse, TypedHeaders, RequestHeaders, ResponseHeaders, RequestHeaderMap, ResponseHeaderMap } from "fetchdts"; import type { H3Event, HTTPEvent } from "../event.ts"; import type { MaybePromise } from "./_utils.ts"; import type { H3RouteMeta } from "./h3.ts"; @@ -85,3 +85,5 @@ export type InferEventInput< Event extends HTTPEvent, T, > = void extends T ? (Event extends HTTPEvent ? E[Key] : never) : T; + +export type { TypedHeaders, RequestHeaders, ResponseHeaders, RequestHeaderMap, ResponseHeaderMap };