import { AfterViewInit, Injector, OnDestroy, OnInit } from '@angular/core';
import { App, AbstractDialogService } from '@wm/core';
import { StylableComponent } from '@wm/components/base';
import * as i0 from "@angular/core";
export declare class FileUploadComponent extends StylableComponent implements OnInit, AfterViewInit, OnDestroy {
    private app;
    onSelectEvt: any;
    private dialogService;
    static initializeProps: void;
    selectedFiles: any;
    uploadedFiles: any;
    selectedFolders: any;
    progressObservable: any;
    deleteFileObservable: any;
    name: any;
    hint: any;
    arialabel: any;
    multiple: any;
    fileTransfers: {};
    caption: string;
    formName: string;
    maxfilesize: any;
    cleariconclass: any;
    cleariconhint: any;
    selectedUploadTypePath: any;
    DEFAULT_CAPTIONS: {
        MULTIPLE_SELECT: string;
        SELECT: string;
    };
    DEVICE_CONTENTTYPES: {
        IMAGE: string;
        VIDEO: string;
        AUDIO: string;
        FILES: string;
    };
    FILESIZE_MB: number;
    widgetProps: any;
    _isMobileType: any;
    _isCordova: any;
    CONSTANT_FILE_SERVICE: string;
    uploadData: {
        file: any;
        uploadPath: any;
    };
    allowedFileUploadExtensions: any;
    defaultAllowedExtensions: any;
    chooseFilter: any;
    datasource: any;
    deletedatasource: any;
    fileUploadMessage: string;
    highlightDropArea: any;
    showprogressbar: any;
    showprogressbarpercentage: any;
    isValidFile(filename: any, contenttype: any, extensionName: any, isMobileType: any): any;
    getValidFiles($files: any): {
        validFiles: any[];
        errorFiles: any[];
    };
    handleErrorFiles(key: any, msg: any, file: any, errorFiles: any): void;
    getCaption(caption: any, isMultiple: any, isMobileType: any): any;
    uploadUrl: string;
    changeServerUploadPath(path: any): void;
    getFileExtension(fileName: any): any;
    /**
     * Calls select Event
     * @param $event
     * @param $files
     */
    onSelectEventCall($event: any, $files: any): void;
    onFileElemClick($event: any): void;
    disableDropZone(): void;
    clear(fileObj: any): void;
    private clearFile;
    setClearIconClass(classValue: any): void;
    setClearIconHint(hint: any): void;
    onFileSelect($event: any, $files: any): void;
    onFileDelete($event: any, file: any): void;
    dragOverHandler($event: any): void;
    onFileDrop($event: any): void;
    dragOverCb(e: any): void;
    dropCb(): void;
    triggerFileSelect(): void;
    /**
     * Aborts a file upload request
     * @param $file, the file for which the request is to be aborted
     */
    abortFileUpload($file: any): void;
    isMimeType(file: string): boolean;
    onPropertyChange(key: any, nv: any, ov: any): void;
    constructor(inj: Injector, app: App, onSelectEvt: any, dialogService: AbstractDialogService, explicitContext: any);
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<FileUploadComponent, [null, null, { attribute: "select.event"; }, null, { optional: true; }]>;
    static ɵcmp: i0.ɵɵComponentDeclaration<FileUploadComponent, "[wmFileUpload]", never, {}, {}, never, never, false, never>;
}
