UNPKG

msw

Version:

Seamless REST/GraphQL API mocking library for browser and Node.js.

37 lines (34 loc) 1.61 kB
import { R as RequestHandler } from '../HttpResponse-BFS34nkx.js'; import { WebSocketHandler } from '../handlers/WebSocketHandler.js'; import '@mswjs/interceptors'; import '../utils/internal/isIterable.js'; import '../typeUtils.js'; import 'graphql'; import '../utils/matching/matchRequestUrl.js'; import 'strict-event-emitter'; import '@mswjs/interceptors/WebSocket'; type AnyHandler = RequestHandler | WebSocketHandler; type HandlersMap = Partial<Record<AnyHandler['kind'], Array<AnyHandler>>>; declare function groupHandlersByKind(handlers: Array<AnyHandler>): HandlersMap; interface HandlersControllerState { initialHandlers: HandlersMap; handlers: HandlersMap; } declare abstract class HandlersController { #private; protected getInitialState(initialHandlers: Array<AnyHandler>): HandlersControllerState; protected abstract getState(): HandlersControllerState; protected abstract setState(nextState: Partial<HandlersControllerState>): void; currentHandlers(): Array<AnyHandler>; getHandlersByKind(kind: AnyHandler['kind']): Array<AnyHandler>; use(nextHandlers: Array<AnyHandler>): void; reset(nextHandlers: Array<AnyHandler>): void; restore(): void; } declare class InMemoryHandlersController extends HandlersController { #private; constructor(initialHandlers: Array<AnyHandler>); protected getState(): HandlersControllerState; protected setState(nextState: Partial<HandlersControllerState>): void; } export { type AnyHandler, HandlersController, type HandlersControllerState, type HandlersMap, InMemoryHandlersController, groupHandlersByKind };