UNPKG

1.25 kBTypeScriptView Raw
1import { Emitter } from 'strict-event-emitter';
2import { WebSocketConnectionData } from '@mswjs/interceptors/WebSocket';
3import { PathParams, Path, Match } from '../utils/matching/matchRequestUrl.js';
4
5type WebSocketHandlerParsedResult = {
6 match: Match;
7};
8type WebSocketHandlerEventMap = {
9 connection: [args: WebSocketHandlerConnection];
10};
11interface WebSocketHandlerConnection extends WebSocketConnectionData {
12 params: PathParams;
13}
14declare const kEmitter: unique symbol;
15declare const kDispatchEvent: unique symbol;
16declare const kSender: unique symbol;
17declare class WebSocketHandler {
18 private readonly url;
19 private readonly __kind;
20 id: string;
21 callFrame?: string;
22 protected [kEmitter]: Emitter<WebSocketHandlerEventMap>;
23 constructor(url: Path);
24 parse(args: {
25 event: MessageEvent<WebSocketConnectionData>;
26 }): WebSocketHandlerParsedResult;
27 predicate(args: {
28 event: MessageEvent<WebSocketConnectionData>;
29 parsedResult: WebSocketHandlerParsedResult;
30 }): boolean;
31 [kDispatchEvent](event: MessageEvent<WebSocketConnectionData>): Promise<void>;
32}
33
34export { WebSocketHandler, type WebSocketHandlerConnection, type WebSocketHandlerEventMap, kDispatchEvent, kEmitter, kSender };