import type { DynamicParamTypesShort } from '../../shared/lib/app-router-types'; import type { ManifestNode } from '../../build/webpack/plugins/flight-manifest-plugin'; import { type SegmentRequestKey } from '../../shared/lib/segment-cache/segment-value-encoding'; export type RootTreePrefetch = { buildId?: string; tree: TreePrefetch; staleTime: number; }; export type TreePrefetchParam = { type: DynamicParamTypesShort; key: string | null; siblings: readonly string[] | null; }; export type TreePrefetch = { name: string; param: TreePrefetchParam | null; slots: null | { [parallelRouteKey: string]: TreePrefetch; }; /** Bitmask of PrefetchHint flags for this segment and its subtree */ prefetchHints: number; }; export type SegmentPrefetch = { buildId?: string; rsc: React.ReactNode | null; isPartial: boolean; staleTime: number; /** * The set of params that this segment's output depends on. Used by the client * cache to determine which entries can be reused across different param * values. * - `null` means vary params were not tracked (conservative: assume all * params matter) * - Empty set means no params were accessed (segment is reusable for any * param values) */ varyParams: Set | null; }; export declare function collectSegmentData(isCacheComponentsEnabled: boolean, fullPageDataBuffer: Buffer, staleTime: number, clientModules: ManifestNode, serverConsumerManifest: any): Promise>;