import type { ImageContent } from "@gajae-code/ai/core"; export declare const MAX_IMAGE_INPUT_BYTES: number; export declare const SUPPORTED_INPUT_IMAGE_MIME_TYPES: Set; export interface LoadImageInputOptions { path: string; cwd: string; autoResize: boolean; maxBytes?: number; resolvedPath?: string; detectedMimeType?: string; signal?: AbortSignal; } export interface LoadImageInputBytesOptions { inputBuffer: Buffer; resolvedPath: string; mimeType: string; autoResize: boolean; maxBytes?: number; maxOutputBytes?: number; signal?: AbortSignal; } export interface TransformedImageInput { resolvedPath: string; mimeType: string; buffer: Uint8Array; textNote: string; dimensionNote?: string; bytes: number; } export interface LoadedImageInput { resolvedPath: string; mimeType: string; data: string; textNote: string; dimensionNote?: string; bytes: number; } export declare class ImageInputTooLargeError extends Error { readonly bytes: number; readonly maxBytes: number; constructor(bytes: number, maxBytes: number); } export declare function ensureSupportedImageInput(image: ImageContent): Promise; /** Transform trusted source bytes without materializing a base64 payload. */ export declare function transformImageInputBytes(options: LoadImageInputBytesOptions): Promise; export declare function materializeImageInput(transformed: TransformedImageInput): LoadedImageInput; /** Build a model image payload from bytes already read through a trusted descriptor. */ export declare function loadImageInputBytes(options: LoadImageInputBytesOptions): Promise; export declare function loadImageInput(options: LoadImageInputOptions): Promise;