msw 0.45.0 → 0.47.0

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.
@@ -19,7 +19,7 @@ declare type ForbiddenHeaderError<HeaderName extends string> = `SafeResponseHead
19
19
  * })
20
20
  * @see {@link https://mswjs.io/docs/api/context/set `ctx.set()`}
21
21
  */
22
- declare function set<N extends string | HeadersObject>(...args: N extends string ? Lowercase<N> extends ForbiddenHeaderNames ? ForbiddenHeaderError<N> : [N, string] : N extends HeadersObject<infer CookieName> ? Lowercase<CookieName> extends ForbiddenHeaderNames ? ForbiddenHeaderError<CookieName> : [N] : [N]): ResponseTransformer;
22
+ declare function set<N extends string | HeadersObject>(...args: N extends string ? Lowercase<N> extends ForbiddenHeaderNames ? [ForbiddenHeaderError<N>] : [N, string] : N extends HeadersObject<infer CookieName> ? Lowercase<CookieName> extends ForbiddenHeaderNames ? [ForbiddenHeaderError<CookieName>] : [N] : [N]): ResponseTransformer;
23
23
 
24
24
  declare type DelayMode = 'real' | 'infinite';
25
25
  /**
@@ -123,7 +123,7 @@ interface LifeCycleEventsMap<ResponseType> {
123
123
  'response:bypass': (response: ResponseType, requestId: string) => void;
124
124
  unhandledException: (error: Error, request: MockedRequest) => void;
125
125
  }
126
- declare type LifeCycleEventEmitter<ResponseType> = Pick<StrictEventEmitter<ResponseType>, 'on' | 'removeListener' | 'removeAllListeners'>;
126
+ declare type LifeCycleEventEmitter<ResponseType extends Record<string | symbol, any>> = Pick<StrictEventEmitter<ResponseType>, 'on' | 'removeListener' | 'removeAllListeners'>;
127
127
 
128
128
  declare type WorkerLifecycleEventsMap = LifeCycleEventsMap<Response>;
129
129
  declare type FindWorker = (scriptUrl: string, mockServiceWorkerUrl: string) => boolean;
@@ -194,6 +194,11 @@ interface SetupWorkerApi {
194
194
  * @see {@link https://mswjs.io/docs/api/setup-worker/reset-handlers `worker.resetHandlers()`}
195
195
  */
196
196
  resetHandlers: (...nextHandlers: RequestHandler[]) => void;
197
+ /**
198
+ * Returns a readonly list of currently active request handlers.
199
+ * @see {@link https://mswjs.io/docs/api/setup-worker/list-handlers `worker.listHandlers()`}
200
+ */
201
+ listHandlers(): ReadonlyArray<RequestHandler<RequestHandlerDefaultInfo, MockedRequest<DefaultBodyType>, any, MockedRequest<DefaultBodyType>>>;
197
202
  /**
198
203
  * Lists all active request handlers.
199
204
  * @see {@link https://mswjs.io/docs/api/setup-worker/print-handlers `worker.printHandlers()`}
@@ -221,7 +226,7 @@ declare type ContextMap = Record<string, (...args: any[]) => any>;
221
226
  declare type ResponseResolverReturnType<ReturnType> = ReturnType | undefined | void;
222
227
  declare type MaybeAsyncResponseResolverReturnType<ReturnType> = MaybePromise<ResponseResolverReturnType<ReturnType>>;
223
228
  declare type AsyncResponseResolverReturnType<ReturnType> = MaybeAsyncResponseResolverReturnType<ReturnType> | Generator<MaybeAsyncResponseResolverReturnType<ReturnType>, MaybeAsyncResponseResolverReturnType<ReturnType>, MaybeAsyncResponseResolverReturnType<ReturnType>>;
224
- declare type ResponseResolver<RequestType = MockedRequest, ContextType = typeof defaultContext, BodyType = any> = (req: RequestType, res: ResponseComposition<BodyType>, context: ContextType) => AsyncResponseResolverReturnType<MockedResponse<BodyType>>;
229
+ declare type ResponseResolver<RequestType = MockedRequest, ContextType = typeof defaultContext, BodyType extends DefaultBodyType = any> = (req: RequestType, res: ResponseComposition<BodyType>, context: ContextType) => AsyncResponseResolverReturnType<MockedResponse<BodyType>>;
225
230
  interface RequestHandlerOptions<HandlerInfo> {
226
231
  info: HandlerInfo;
227
232
  resolver: ResponseResolver<any, any>;
@@ -286,9 +291,9 @@ interface MockedResponse<BodyType extends DefaultBodyType = any> {
286
291
  passthrough: boolean;
287
292
  delay?: number;
288
293
  }
289
- declare type ResponseTransformer<BodyType extends TransformerBodyType = any, TransformerBodyType = any> = (res: MockedResponse<TransformerBodyType>) => MaybePromise<MockedResponse<BodyType>>;
290
- declare type ResponseFunction<BodyType = any> = (...transformers: ResponseTransformer<BodyType>[]) => MaybePromise<MockedResponse<BodyType>>;
291
- declare type ResponseComposition<BodyType = any> = ResponseFunction<BodyType> & {
294
+ declare type ResponseTransformer<BodyType extends TransformerBodyType = any, TransformerBodyType extends DefaultBodyType = any> = (res: MockedResponse<TransformerBodyType>) => MaybePromise<MockedResponse<BodyType>>;
295
+ declare type ResponseFunction<BodyType extends DefaultBodyType = any> = (...transformers: ResponseTransformer<BodyType>[]) => MaybePromise<MockedResponse<BodyType>>;
296
+ declare type ResponseComposition<BodyType extends DefaultBodyType = any> = ResponseFunction<BodyType> & {
292
297
  /**
293
298
  * Respond using a given mocked response to the first captured request.
294
299
  * Does not affect any subsequent captured requests.
@@ -301,7 +306,7 @@ declare type ResponseCompositionOptions<BodyType> = {
301
306
  defaultTransformers?: ResponseTransformer<BodyType>[];
302
307
  mockedResponseOverrides?: Partial<MockedResponse>;
303
308
  };
304
- declare function createResponseComposition<BodyType>(responseOverrides?: Partial<MockedResponse<BodyType>>, defaultTransformers?: ResponseTransformer<BodyType>[]): ResponseFunction;
309
+ declare function createResponseComposition<BodyType extends DefaultBodyType>(responseOverrides?: Partial<MockedResponse<BodyType>>, defaultTransformers?: ResponseTransformer<BodyType>[]): ResponseFunction;
305
310
  declare const response: ResponseFunction<any> & {
306
311
  once: ResponseFunction<any>;
307
312
  networkError(message: string): never;
@@ -343,6 +348,11 @@ interface SetupServerApi {
343
348
  * @see {@link https://mswjs.io/docs/api/setup-server/reset-handlers `server.reset-handlers()`}
344
349
  */
345
350
  resetHandlers(...nextHandlers: RequestHandler[]): void;
351
+ /**
352
+ * Returns a readonly list of cyurrently active request handlers.
353
+ * @see {@link https://mswjs.io/docs/api/setup-server/list-handlers `server.listHandlers()`}
354
+ */
355
+ listHandlers(): ReadonlyArray<RequestHandler<RequestHandlerDefaultInfo, MockedRequest<DefaultBodyType>, any, MockedRequest<DefaultBodyType>>>;
346
356
  /**
347
357
  * Lists all active request handlers.
348
358
  * @see {@link https://mswjs.io/docs/api/setup-server/print-handlers `server.print-handlers()`}