/// <reference types="pcore-pconnect-typedefs" />
import { OnInit, NgZone, OnDestroy } from '@angular/core';
import { FormGroup } from '@angular/forms';
import { AngularPConnectData, AngularPConnectService } from '../../../_bridge/angular-pconnect';
import { Utils } from '../../../_helpers/utils';
import * as i0 from "@angular/core";
export declare class AttachmentComponent implements OnInit, OnDestroy {
    private angularPConnect;
    private utils;
    private ngZone;
    pConn$: typeof PConnect;
    formGroup$: FormGroup;
    angularPConnectData: AngularPConnectData;
    label$: string;
    value$: any;
    bRequired$: boolean;
    bReadonly$: boolean;
    bDisabled$: boolean;
    bVisible$: boolean;
    bLoading$: boolean;
    arFiles$: any[];
    arFileList$: any[];
    removeFileFromList$: any;
    arMenuList$: any[];
    bShowSelector$: boolean;
    bShowJustDelete$: boolean;
    att_valueRef: any;
    att_categoryName: string;
    att_id: string;
    myFiles: any;
    fileTemp: any;
    caseID: any;
    allowMultiple$: boolean;
    extensions$: string;
    status: string;
    validateMessage: string | undefined;
    valueRef: string;
    imagePath$: string;
    constructor(angularPConnect: AngularPConnectService, utils: Utils, ngZone: NgZone);
    ngOnInit(): void;
    checkAndUpdate(): void;
    ngOnDestroy(): void;
    onStateChange(): void;
    updateAttachmentsInfo(): void;
    processFile(file: any, i: any): void;
    updateSelf(): void;
    updateAttachments(): void;
    updateAttachmentsFromServer(): void;
    resetAttachmentStoredState(): void;
    _downloadFileFromList(fileObj: any): void;
    fileDownload: (data: any, fileName: any, ext: any) => void;
    getAttachmentKey: (name?: string) => string;
    CheckForInvalidAttachment(): void;
    _removeFileFromList(item: any): void;
    getCurrentAttachmentsList(key: any, context: any): any;
    errorHandler(isFetchCanceled: any, file: any): (error: any) => never;
    uploadMyFiles(event: any): void;
    handleFileUploadSuccess(fileResponses: any): void;
    handleFileUploadFailure(): void;
    getNewListUtilityItemProps: ({ att, cancelFile, downloadFile, deleteFile, removeFile }: {
        att: any;
        cancelFile: any;
        downloadFile: any;
        deleteFile: any;
        removeFile: any;
    }) => {
        id: any;
        visual: {
            icon: any;
            progress: any;
        };
        primary: {
            type: any;
            name: any;
            icon: string;
            click: any;
        };
        secondary: {
            text: any;
            error: any;
        };
        actions: any;
    };
    onUploadProgress(): void;
    getFiles(arFiles: any[]): any[];
    setNewFiles(arFiles: any): any[];
    validateMaxSize(fileObj: any, maxSizeInMB: any): boolean;
    validateFileExtension: (fileObj: any, allowedExtensions: any) => any;
    buildFilePropsFromResponse(respObj: any): {
        props: {
            meta: string;
            name: any;
            icon: string;
        };
        responseProps: any;
    };
    static ɵfac: i0.ɵɵFactoryDeclaration<AttachmentComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AttachmentComponent, "app-attachment", never, { "pConn$": { "alias": "pConn$"; "required": false; }; "formGroup$": { "alias": "formGroup$"; "required": false; }; }, {}, never, never, true, never>;
}
