UNPKG

1.5 kBTypeScriptView Raw
1import Route, { UserRouteConfig, RouteResponse, RouteResponseConfig, ModifyRouteConfig } from './Route.js';
2import { RouteMatcher } from './Matchers.js';
3import { FetchMockConfig } from './FetchMock.js';
4import type { CallLog } from './CallHistory.js';
5export type ResponseConfigProp = 'body' | 'headers' | 'throws' | 'status' | 'redirectUrl';
6export type RemoveRouteOptions = {
7 includeSticky?: boolean;
8 includeFallback?: boolean;
9 names?: string[];
10};
11export 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 modifyRoute(routeName: string, options: ModifyRouteConfig): void;
31}