From c3fb6750a4b819b466b4525f4724e85c4d705643 Mon Sep 17 00:00:00 2001 From: uzlopak Date: Mon, 17 Jun 2024 02:32:10 +0200 Subject: [PATCH 1/2] fix: types interceptors default export --- types/formdata.d.ts | 2 +- types/index.d.ts | 10 +++------- types/interceptors.d.ts | 18 +++++++++++------- types/retry-agent.d.ts | 3 --- types/webidl.d.ts | 4 +--- 5 files changed, 16 insertions(+), 21 deletions(-) diff --git a/types/formdata.d.ts b/types/formdata.d.ts index df29a572d6b..e676b11ec34 100644 --- a/types/formdata.d.ts +++ b/types/formdata.d.ts @@ -2,7 +2,7 @@ /// import { File } from './file' -import { SpecIterator, SpecIterableIterator } from './fetch' +import { SpecIterableIterator } from './fetch' /** * A `string` or `File` that represents a single value from a set of `FormData` key-value pairs. diff --git a/types/index.d.ts b/types/index.d.ts index 18657b6aeb7..6638babf7ad 100644 --- a/types/index.d.ts +++ b/types/index.d.ts @@ -33,7 +33,7 @@ export * from './content-type' export * from './cache' export { Interceptable } from './mock-interceptor' -export { Dispatcher, BalancedPool, Pool, Client, buildConnector, errors, Agent, request, stream, pipeline, connect, upgrade, setGlobalDispatcher, getGlobalDispatcher, setGlobalOrigin, getGlobalOrigin, interceptors, MockClient, MockPool, MockAgent, mockErrors, ProxyAgent, EnvHttpProxyAgent, RedirectHandler, DecoratorHandler, RetryHandler, RetryAgent } +export { Dispatcher, BalancedPool, Pool, Client, buildConnector, errors, Agent, request, stream, pipeline, connect, upgrade, setGlobalDispatcher, getGlobalDispatcher, setGlobalOrigin, getGlobalOrigin, interceptors as Interceptors, MockClient, MockPool, MockAgent, mockErrors, ProxyAgent, EnvHttpProxyAgent, RedirectHandler, DecoratorHandler, RetryHandler, RetryAgent } export default Undici declare namespace Undici { @@ -42,7 +42,7 @@ declare namespace Undici { var RedirectHandler: typeof import ('./handlers').RedirectHandler var DecoratorHandler: typeof import ('./handlers').DecoratorHandler var RetryHandler: typeof import ('./retry-handler').default - var createRedirectInterceptor: typeof import ('./interceptors').createRedirectInterceptor + var createRedirectInterceptor: typeof import ('./interceptors').default.createRedirectInterceptor var BalancedPool: typeof import('./balanced-pool').default; var Client: typeof import('./client').default; var buildConnector: typeof import('./connector').default; @@ -67,9 +67,5 @@ declare namespace Undici { var File: typeof import('./file').File; var FileReader: typeof import('./filereader').FileReader; var caches: typeof import('./cache').caches; - var interceptors: { - dump: typeof import('./interceptors').dump; - retry: typeof import('./interceptors').retry; - redirect: typeof import('./interceptors').redirect; - } + var interceptors: typeof import('./interceptors').default; } diff --git a/types/interceptors.d.ts b/types/interceptors.d.ts index d546ac344e3..fab6da08c0d 100644 --- a/types/interceptors.d.ts +++ b/types/interceptors.d.ts @@ -1,11 +1,15 @@ import Dispatcher from "./dispatcher"; import RetryHandler from "./retry-handler"; -export type DumpInterceptorOpts = { maxSize?: number } -export type RetryInterceptorOpts = RetryHandler.RetryOptions -export type RedirectInterceptorOpts = { maxRedirections?: number } +export default Interceptors; -export declare function createRedirectInterceptor (opts: RedirectInterceptorOpts): Dispatcher.DispatcherComposeInterceptor -export declare function dump(opts?: DumpInterceptorOpts): Dispatcher.DispatcherComposeInterceptor -export declare function retry(opts?: RetryInterceptorOpts): Dispatcher.DispatcherComposeInterceptor -export declare function redirect(opts?: RedirectInterceptorOpts): Dispatcher.DispatcherComposeInterceptor +declare namespace Interceptors { + export type DumpInterceptorOpts = { maxSize?: number } + export type RetryInterceptorOpts = RetryHandler.RetryOptions + export type RedirectInterceptorOpts = { maxRedirections?: number } + + export function createRedirectInterceptor(opts: RedirectInterceptorOpts): Dispatcher.DispatcherComposeInterceptor + export function dump(opts?: DumpInterceptorOpts): Dispatcher.DispatcherComposeInterceptor + export function retry(opts?: RetryInterceptorOpts): Dispatcher.DispatcherComposeInterceptor + export function redirect(opts?: RedirectInterceptorOpts): Dispatcher.DispatcherComposeInterceptor +} diff --git a/types/retry-agent.d.ts b/types/retry-agent.d.ts index cf559d956e5..963cea99e42 100644 --- a/types/retry-agent.d.ts +++ b/types/retry-agent.d.ts @@ -1,7 +1,4 @@ -import Agent from './agent' -import buildConnector from './connector'; import Dispatcher from './dispatcher' -import { IncomingHttpHeaders } from './header' import RetryHandler from './retry-handler' export default RetryAgent diff --git a/types/webidl.d.ts b/types/webidl.d.ts index fe802a20124..8a23a85bf01 100644 --- a/types/webidl.d.ts +++ b/types/webidl.d.ts @@ -55,9 +55,7 @@ interface WebidlUtil { V: unknown, bitLength: number, signedness: 'signed' | 'unsigned', - opts?: ConvertToIntOpts, - prefix: string, - argument: string + opts?: ConvertToIntOpts ): number /** From 96fd3ba44b53ae0ebb75ea6a80c58ee40b11a6e8 Mon Sep 17 00:00:00 2001 From: uzlopak Date: Mon, 17 Jun 2024 02:40:49 +0200 Subject: [PATCH 2/2] test for bugs in typescript --- package.json | 2 +- types/index.d.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index b1afc62b119..ce039c541cb 100644 --- a/package.json +++ b/package.json @@ -85,7 +85,7 @@ "test:node-test": "borp -p \"test/node-test/**/*.js\"", "test:tdd": "borp --expose-gc -p \"test/*.js\"", "test:tdd:node-test": "borp -p \"test/node-test/**/*.js\" -w", - "test:typescript": "tsd && tsc --skipLibCheck test/imports/undici-import.ts", + "test:typescript": "tsd && tsc test/imports/undici-import.ts --typeRoots ./types && tsc ./types/*.d.ts --noEmit --typeRoots ./types", "test:webidl": "borp -p \"test/webidl/*.js\"", "test:websocket": "borp -p \"test/websocket/*.js\"", "test:websocket:autobahn": "node test/autobahn/client.js", diff --git a/types/index.d.ts b/types/index.d.ts index 6638babf7ad..f6be35cd9bf 100644 --- a/types/index.d.ts +++ b/types/index.d.ts @@ -33,7 +33,7 @@ export * from './content-type' export * from './cache' export { Interceptable } from './mock-interceptor' -export { Dispatcher, BalancedPool, Pool, Client, buildConnector, errors, Agent, request, stream, pipeline, connect, upgrade, setGlobalDispatcher, getGlobalDispatcher, setGlobalOrigin, getGlobalOrigin, interceptors as Interceptors, MockClient, MockPool, MockAgent, mockErrors, ProxyAgent, EnvHttpProxyAgent, RedirectHandler, DecoratorHandler, RetryHandler, RetryAgent } +export { Dispatcher, BalancedPool, Pool, Client, buildConnector, errors, Agent, request, stream, pipeline, connect, upgrade, setGlobalDispatcher, getGlobalDispatcher, setGlobalOrigin, getGlobalOrigin, interceptors, MockClient, MockPool, MockAgent, mockErrors, ProxyAgent, EnvHttpProxyAgent, RedirectHandler, DecoratorHandler, RetryHandler, RetryAgent } export default Undici declare namespace Undici {