import type { ComponentType as ReactComponent } from 'react'; import { type StreamingSlotEnhancerOptions } from '../core/responseEnhancers'; type ReactPageRenderOptions = StreamingSlotEnhancerOptions & { collectStreamingSlots?: boolean; /** Buffer this page's stream so it can carry a content-hash `ETag` and * serve a `304` on repeat visits, at the cost of streaming's fast first * byte. Only worth it on pages static enough that the 304 beats the * stream. See {@link PageCacheOptions.bufferStreamForEtag}. */ bufferStreamForEtag?: boolean; }; export type ReactPageRequestInput = Record> = ReactPageRenderOptions & { Page: ReactComponent; index: string; /** The incoming Elysia request. When provided, the request's pathname * is auto-injected into props as `url` so the Page can wire * `` on the server without the caller * threading the URL by hand. User-supplied `props.url` (if present) * takes precedence — the auto-injection only fills in when missing. */ request?: Request; /** Sitemap metadata for this route. Statically read from the handler * source at registration time, so only literal-object values are * honoured. */ sitemap?: import('../../types/sitemap').PageHandlerSitemapMetadata; } & (keyof Props extends never ? { props?: NoInfer; } : { props: NoInfer; }); export declare const handleReactPageRequest: = Record>(input: ReactPageRequestInput) => Promise; export {};