import type { ReactNode } from '../core'; export interface StreamOptions { identifierPrefix?: string; nonce?: string; bootstrapScriptContent?: string | ReadonlyArray; bootstrapScripts?: ReadonlyArray; bootstrapModules?: ReadonlyArray; onError?: (error: unknown) => string | void; signal?: AbortSignal; progressiveChunkSize?: number; } export interface ReadableStreamResult extends ReadableStream { allReady: Promise; } export interface PipeableWritable { write(chunk: string): unknown; end(): unknown; } export interface OrchestratorState { nextId: number; pending: Set>; closed: boolean; errored: unknown | null; } type Emit = (chunk: string) => void; export declare function streamHtml(children: ReactNode, emit: Emit, options: StreamOptions, state: OrchestratorState): Promise; export declare function renderToReadableStream(children: ReactNode, options?: StreamOptions): Promise; export interface PipeableHandle { pipe(dest: T): T; abort(reason?: unknown): void; } export interface PipeableOptions extends StreamOptions { onShellReady?: () => void; onShellError?: (err: unknown) => void; onAllReady?: () => void; } export declare function renderToPipeableStream(children: ReactNode, options?: PipeableOptions): PipeableHandle; export {};