import type { DropzoneFile, DropzoneOptions } from 'dropzone';
import { type ComponentPublicInstance, type PropType } from 'vue';
export interface MazDropzoneOptions extends DropzoneOptions {
    dictFilesDescriptions?: string;
    autoRemoveOnError?: boolean;
}
export interface MazDropzoneFile extends DropzoneFile {
    manuallyAdded?: boolean;
}
export interface IMazDropzone extends Dropzone {
    options: MazDropzoneOptions;
}
export interface MazDropzoneInstance extends ComponentPublicInstance {
    manuallyAddFile: (file: DropzoneFile, fileUrl: string) => void;
    setOption: (option: string, value: unknown) => IMazDropzone['options'];
    processQueue: IMazDropzone['processQueue'];
    removeFile: IMazDropzone['removeFile'];
    removeAllFiles: IMazDropzone['removeAllFiles'];
    destroy: IMazDropzone['destroy'];
    disable: IMazDropzone['disable'];
    enable: IMazDropzone['enable'];
    accept: IMazDropzone['accept'];
    addFile: IMazDropzone['addFile'];
    resizeImage: IMazDropzone['resizeImage'];
    cancelUpload: IMazDropzone['cancelUpload'];
    getAcceptedFiles: () => MazDropzoneFile[];
    getRejectedFiles: () => MazDropzoneFile[];
    getFilesWithStatus: IMazDropzone['getFilesWithStatus'];
    getQueuedFiles: IMazDropzone['getQueuedFiles'];
    getUploadingFiles: IMazDropzone['getUploadingFiles'];
    getAddedFiles: IMazDropzone['getAddedFiles'];
    getActiveFiles: IMazDropzone['getActiveFiles'];
}
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    options: {
        type: PropType<MazDropzoneOptions>;
        required: true;
    };
    height: {
        type: PropType<number | string>;
        default: string;
    };
    width: {
        type: PropType<number | string>;
        default: string;
    };
    noDestroyOnUnmount: {
        type: BooleanConstructor;
        default: boolean;
    };
}>, {
    ButtonElement: import("vue").Ref<HTMLButtonElement | undefined, HTMLButtonElement | undefined>;
    dropzoneReady: import("vue").Ref<boolean, boolean>;
    dropzoneOptions: import("vue").Ref<MazDropzoneOptions | undefined, MazDropzoneOptions | undefined>;
    dropzoneStyle: import("vue").ComputedRef<{
        width: string;
        height: string;
    }>;
    setOption: (option: string, value: unknown) => MazDropzoneOptions;
    manuallyAddFile: (file: DropzoneFile, fileUrl: string) => void;
    removeAllFiles: (cancelIfNecessary?: boolean) => void;
    processQueue: () => void;
    destroy: () => Dropzone;
    disable: () => void;
    enable: () => void;
    accept: (file: Dropzone.DropzoneFile, done: (error?: string | Error) => void) => void;
    addFile: (file: Dropzone.DropzoneFile) => void;
    resizeImage: (file: Dropzone.DropzoneFile, width?: number, height?: number, resizeMethod?: string, callback?: ((...args: any[]) => void) | undefined) => void;
    cancelUpload: (file: Dropzone.DropzoneFile) => void;
    getAcceptedFiles: () => MazDropzoneFile[];
    getRejectedFiles: () => MazDropzoneFile[];
    getFilesWithStatus: (status: string) => Dropzone.DropzoneFile[];
    getQueuedFiles: () => Dropzone.DropzoneFile[];
    getUploadingFiles: () => Dropzone.DropzoneFile[];
    getAddedFiles: () => Dropzone.DropzoneFile[];
    getActiveFiles: () => Dropzone.DropzoneFile[];
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("dragend" | "dragenter" | "dragleave" | "dragover" | "dragstart" | "drop" | "error" | "paste" | "reset" | "success" | "thumbnail" | "addedfile" | "addedfiles" | "removedfile" | "processing" | "processingmultiple" | "uploadprogress" | "totaluploadprogress" | "sending" | "sendingmultiple" | "canceled" | "canceledmultiple" | "complete" | "completemultiple" | "maxfilesexceeded" | "maxfilesreached" | "queuecomplete")[], "dragend" | "dragenter" | "dragleave" | "dragover" | "dragstart" | "drop" | "error" | "paste" | "reset" | "success" | "thumbnail" | "addedfile" | "addedfiles" | "removedfile" | "processing" | "processingmultiple" | "uploadprogress" | "totaluploadprogress" | "sending" | "sendingmultiple" | "canceled" | "canceledmultiple" | "complete" | "completemultiple" | "maxfilesexceeded" | "maxfilesreached" | "queuecomplete", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    options: {
        type: PropType<MazDropzoneOptions>;
        required: true;
    };
    height: {
        type: PropType<number | string>;
        default: string;
    };
    width: {
        type: PropType<number | string>;
        default: string;
    };
    noDestroyOnUnmount: {
        type: BooleanConstructor;
        default: boolean;
    };
}>> & Readonly<{
    onPaste?: ((...args: any[]) => any) | undefined;
    onDragend?: ((...args: any[]) => any) | undefined;
    onDragenter?: ((...args: any[]) => any) | undefined;
    onDragleave?: ((...args: any[]) => any) | undefined;
    onDragover?: ((...args: any[]) => any) | undefined;
    onDragstart?: ((...args: any[]) => any) | undefined;
    onDrop?: ((...args: any[]) => any) | undefined;
    onReset?: ((...args: any[]) => any) | undefined;
    onError?: ((...args: any[]) => any) | undefined;
    onComplete?: ((...args: any[]) => any) | undefined;
    onSuccess?: ((...args: any[]) => any) | undefined;
    onThumbnail?: ((...args: any[]) => any) | undefined;
    onAddedfile?: ((...args: any[]) => any) | undefined;
    onAddedfiles?: ((...args: any[]) => any) | undefined;
    onRemovedfile?: ((...args: any[]) => any) | undefined;
    onProcessing?: ((...args: any[]) => any) | undefined;
    onProcessingmultiple?: ((...args: any[]) => any) | undefined;
    onUploadprogress?: ((...args: any[]) => any) | undefined;
    onTotaluploadprogress?: ((...args: any[]) => any) | undefined;
    onSending?: ((...args: any[]) => any) | undefined;
    onSendingmultiple?: ((...args: any[]) => any) | undefined;
    onCanceled?: ((...args: any[]) => any) | undefined;
    onCanceledmultiple?: ((...args: any[]) => any) | undefined;
    onCompletemultiple?: ((...args: any[]) => any) | undefined;
    onMaxfilesexceeded?: ((...args: any[]) => any) | undefined;
    onMaxfilesreached?: ((...args: any[]) => any) | undefined;
    onQueuecomplete?: ((...args: any[]) => any) | undefined;
}>, {
    width: string | number;
    height: string | number;
    noDestroyOnUnmount: boolean;
}, {}, {
    MazSpinner: import("vue").DefineComponent<import("./MazSpinner.vue").MazSpinnerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("./MazSpinner.vue").MazSpinnerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, SVGSVGElement>;
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _default;
