UNPKG

1.79 kBTypeScriptView Raw
1
2import { DataRouteObject, RouteBranch, RouteManifest } from "../../router/utils.js";
3import { StaticHandlerContext } from "../../router/router.js";
4import { RouteModules } from "./routeModules.js";
5import { EntryRoute } from "./routes.js";
6import { ServerBuild } from "../../server-runtime/build.js";
7
8//#region lib/dom/ssr/entry.d.ts
9type SerializedError = {
10 message: string;
11 stack?: string;
12};
13interface FrameworkContextObject {
14 manifest: AssetsManifest;
15 routeModules: RouteModules;
16 criticalCss?: CriticalCss;
17 serverHandoffString?: string;
18 future: FutureConfig;
19 ssr: boolean;
20 isSpaMode: boolean;
21 routeDiscovery: ServerBuild["routeDiscovery"];
22 nonce?: string;
23 serializeError?(error: Error): SerializedError;
24 renderMeta?: {
25 didRenderScripts?: boolean;
26 streamCache?: Record<number, Promise<void> & {
27 result?: {
28 done: boolean;
29 value: string;
30 };
31 error?: unknown;
32 }>;
33 };
34}
35interface EntryContext extends FrameworkContextObject {
36 /**
37 * @deprecated This property was an internal implementation detail and was
38 * never intended for use in `entry.server.tsx`. It is always an empty array.
39 */
40 branches: RouteBranch<DataRouteObject>[];
41 staticHandlerContext: StaticHandlerContext;
42 serverHandoffStream?: ReadableStream<Uint8Array>;
43}
44type FutureConfig = Record<string, never>;
45type CriticalCss = string | {
46 rel: "stylesheet";
47 href: string;
48};
49interface AssetsManifest {
50 entry: {
51 imports: string[];
52 module: string;
53 };
54 routes: RouteManifest<EntryRoute>;
55 url: string;
56 version: string;
57 hmr?: {
58 timestamp?: number;
59 runtime: string;
60 };
61 sri?: Record<string, string> | true;
62}
63//#endregion
64export { AssetsManifest, CriticalCss, EntryContext, FrameworkContextObject, FutureConfig };
\No newline at end of file