import { AfterViewInit } from '@angular/core';
import { FVAbstractControl } from '../../../shared/abstract-control.component';
import { ProcessService } from '../../../../services/process.service';
import { ApiService, DGSNotificationService } from '@dotgov/core';
import { ValidationService } from '../../../../services/validation.service';
export declare type FileData = {
    finalSize: string;
    sizeName: string;
    sizeIndex: number;
    bytes: number;
};
/**
 * @Author [GrigoreMe](https://github.com/grigoreme)
 */
export declare class FVControlsUploadFileComponent extends FVAbstractControl implements AfterViewInit {
    private process;
    private api;
    private notification;
    private validator;
    isDragOver: boolean;
    private _files;
    fileInput: any;
    constructor(process: ProcessService, api: ApiService, notification: DGSNotificationService, validator: ValidationService);
    ngAfterViewInit(): void;
    /**
     * Triggerd on file dragged over div. Tell js not to touch the div.
     * @param event
     */
    dragover(event: any): void;
    addFile(event: any, files: any[]): void;
    deleteFile(hiddenId: string): void;
    dropZoneClicked(event: any): void;
    fileUrl(file: any): string;
    sanitizedSize(bytes: number): string | number;
    downloadFile(rowData: any): void;
    readonly fileControlRef: any;
    files: any[];
    readonly allowedFormats: string[];
    /**
     * Displayed to end user.
     */
    readonly sanitizedAllowedFormats: string;
    readonly allowedSize: FileData;
    readonly sanitizedAllowedSize: string | number;
    private loadCurrentValue();
    private bytesToSize(bytes);
    /**
     * Returns if given file found inside active files, matching full name and size.
     */
    private fileExists(file);
    private getExtension(filename);
    private isValidFile(filename);
}
