Skip to content

Commit 0965c9d

Browse files
chore(types): improved go to definition on fetchOptions (#53)
1 parent f15fb0b commit 0965c9d

File tree

1 file changed

+3
-11
lines changed

1 file changed

+3
-11
lines changed

src/internal/types.ts

+3-11
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,6 @@ export type HTTPMethod = 'get' | 'post' | 'put' | 'patch' | 'delete';
66
export type KeysEnum<T> = { [P in keyof Required<T>]: true };
77

88
type NotAny<T> = [unknown] extends [T] ? never : T;
9-
type Literal<T> = PropertyKey extends T ? never : T;
10-
type MappedLiteralKeys<T> = T extends any ? Literal<keyof T> : never;
11-
type MappedIndex<T, K> =
12-
T extends any ?
13-
K extends keyof T ?
14-
T[K]
15-
: never
16-
: never;
179

1810
/**
1911
* Some environments overload the global fetch function, and Parameters<T> only gets the last signature.
@@ -93,6 +85,6 @@ type RequestInits =
9385
* This type contains `RequestInit` options that may be available on the current runtime,
9486
* including per-platform extensions like `dispatcher`, `agent`, `client`, etc.
9587
*/
96-
export type MergedRequestInit = {
97-
[K in MappedLiteralKeys<RequestInits>]?: MappedIndex<RequestInits, K> | undefined;
98-
};
88+
export type MergedRequestInit = RequestInits &
89+
/** We don't include these in the types as they'll be overridden for every request. */
90+
Partial<Record<'body' | 'headers' | 'method' | 'signal', never>>;

0 commit comments

Comments
 (0)