import { OnInit, EventEmitter, ElementRef } from '@angular/core';
import { AbstractInputDataView } from "./AbstractInputDataView";
import { NeedFocusService } from "../../../service/NeedFocusService.service";
export declare abstract class AbstracFileSelector extends AbstractInputDataView implements OnInit {
    protected maxFilesize: number;
    protected allowMultipleSelect: boolean;
    protected fileTypes: string[];
    protected beforeSelectEvent: EventEmitter<any>;
    protected selectEvent: EventEmitter<any>;
    private acceptStatus;
    private alertMessage;
    private files;
    constructor(elementRef: ElementRef, needFocusService: NeedFocusService);
    ngOnInit(): void;
    private emitBeforeSelectEvent($event?);
    private emitSelectEvent($event?);
    protected isAccept(files: any[]): boolean;
    protected setDefaultState(): void;
    isAcceptStatus(): boolean;
    getAlertMessage(): string;
    getFiles(): File[];
    getFile(): File;
    getFilesCount(): number;
    clear(): void;
    removeFile(index: number): void;
    addFiles(files: File[], $event?: Event, fireEvent?: boolean): void;
    getBeforeSelectEvent(): EventEmitter<any>;
    setBeforeSelectEvent(event: EventEmitter<any>): void;
    getSelectEvent(): EventEmitter<any>;
    setSelectEvent(event: EventEmitter<any>): void;
    getAllowMultipleSelect(): boolean;
    setAllowMultipleSelect(allowMultipleSelect: boolean): void;
    getMaxFilesize(): number;
    setMaxFilesize(maxFilesize: number): void;
    getFileTypes(): string[];
    setFileTypes(fileTypes: string[]): void;
}
