import { type AnySchema, type Static } from "../../toolcraft-schema/dist/index.js"; export type StreamStatusType = "connected" | "progress" | "reconnecting"; export interface StreamStatusEvent { type: StreamStatusType; message?: string; } export interface StreamConsumerOptions { signal?: AbortSignal; onStatus?: (event: StreamStatusEvent) => void; } export interface ToolcraftStream extends AsyncIterable { readonly signal: AbortSignal; cancel(reason?: unknown): Promise; } export interface ManagedStreamOptions extends StreamConsumerOptions { eventSchema: TSchema; create(signal: AbortSignal, status: (event: StreamStatusEvent) => void): Promise>>; } export declare function createManagedStream(options: ManagedStreamOptions): ToolcraftStream>;