diff --git a/packages/next/server/root-render.tsx b/packages/next/server/root-render.tsx
index f5b7c2896b6d..8e0b16367819 100644
--- a/packages/next/server/root-render.tsx
+++ b/packages/next/server/root-render.tsx
@@ -8,7 +8,17 @@ import { renderToReadableStream } from 'next/dist/compiled/react-server-dom-webp
import { StyleRegistry, createStyleRegistry } from 'styled-jsx'
import { NextParsedUrlQuery } from './request-meta'
import RenderResult from './render-result'
-import { readableStreamTee } from './web/utils'
+import {
+ readableStreamTee,
+ encodeText,
+ decodeText,
+ pipeThrough,
+ streamFromArray,
+ streamToString,
+ chainStreams,
+ createBufferedTransformStream,
+ renderToStream,
+} from './node-web-streams-helper'
import { FlushEffectsContext } from '../shared/lib/flush-effects'
const DOCTYPE = ''
@@ -343,286 +353,3 @@ export async function renderToHTML(
return new RenderResult(chainStreams(streams))
}
-
-function createTransformStream({
- flush,
- transform,
-}: {
- flush?: (
- controller: TransformStreamDefaultController