import { default as Quill } from 'quill';
export type OptionsObject = {
    debug?: boolean;
    handleOnPaste?: boolean | ((event: ClipboardEvent) => boolean);
    ignoreImageTypes?: string[];
    imageType?: string;
    insertIntoEditor?: (base64URL: string, imageBlob: Blob, editor: Quill) => void;
    keepImageTypes?: string[];
    maxHeight?: number;
    maxWidth?: number;
    quality?: number;
    suppressErrorLogging?: boolean;
    validation?: boolean;
};
declare class ImageCompressor {
    private readonly quill;
    private range?;
    private readonly options;
    private readonly imageDrop;
    private fileHolder;
    private fileHolderChangeProxy?;
    private readonly Logger;
    static b64toBlob(dataURI: string): Blob;
    constructor(quill: Quill, options: OptionsObject);
    destroy(): void;
    selectLocalImage(onFileChanged?: () => void): void;
    fileChanged(externallyProvidedFiles?: File[]): Promise<void>;
    downscaleImageFromUrl(dataUrl: string): Promise<string>;
    insertToEditor(url: string, blob: Blob): void;
    logFileSize(dataUrl: string): void;
    private disposeFileHolder;
}
export type { OptionsObject as ImageCompressorOptions };
export default ImageCompressor;
