import type { Tool } from '../core/tools/tool-types.js'; export interface VisionAnalyzeInput { /** Path to image file relative to workspace root, HTTP/HTTPS URL, or "data:..." base64 data URL. */ image: string; /** Optional natural-language question about the image. Defaults to a generic description request. */ question?: string; /** Optional detail level: 'low' (fast, lower res), 'high' (detailed), 'auto' (default). */ detail?: 'low' | 'high' | 'auto'; } export interface VisionAnalyzeResult { /** The image as a data URL ready for LLM consumption. */ imageUrl: string; /** Detected MIME type. */ mimeType: string; /** The prompt text that should accompany the image in a vision-capable LLM call. */ prompt: string; /** Image dimensions if detectable (bytes-based approximation). */ sizeBytes: number; } export interface VisionToolOptions { /** Maximum image size in bytes (default 20 MB). */ maxImageBytes?: number; /** Default detail level (default 'auto'). */ defaultDetail?: 'low' | 'high' | 'auto'; } export declare function base64DecodedSize(base64Data: string): number; /** * Create a vision analysis tool with custom options. * * @public */ export declare function createVisionAnalyzeTool(options?: VisionToolOptions): Tool; /** * Default vision analysis tool instance. * * @public */ export declare const visionAnalyzeTool: Tool; //# sourceMappingURL=vision-tool.d.ts.map