/// /// import type { IncomingHttpHeaders, IncomingMessage, ServerResponse } from 'http'; import type { LoadComponentsReturnType } from './load-components'; import type { ServerRuntime } from '../../types'; import type { NextFontManifest } from '../build/webpack/plugins/next-font-manifest-plugin'; import React from 'next/dist/compiled/react'; import { NextParsedUrlQuery } from './request-meta'; import RenderResult from './render-result'; import { FlightCSSManifest, FlightManifest } from '../build/webpack/plugins/flight-manifest-plugin'; import { RequestCookies } from './web/spec-extension/cookies'; declare const INTERNAL_HEADERS_INSTANCE: unique symbol; export declare class ReadonlyHeaders { [INTERNAL_HEADERS_INSTANCE]: Headers; entries: Headers['entries']; forEach: Headers['forEach']; get: Headers['get']; has: Headers['has']; keys: Headers['keys']; values: Headers['values']; constructor(headers: IncomingHttpHeaders); [Symbol.iterator](): IterableIterator<[string, string]>; append(): void; delete(): void; set(): void; } declare const INTERNAL_COOKIES_INSTANCE: unique symbol; export declare class ReadonlyRequestCookies { [INTERNAL_COOKIES_INSTANCE]: RequestCookies; get: RequestCookies['get']; getAll: RequestCookies['getAll']; has: RequestCookies['has']; constructor(request: { headers: { get(key: 'cookie'): string | null | undefined; }; }); [Symbol.iterator](): any; clear(): void; delete(): void; set(): void; } export declare type RenderOptsPartial = { err?: Error | null; dev?: boolean; serverComponentManifest?: FlightManifest; serverCSSManifest?: FlightCSSManifest; supportsDynamicHTML: boolean; runtime?: ServerRuntime; serverComponents?: boolean; assetPrefix?: string; nextFontManifest?: NextFontManifest; isBot?: boolean; incrementalCache?: import('./lib/incremental-cache').IncrementalCache; isRevalidate?: boolean; nextExport?: boolean; appDirDevErrorLogger?: (err: any) => Promise; }; export declare type RenderOpts = LoadComponentsReturnType & RenderOptsPartial; export declare type DynamicParamTypesShort = 'c' | 'oc' | 'd'; /** * Segment in the router state. */ export declare type Segment = string | [param: string, value: string, type: DynamicParamTypesShort]; /** * Router state */ export declare type FlightRouterState = [ segment: Segment, parallelRoutes: { [parallelRouterKey: string]: FlightRouterState; }, url?: string | null, refresh?: 'refetch' | null, isRootLayout?: boolean ]; /** * Individual Flight response path */ export declare type FlightSegmentPath = any[] | [ segment: Segment, parallelRouterKey: string, segment: Segment, parallelRouterKey: string, segment: Segment, parallelRouterKey: string ]; export declare type FlightDataPath = any[] | [ ...FlightSegmentPath[], Segment, FlightRouterState, React.ReactNode | null, // Can be null during prefetch if there's no loading component React.ReactNode | null ]; /** * The Flight response data */ export declare type FlightData = Array | string; /** * Property holding the current subTreeData. */ export declare type ChildProp = { /** * Null indicates that the tree is partial */ current: React.ReactNode | null; segment: Segment; }; export declare function renderToHTMLOrFlight(req: IncomingMessage, res: ServerResponse, pathname: string, query: NextParsedUrlQuery, renderOpts: RenderOpts): Promise; export {};