import { lowerImagePrompt, type ImagePrompt, type StreamImageOptions } from "@use-crux/core"; import type { OpenAIImageExtra } from "./image-generation"; /** OpenAI controls accepted by native Images API streaming. */ export interface OpenAIImageStreamExtra extends OpenAIImageExtra { /** * Number of complete provisional images requested from OpenAI. * * OpenAI may return fewer previews when the final image completes first. * @defaultValue 0 */ readonly partial_images?: 0 | 1 | 2 | 3 | null; } export type OpenAIImageStreamInput = StreamImageOptions; export type NormalizedOpenAIImageStream = Readonly<{ options: OpenAIImageStreamInput; prompt: Awaited>; }>; /** Validate and lower one portable image-stream request without provider I/O. */ export declare function normalizeOpenAIImageStream(input: OpenAIImageStreamInput, model: string): Promise; /** Return whether the installed Images API can honestly stream this request. */ export declare function supportsOpenAIImageStream({ options, prompt, }: NormalizedOpenAIImageStream): boolean;