import type { ImageContent, Model, TextContent } from "../types.js"; export declare const NON_VISION_IMAGE_PLACEHOLDER = "[image omitted: model does not support vision]"; export declare function partitionVisionContent(content: ReadonlyArray, supportsImages: boolean): { textBlocks: TextContent[]; imageBlocks: ImageContent[]; omittedImages: boolean; }; export declare function joinTextWithImagePlaceholder(text: string, omittedImages: boolean): string; /** * Detect known text-only Qwen models served via Alibaba DashScope's consumer * `compatible-mode` endpoint that the upstream chat-completions API rejects * multimodal content arrays for. The compatible-mode endpoint also serves * multimodal Qwen SKUs without `vl` in the id (e.g. `qwen3.7-plus`), so this * guard only covers families verified to be text-only for issue #1859: * `qwen*-coder*` and `qwen*-max` up to and including `qwen3.7-max`. * * Qwen-Max became multimodal at `qwen3.8-max` (image input, issue #8019), so * `-max` SKUs at version 3.8 or newer are excluded — otherwise the override * would strip images from a genuinely vision-capable flagship (issue #8305). * * Used as a defensive override in `convertMessages` so a misconfigured custom * provider (issue #1859) can't drive the request into an unrecoverable 400. */ export declare function isDashscopeCompatibleModeTextOnlyQwen(model: Model<"openai-completions">): boolean;