import { MaybeRef, MaybeRefOrGetter, Ref } from 'vue'; export interface UseDropzoneReturn { files: Ref; isOverDropZone: Ref; isOverError: Ref; } export interface UseDropzoneOptions { /** * Allowed data types, if not set, all data types are allowed. * Also can be a function to check the data types. */ dataTypes?: MaybeRef | ((types: readonly string[]) => boolean); onDrop?: (files: File[] | null, event: DragEvent) => unknown; onEnter?: (files: File[] | null, event: DragEvent) => unknown; onLeave?: (files: File[] | null, event: DragEvent) => unknown; onOver?: (files: File[] | null, event: DragEvent) => unknown; onError?: (files: File[] | null, event: DragEvent) => unknown; /** * Allow multiple files to be dropped. Defaults to true. */ multiple?: boolean; /** * Prevent default behavior for unhandled events. Defaults to false. */ preventDefaultForUnhandled?: boolean; } export declare function useDropzone(target: MaybeRefOrGetter, options?: UseDropzoneOptions | UseDropzoneOptions['onDrop']): UseDropzoneReturn;