import type { FinishReason, StreamChunk } from '../../types'; import type { TokenUsage } from '../../types/sdk/agent'; export declare class StreamWriterGuard { private readonly writer; private closed; constructor(writer: WritableStreamDefaultWriter); get isClosed(): boolean; write(chunk: StreamChunk): Promise; close(): Promise; fail(error: unknown, finishReason?: FinishReason, finish?: { usage?: TokenUsage; model?: string; }): Promise; }