1 | import Route, { UserRouteConfig, RouteResponse, RouteResponseConfig } from './Route.js';
|
2 | import { RouteMatcher } from './Matchers.js';
|
3 | import { FetchMockConfig } from './FetchMock.js';
|
4 | import type { CallLog } from './CallHistory.js';
|
5 | export type ResponseConfigProp = 'body' | 'headers' | 'throws' | 'status' | 'redirectUrl';
|
6 | export type RemoveRouteOptions = {
|
7 | includeSticky?: boolean;
|
8 | includeFallback?: boolean;
|
9 | names?: string[];
|
10 | };
|
11 | export default class Router {
|
12 | routes: Route[];
|
13 | config: FetchMockConfig;
|
14 | fallbackRoute: Route;
|
15 | constructor(fetchMockConfig: FetchMockConfig, { routes, fallbackRoute }?: {
|
16 | routes?: Route[];
|
17 | fallbackRoute?: Route;
|
18 | });
|
19 | needsToReadBody(request: Request): boolean;
|
20 | execute(callLog: CallLog): Promise<Response>;
|
21 | generateResponse(callLog: CallLog): Promise<{
|
22 | response: Response;
|
23 | responseOptions: ResponseInit;
|
24 | responseInput: RouteResponseConfig;
|
25 | }>;
|
26 | createObservableResponse(response: Response, responseConfig: ResponseInit, responseInput: RouteResponseConfig, responseUrl: string, pendingPromises: Promise<unknown>[]): Response;
|
27 | addRoute(matcher: RouteMatcher | UserRouteConfig, response?: RouteResponse, nameOrOptions?: UserRouteConfig | string): void;
|
28 | setFallback(response?: RouteResponse): void;
|
29 | removeRoutes({ names, includeSticky, includeFallback, }?: RemoveRouteOptions): void;
|
30 | }
|