UNPKG

vite-plugin-react-server

Version:
70 lines (67 loc) 1.79 kB
// React types are imported from vendor system at runtime import type { ReactStreamHandlerFn, StreamMetrics } from "../types.js"; import type { PassThrough } from "node:stream"; export type CreateRenderToPipeableStreamHandlerReturn< Env extends "client" | "server" = "client" | "server" > = { type: Env; pipe: <Writable extends NodeJS.WritableStream>( destination: Writable ) => Writable; abort: (reason?: unknown) => void; // in .client this is the node-stream (createNodeStream) and in .server this just the react elements elements?: React.ReactElement | React.ReactNode | React.Usable<React.ReactElement | React.ReactNode>; metrics: StreamMetrics; } & (Env extends "server" ? { rscStream: PassThrough; htmlStream?: never; } : { rscStream?: never; htmlStream: PassThrough; }); export type CreateRenderToPipeableStreamHandlerFn< Env extends "client" | "server" = "client" | "server" > = ReactStreamHandlerFn< Env, // make those optional which we can handle later or ignore | "moduleID" | "css" | "normalizer" | "onMetrics" | "htmlTimeout" | "fileWriteTimeout" | "workerShutdownTimeout" | "rscWorkerPath" | "htmlWorkerPath" | "panicThreshold" | "logger" | "serverPipeableStreamOptions" | "clientPipeableStreamOptions" | "verbose" | "onEvent" | "autoDiscover" | "rscTimeout" | "loader" | "manifest" | "cssFiles" | "globalCss" | "build" | "dev" | "PageComponent" | "RootComponent" | "HtmlComponent" | "children" | "pageExportName" | "propsExportName" | "rootExportName" | "htmlExportName" | "moduleBase" | "publicOrigin" | "projectRoot" | "url" | "reuseHeadlessStreamId" | "headlessStreamElements", CreateRenderToPipeableStreamHandlerReturn<Env> >;