import { type DragEvent, type ClipboardEvent } from 'react';
export interface ImageAttachment {
    id: string;
    file: File;
    preview: string;
    data: string;
    mediaType: string;
}
interface UseImageUploadOptions {
    maxImages?: number;
    maxSizeMB?: number;
    pageWide?: boolean;
}
export declare function useImageUpload(options?: UseImageUploadOptions): {
    images: ImageAttachment[];
    isDragging: boolean;
    error: string;
    addImages: (files: FileList | File[]) => Promise<void>;
    removeImage: (id: string) => void;
    clearImages: () => void;
    handleDragEnter: (e: DragEvent) => void;
    handleDragLeave: (e: DragEvent) => void;
    handleDragOver: (e: DragEvent) => void;
    handleDrop: (e: DragEvent) => void;
    handlePaste: (e: ClipboardEvent) => void;
};
export {};
//# sourceMappingURL=useImageUpload.d.ts.map