/// <reference types="pcore-pconnect-typedefs" />
import { OnInit, NgZone, OnDestroy } from '@angular/core';
import { AngularPConnectData, AngularPConnectService } from '../../../_bridge/angular-pconnect';
import { Utils } from '../../../_helpers/utils';
import * as i0 from "@angular/core";
export declare class FileUtilityComponent implements OnInit, OnDestroy {
    private angularPConnect;
    private utils;
    private ngZone;
    pConn$: typeof PConnect;
    angularPConnectData: AngularPConnectData;
    arFullListAttachments: any[];
    lu_name$: string;
    lu_icon$: string;
    lu_bLoading$: boolean;
    lu_count$: number;
    lu_arActions$: any[];
    lu_arItems$: any;
    va_arItems$: any[];
    lu_onViewAllFunction: any;
    bShowFileModal$: boolean;
    bShowLinkModal$: boolean;
    bShowViewAllModal$: boolean;
    arFileMainButtons$: any[];
    arFileSecondaryButtons$: any[];
    arLinkMainButtons$: any[];
    arLinkSecondaryButtons$: any[];
    arFiles$: any[];
    arFileList$: any[];
    removeFileFromList$: any;
    arLinks$: any[];
    arLinksList$: any[];
    removeLinksFromList$: any;
    link_title$: string;
    link_url$: string;
    closeSvgIcon$: string;
    currentCaseID: string;
    addAttachmentsActions: any[];
    constructor(angularPConnect: AngularPConnectService, utils: Utils, ngZone: NgZone);
    ngOnInit(): void;
    ngOnDestroy(): void;
    onStateChange(): void;
    onAttachFiles(files: any): void;
    refreshAttachments(): void;
    onUploadProgress(): void;
    errorHandler(): void;
    onAttachLinks(links: any): void;
    addAttachments(attsFromResp?: any[]): any[];
    onViewAll(): void;
    _closeViewAll(): void;
    removeFileFromList(item: any): void;
    removeLinksFromList(item: any): 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;
        };
        actions: any;
    };
    getListUtilityItemProps: ({ 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;
        };
        actions: any;
    };
    _addLink(): void;
    _changeTitle(event: any): void;
    _changeUrl(event: any): void;
    downloadFile(att: any): void;
    fileDownload: (data: any, fileName: any, ext: any) => void;
    cancelFile(): void;
    deleteFile(att: any): void;
    removeFile(): void;
    removeNewFile(): void;
    createModal(modalType: string): void;
    createModalButtons(): void;
    uploadMyFiles($event: any): void;
    getFiles(arFiles: any[]): any[];
    setNewFiles(arFiles: any): any;
    validateMaxSize(fileObj: any, maxSizeInMB: any): boolean;
    onFileActionButtonClick(event: any): void;
    onLinkActionButtonClick(event: any): void;
    clearOutFiles(): void;
    clearOutLinks(): void;
    addALink(): void;
    _fieldOnChangeLink(event: any): void;
    _fieldOnChangeURL(event: any): void;
    updateSelf(): void;
    getCaseID(): string;
    fetchCaseAttachments(caseID: any): Promise<object>;
    handleAttachmentsResponse(resp: any): void;
    getUtilityItems(attachments: any): any;
    mapAttachmentToUtilityItem(att: any): {
        id: any;
        visual: {
            icon: any;
            progress: any;
        };
        primary: {
            type: any;
            name: any;
            icon: string;
            click: any;
        };
        secondary: {
            text: any;
        };
        actions: any;
    };
    getDownloadFunction(att: any): (() => void) | null;
    getCancelFunction(att: any): (() => void) | null;
    getDeleteFunction(att: any): (() => void) | null;
    getRemoveFunction(att: any): (() => void) | null;
    caseHasChanged(): boolean;
    static ɵfac: i0.ɵɵFactoryDeclaration<FileUtilityComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<FileUtilityComponent, "app-file-utility", never, { "pConn$": { "alias": "pConn$"; "required": false; }; }, {}, never, never, true, never>;
}
