diff --git a/.changeset/sixty-oranges-arrive.md b/.changeset/sixty-oranges-arrive.md new file mode 100644 index 000000000..2046c7e95 --- /dev/null +++ b/.changeset/sixty-oranges-arrive.md @@ -0,0 +1,5 @@ +--- +"openapi-fetch": patch +--- + +Exports the ClientMethod utility type. diff --git a/packages/openapi-fetch/src/index.d.ts b/packages/openapi-fetch/src/index.d.ts index 9b5907c14..13bb8c047 100644 --- a/packages/openapi-fetch/src/index.d.ts +++ b/packages/openapi-fetch/src/index.d.ts @@ -104,73 +104,33 @@ export type RequestOptions = ParamsOption & fetch?: ClientOptions["fetch"]; }; +export type ClientMethod = < + P extends PathsWithMethod, + I extends MaybeOptionalInit, +>( + url: P, + ...init: I +) => Promise>; + export default function createClient( clientOptions?: ClientOptions, ): { /** Call a GET endpoint */ - GET< - P extends PathsWithMethod, - I extends MaybeOptionalInit, - >( - url: P, - ...init: I - ): Promise>; + GET: ClientMethod; /** Call a PUT endpoint */ - PUT< - P extends PathsWithMethod, - I extends MaybeOptionalInit, - >( - url: P, - ...init: I - ): Promise>; + PUT: ClientMethod; /** Call a POST endpoint */ - POST< - P extends PathsWithMethod, - I extends MaybeOptionalInit, - >( - url: P, - ...init: I - ): Promise>; + POST: ClientMethod; /** Call a DELETE endpoint */ - DELETE< - P extends PathsWithMethod, - I extends MaybeOptionalInit, - >( - url: P, - ...init: I - ): Promise>; + DELETE: ClientMethod; /** Call a OPTIONS endpoint */ - OPTIONS< - P extends PathsWithMethod, - I extends MaybeOptionalInit, - >( - url: P, - ...init: I - ): Promise>; + OPTIONS: ClientMethod; /** Call a HEAD endpoint */ - HEAD< - P extends PathsWithMethod, - I extends MaybeOptionalInit, - >( - url: P, - ...init: I - ): Promise>; + HEAD: ClientMethod; /** Call a PATCH endpoint */ - PATCH< - P extends PathsWithMethod, - I extends MaybeOptionalInit, - >( - url: P, - ...init: I - ): Promise>; + PATCH: ClientMethod; /** Call a TRACE endpoint */ - TRACE< - P extends PathsWithMethod, - I extends MaybeOptionalInit, - >( - url: P, - ...init: I - ): Promise>; + TRACE: ClientMethod; }; /** Serialize query params to string */