import { Node } from '@tiptap/core';
export interface ImageResizeOptions {
    HTMLAttributes: Record<string, any>;
    allowResize: boolean;
    allowAlignment: boolean;
    allowCaption: boolean;
    maxWidth: number;
    minWidth: number;
    resizeHandles: ('nw' | 'ne' | 'sw' | 'se' | 'n' | 's' | 'e' | 'w')[];
    onResize?: (width: number, height: number, src: string) => void;
    onAlignmentChange?: (alignment: 'left' | 'center' | 'right', src: string) => void;
}
declare module '@tiptap/core' {
    interface Commands<ReturnType> {
        imageResize: {
            /**
             * Insert a resizable image
             */
            insertResizableImage: (options: {
                src: string;
                alt?: string;
                width?: number;
                height?: number;
                alignment?: 'left' | 'center' | 'right';
                caption?: string;
            }) => ReturnType;
            /**
             * Update image size
             */
            updateImageSize: (src: string, width: number, height?: number) => ReturnType;
            /**
             * Update image alignment
             */
            updateImageAlignment: (src: string, alignment: 'left' | 'center' | 'right') => ReturnType;
        };
    }
}
export declare const ImageResizeExtension: Node<ImageResizeOptions, any>;
export default ImageResizeExtension;
//# sourceMappingURL=ImageResizeExtension.d.ts.map