import { ElementRef, OnInit, QueryList, EventEmitter } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import { EuiUploadedFile } from './models/uploaded-file.model';
import * as i0 from "@angular/core";
export declare class EuiFileUploadComponent implements ControlValueAccessor, OnInit {
    progress: number;
    isMultiple: boolean;
    hasProgressBar: boolean;
    hasPreview: boolean;
    hasPreviewAsImage: boolean;
    hasPreviewAsIcon: boolean;
    hasTotalSizeDisplayed: boolean;
    hasResetButton: boolean;
    accept: string;
    get hasDragArea(): boolean;
    set hasDragArea(value: boolean);
    _hasDragArea: boolean;
    drop: EventEmitter<any>;
    dropAreaClass: string;
    files: File[];
    filesTotalSize: number;
    randomNumberId: number;
    uploadedFiles: EuiUploadedFile[];
    viewChildren: QueryList<ElementRef<HTMLInputElement>>;
    emitFiles(fileList: FileList): void;
    ngOnInit(): void;
    get showResetBtn(): boolean;
    onDragEnter(): void;
    onDragLeave(): void;
    removeFromList(index: number): void;
    removeFromUploadedList(index: number): void;
    getTotalSize(): void;
    resetList(event?: any): void;
    writeValue(value: any): void;
    registerOnChange(fn: any): void;
    registerOnTouched(fn: any): void;
    private onChange;
    static ɵfac: i0.ɵɵFactoryDef<EuiFileUploadComponent, never>;
    static ɵcmp: i0.ɵɵComponentDefWithMeta<EuiFileUploadComponent, "eui-file-upload", never, { "progress": "progress"; "isMultiple": "isMultiple"; "hasProgressBar": "hasProgressBar"; "hasPreview": "hasPreview"; "hasPreviewAsImage": "hasPreviewAsImage"; "hasPreviewAsIcon": "hasPreviewAsIcon"; "hasTotalSizeDisplayed": "hasTotalSizeDisplayed"; "hasResetButton": "hasResetButton"; "accept": "accept"; "hasDragArea": "hasDragArea"; }, { "drop": "drop"; }, never, ["*"]>;
}
