24 lines
944 B
TypeScript
24 lines
944 B
TypeScript
import { type ImmutableRequest } from './ImmutableRequest';
|
|
import type { AssetInfo, GetStaticContentOptions } from './manifest';
|
|
/**
|
|
* The SSR render module exported from `_expo/server/render.js`.
|
|
*
|
|
* {@link import('@expo/router-server/src/static/renderStaticContent')}
|
|
*/
|
|
export interface ServerRenderModule {
|
|
/** {@link import('@expo/router-server/src/static/renderStaticContent').getStaticContent} */
|
|
getStaticContent(location: URL, options?: GetStaticContentOptions): Promise<string>;
|
|
}
|
|
export interface RenderOptions {
|
|
loader?: {
|
|
data: unknown;
|
|
key: string;
|
|
};
|
|
assets?: AssetInfo;
|
|
}
|
|
export type SsrRenderFn = (request: Request, options?: RenderOptions) => Promise<string>;
|
|
/** Module exported from loader bundle, typically `_expo/loaders/[ROUTE].js` */
|
|
export interface LoaderModule {
|
|
loader(request: ImmutableRequest | undefined, params: Record<string, string>): Promise<unknown> | unknown;
|
|
}
|