import { ConnectableObservable } from 'rxjs';
import { FileDraggerOptions, UploaderOptions } from '../../interface';
export declare class FileDragger {
    private uploadOptions?;
    $el: HTMLElement;
    file$: ConnectableObservable<File[]>;
    private subscription;
    constructor(options: FileDraggerOptions, uploadOptions?: UploaderOptions | undefined);
    bind(): this;
    unbind(): this;
}
export declare function parseDataTransfer(e: DragEvent, fileStat?: UploaderOptions['fileStatFn'], readdir?: UploaderOptions['readdirFn']): Promise<File[]>;
export declare function parseFilesByPath(dataTransfer: DataTransfer, fileStat: NonNullable<UploaderOptions['fileStatFn']>, readdir: NonNullable<UploaderOptions['readdirFn']>): Promise<File[]>;
export declare function webkitGetAsEntryApi(dataTransfer: DataTransfer): Promise<any[]>;
