import { EventEmitter, OnInit, OnChanges, SimpleChanges } from '@angular/core';
import { ControlValueAccessor, UntypedFormBuilder, UntypedFormGroup, NgForm } from '@angular/forms';
import { ToastController } from '@ionic/angular';
import { UtilService } from '../../services/util/util.service';
import { CaptchaService } from '../../services/captcha/captcha.service';
import { DmsService } from '../../services/dms-service/dms.service';
import { AuditService } from '../../services/audit/audit.service';
import * as i0 from "@angular/core";
export declare class FileUploaderComponent implements OnInit, ControlValueAccessor, OnChanges {
    formBuilder: UntypedFormBuilder;
    private util;
    private fs;
    toastController: ToastController;
    private cs;
    private as;
    imageBase64: string | null;
    private DEFAULT_SINGLE_FILE_LIMIT;
    private DEFAULT_FILE_SIZE_IN_MB;
    private FILE_UPLOAD_ACTION_NAME;
    showProgress: boolean;
    uploadFileFormDirective: NgForm;
    upload: EventEmitter<any>;
    files: EventEmitter<Map<File, string>>;
    uploadAudit: EventEmitter<any>;
    fileInput: any;
    queue: File[];
    mapOfFiles: Map<File, string>;
    allowedFileType: string;
    mimeType: string;
    multiple: boolean;
    proofOfAnything: boolean;
    context: string;
    showSeparateAttachButton: boolean;
    noOfFilesToUpload: number;
    maxSizeInMB: number;
    uploadToDMS: boolean;
    corrId: any;
    uploadFileForm: UntypedFormGroup;
    imageHtml: string;
    constructor(formBuilder: UntypedFormBuilder, util: UtilService, fs: DmsService, toastController: ToastController, cs: CaptchaService, as: AuditService);
    get uploadFileCtrl(): import("@angular/forms").AbstractControl<any, any>;
    ngOnInit(): void;
    private onChange;
    private onTouch;
    writeValue(obj: any): void;
    registerOnChange(fn: any): void;
    registerOnTouched(fn: any): void;
    ngOnChanges(changes: SimpleChanges): void;
    fileToBase64(file: File): Promise<string>;
    uploadToTaxAudit(event: any): Promise<boolean>;
    addToQueue(event: any): void;
    removeFromQueue(fileToRemove: any): void;
    getSizeInMB(num: number): number;
    presentToast(msg: any, color: any): Promise<void>;
    success(msg: any): void;
    error(msg: any): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<FileUploaderComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<FileUploaderComponent, "app-file-uploader", never, { "allowedFileType": { "alias": "allowedFileType"; "required": false; }; "mimeType": { "alias": "mimeType"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "proofOfAnything": { "alias": "proofOfAnything"; "required": false; }; "context": { "alias": "context"; "required": false; }; "showSeparateAttachButton": { "alias": "showSeparateAttachButton"; "required": false; }; "noOfFilesToUpload": { "alias": "noOfFilesToUpload"; "required": false; }; "maxSizeInMB": { "alias": "maxSizeInMB"; "required": false; }; "uploadToDMS": { "alias": "uploadToDMS"; "required": false; }; "corrId": { "alias": "corrId"; "required": false; }; }, { "upload": "upload"; "files": "files"; "uploadAudit": "uploadAudit"; }, never, never, false, never>;
}
//# sourceMappingURL=file-uploader.component.d.ts.map