/**
 * Image Input Support - Vision Models (Inspired by Codex CLI, Copilot CLI, Aider)
 *
 * Allows users to include images in prompts for vision-enabled models.
 * Supports:
 * - File paths: grok "Implement this" --image screenshot.png
 * - URLs: grok "Analyze this" --image https://example.com/image.png
 * - Clipboard paste (when supported)
 * - Base64 encoded images
 */
export interface ImageInput {
    type: 'base64' | 'url';
    data: string;
    mimeType: string;
    source: string;
}
export interface ImageContent {
    type: 'image_url';
    image_url: {
        url: string;
        detail?: 'low' | 'high' | 'auto';
    };
}
/**
 * Check if a file is a supported image
 */
export declare function isSupportedImage(filePath: string): boolean;
/**
 * Get MIME type from file extension
 */
export declare function getMimeType(filePath: string): string;
/**
 * Check if a string is a URL
 */
export declare function isUrl(input: string): boolean;
/**
 * Check if a string is base64 encoded
 */
export declare function isBase64(input: string): boolean;
/**
 * Load image from file path
 */
export declare function loadImageFromFile(filePath: string): Promise<ImageInput>;
/**
 * Load image from URL
 */
export declare function loadImageFromUrl(url: string): Promise<ImageInput>;
/**
 * Parse image input (file path, URL, or base64)
 */
export declare function parseImageInput(input: string): Promise<ImageInput>;
/**
 * Convert ImageInput to OpenAI-compatible format
 */
export declare function toOpenAIImageContent(image: ImageInput, detail?: 'low' | 'high' | 'auto'): ImageContent;
/**
 * Build multimodal message content (text + images)
 */
export declare function buildMultimodalContent(text: string, images: ImageInput[], detail?: 'low' | 'high' | 'auto'): Array<{
    type: 'text';
    text: string;
} | ImageContent>;
/**
 * Extract image references from text (e.g., @image.png, @https://...)
 */
export declare function extractImageReferences(text: string): {
    cleanText: string;
    imagePaths: string[];
};
/**
 * Check if model supports vision
 */
export declare function supportsVision(modelName: string): boolean;
/**
 * Format image summary for display
 */
export declare function formatImageSummary(images: ImageInput[]): string;
