securityos/node_modules/next/dist/client/route-loader.d.ts

42 lines
1.5 KiB
TypeScript

import type { ComponentType } from 'react';
import type { MiddlewareMatcher } from '../build/analysis/get-page-static-info';
declare global {
interface Window {
__BUILD_MANIFEST?: Record<string, string[]>;
__BUILD_MANIFEST_CB?: Function;
__MIDDLEWARE_MATCHERS?: MiddlewareMatcher[];
__MIDDLEWARE_MANIFEST_CB?: Function;
__PRERENDER_MANIFEST?: string;
}
}
interface LoadedEntrypointSuccess {
component: ComponentType;
exports: any;
}
interface LoadedEntrypointFailure {
error: unknown;
}
type RouteEntrypoint = LoadedEntrypointSuccess | LoadedEntrypointFailure;
interface RouteStyleSheet {
href: string;
content: string;
}
interface LoadedRouteSuccess extends LoadedEntrypointSuccess {
styles: RouteStyleSheet[];
}
interface LoadedRouteFailure {
error: unknown;
}
type RouteLoaderEntry = LoadedRouteSuccess | LoadedRouteFailure;
export interface RouteLoader {
whenEntrypoint(route: string): Promise<RouteEntrypoint>;
onEntrypoint(route: string, execute: () => unknown): void;
loadRoute(route: string, prefetch?: boolean): Promise<RouteLoaderEntry>;
prefetch(route: string): Promise<void>;
}
export declare function markAssetError(err: Error): Error;
export declare function isAssetError(err?: Error): boolean | undefined;
export declare function getClientBuildManifest(): Promise<Record<string, string[]>>;
export declare function createRouteLoader(assetPrefix: string): RouteLoader;
export {};