import type { TokenSource } from './speakGated.js'; export type DeferredCloseReason = 'complete' | 'interrupted' | 'error'; export interface DeferredTokenSource { source: TokenSource; push(delta: string): void; close(reason?: DeferredCloseReason): void; fail(error: unknown): void; } export declare function createDeferredTokenSource(): DeferredTokenSource;