import { ElementRef, EventEmitter, OnChanges, OnInit, SimpleChanges } from "@angular/core";
import { UntypedFormControl } from "@angular/forms";
import * as i0 from "@angular/core";
export declare function requiredFileType(types: string[]): (control: UntypedFormControl) => {
    requiredFileType: boolean;
};
export declare function notExceedSize(size: number): (control: UntypedFormControl) => {
    notExceedSize: boolean;
};
export declare class QMSFileUploadSelectorDirective implements OnInit, OnChanges {
    ele: ElementRef;
    inputFile: any;
    inputFileChange: EventEmitter<any>;
    acceptExtensions: string[];
    onFileUploaded: EventEmitter<any>;
    maxSize: number;
    isLoading: boolean;
    constructor(ele: ElementRef);
    ngOnChanges(changes: SimpleChanges): void;
    ngOnInit(): void;
    invokeMyFunc(): void;
    OnChanges(event: any): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<QMSFileUploadSelectorDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<QMSFileUploadSelectorDirective, "[qms-file-upload-selector]", never, { "inputFile": { "alias": "inputFile"; "required": false; }; "acceptExtensions": { "alias": "acceptExtensions"; "required": false; }; "maxSize": { "alias": "maxSize"; "required": false; }; }, { "inputFileChange": "inputFileChange"; "onFileUploaded": "onFileUploaded"; }, never, never, false, never>;
}
