type StreamStage = "responses" | "completions"; export type FirstStreamEventTimeoutContext = { provider?: string; api?: string; model?: string; timeoutMs: number; stage?: StreamStage; hint?: string; abort?: (reason: Error) => void; onTimeout?: (reason: Error) => void; }; export type FirstStreamEventInternalOptions = { firstEventTimeoutMs?: number; abortFirstEventStream?: (reason: Error) => void; onFirstEventTimeout?: (reason: Error) => void; }; export type FirstStreamEventAbortController = { signal: AbortSignal; abort: (reason: Error) => void; dispose: () => void; }; export declare function getFirstStreamEventTimeoutMs(options: unknown): number | undefined; export declare function getFirstStreamEventTimeoutHandler(options: unknown): ((reason: Error) => void) | undefined; export declare function createFirstStreamEventTimeoutError(context: FirstStreamEventTimeoutContext): Error; export declare function createFirstStreamEventAbortController(parentSignal?: AbortSignal): FirstStreamEventAbortController; export declare function withFirstStreamEventTimeout(stream: AsyncIterable, context: FirstStreamEventTimeoutContext): AsyncIterable; export {};