/**
 * Terminal streaming renderer for Clawx.
 *
 * EXTRACTION NOTE:
 * OpenClaw's streaming (pi-embedded-subscribe.ts, 726 lines) handles:
 * - Thinking/reasoning tag stripping with code-span awareness
 * - Block chunking for channel message size limits
 * - Messaging tool duplicate detection
 * - Compaction retry coordination
 * - Multi-level buffering with partial block state
 * - Channel-aware formatting (markdown vs plain)
 *
 * We DISCARD all of that. For terminal output, we render agent events directly:
 * - Stream text deltas as they arrive
 * - Show tool calls with their names and a spinner
 * - Show tool results
 * - Show errors
 *
 * Clean, simple, terminal-native.
 */
import type { AgentEvent } from "./types.js";
export interface NetworkSnapshot {
    serving: boolean;
    workers: number;
    peers: number;
    port?: number;
}
export interface StreamRendererOptions {
    getNetworkSnapshot?: () => NetworkSnapshot | null;
}
export interface StreamRenderer {
    onEvent(event: AgentEvent): void;
    finish(): void;
}
export declare function createStreamRenderer(options?: StreamRendererOptions): StreamRenderer;
//# sourceMappingURL=streaming.d.ts.map