import type { ImageGenerationProvider, ImageGenerationRequest, ImageGenerationResult } from '@xopcai/xopc/agent/image/generation/types.js';
/**
 * Wan image model ids for **HTTP synchronous** `multimodal-generation/generation`.
 * - **2.7** (`wan2.7-image-pro` / `wan2.7-image`): see Wan 2.7 image API (size presets 1K/2K/4K, `thinking_mode`, …).
 * - **2.6** (`wan2.6-t2i`): legacy Wan 2.6 T2I (`prompt_extend`, pixel `宽*高`, …).
 * Wan 2.5 and earlier async-only models are not listed here.
 * @see https://www.alibabacloud.com/help/en/model-studio/wan-image-generation-and-editing-api-reference
 * @see https://www.alibabacloud.com/help/en/model-studio/text-to-image-v2-api-reference
 * @see https://www.alibabacloud.com/help/en/model-studio/model-pricing
 */
export declare const DASHSCOPE_IMAGE_MODELS: readonly string[];
export declare const DASHSCOPE_DEFAULT_IMAGE_MODEL: string;
/**
 * Official synchronous wan2.6 text-to-image endpoints. Each region uses its own API key.
 * @see https://www.alibabacloud.com/help/zh/model-studio/text-to-image-v2-api-reference
 */
export declare const DASHSCOPE_IMAGE_ENDPOINTS: {
    readonly beijing: "https://dashscope.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation";
    readonly singapore: "https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation";
    readonly us: "https://dashscope-us.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation";
};
export type DashScopeImageRegion = keyof typeof DASHSCOPE_IMAGE_ENDPOINTS;
export declare function resolveDashScopeImageRegion(req?: ImageGenerationRequest): DashScopeImageRegion;
export declare function resolveDashScopeImageGenerationUrl(req?: ImageGenerationRequest): string;
/** Map tool size (e.g. `1024x1024`) to DashScope `宽*高` format. */
export declare function mapSizeToDashScopeFormat(size?: string): string;
export declare function isWan27ImageModel(model: string): boolean;
/**
 * Map tool `size` to Wan 2.7 `parameters.size` (1K / 2K / 4K presets or `宽*高` pixels).
 * `wan2.7-image` does not support 4K — falls back to 2K.
 */
export declare function mapSizeToWan27Format(size: string | undefined, modelId: string): string;
export declare function generateDashScopeImages(params: {
    req: ImageGenerationRequest;
    apiKey: string;
}): Promise<ImageGenerationResult>;
export declare function buildDashScopeImageGenerationProvider(): ImageGenerationProvider;
