import { EventEmitter, ChangeDetectorRef } from '@angular/core';
import { SmzFileControl } from '../../models/control-types';
import { UntypedFormGroup } from '@angular/forms';
import { SmzFormsBehaviorsConfig } from '../../models/behaviors';
import { Message } from 'primeng/api';
import { Store } from '@ngxs/store';
import * as i0 from "@angular/core";
export declare class FileUploadComponent {
    cdf: ChangeDetectorRef;
    private store;
    input: SmzFileControl;
    form: UntypedFormGroup;
    control: any;
    behaviors: SmzFormsBehaviorsConfig;
    selectChange: EventEmitter<File[]>;
    errors: Message[];
    files: File[];
    isZoomActive: boolean;
    uploadControl: string;
    constructor(cdf: ChangeDetectorRef, store: Store);
    ngOnInit(): void;
    log(): void;
    applyZoom(): void;
    restoreZoom(): void;
    notAllowed(): void;
    onInputFiles(event: any): void;
    onFilesDropped(event: File[], markAsTouched: boolean, emitEvent: boolean, cdf: ChangeDetectorRef): void;
    clear(emitEvent: boolean): void;
    onFileChange(event: File[], emitEvent: boolean, cdf: ChangeDetectorRef): void;
    private handleFile;
    private handleFileToBase64;
    formatBytes(bytes: any, decimals?: number): string;
    validate(file: File, errors: Message[]): boolean;
    private isFileTypeValid;
    formatSize(bytes: any): string;
    isWildcard(fileType: string): boolean;
    getTypeClass(fileType: string): string;
    getFileExtension(file: File): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<FileUploadComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<FileUploadComponent, "smz-file-upload", never, { "input": { "alias": "input"; "required": false; }; "form": { "alias": "form"; "required": false; }; "control": { "alias": "control"; "required": false; }; "behaviors": { "alias": "behaviors"; "required": false; }; }, { "selectChange": "selectChange"; }, never, never, false, never>;
}
