import { AfterViewInit, OnInit } from "@angular/core";
import { MatDialog, MatDialogRef } from "@angular/material/dialog";
import { MatIconRegistry } from "@angular/material/icon";
import { DomSanitizer } from "@angular/platform-browser";
import { DataType } from "../../../common/enum/data-type.enum";
import { QMSIconRegistryService } from "../../../components/app-icon/icon-registry.service";
import { ShapeModel } from "../../../components/qms-bpmn/models/shape-model.model";
import { QMSSelectOneGlobalService } from "../../../components/select-one";
import { QMSSelectProcessDocumentGlobalService } from "../../../components/select-process-document";
import { TreeConfig, TreeModel } from "../../../components/tree";
import { BpmnService } from "../../../services/qms-bpmn.service";
import { TranslateLibraryService } from "../../../services/translation-registry.service";
import { ShapeFlowChartConnectionType } from '../../common/enums/shape-flow-chart-connection-type';
import { QMSCKEditorBpmnTemplate } from "../../common/models/qms-ckeditor-bpmn-template.model";
import { QMSCKEditorBpmn } from "../../common/models/qms-ckeditor-bpmn.model";
import { QMSCKEditorLinkAnchorDocument } from "../../common/models/qms-ckeditor-link-anchor-document.model";
import { DocumentTreeNodeData } from "../../models/document-tree-node-data.model";
import { QMSBPMNConfig } from "../../models/qms-bpmn-config.model";
import { QMSBPMNShapeAnchor } from "../../models/qms-bpmn-shape-anchor.model";
import { QMSBPMNShapeTarget } from "../../models/qms-bpmn-shape-target";
import { QMSCKEditorBpmnData } from '../../models/qms-ckeditor-bpmn-data.model';
import { QMSCKEditorBaseComponent } from "../../qms-ckeditor-base.component";
import { QMSCKEditorBpmnApiService } from "../../services/qms-ckeditor-bpmn-api.service";
import { QMSCKEditorBPMNConnectionService } from "../../services/qms-ckeditor-bpmn-connection.service";
import { QMSCKEditorCommonService } from "../../services/qms-ckeditor-common.services";
import { QMSCKEditorLinkService } from '../../services/qms-ckeditor-link.service';
import { QMSCKEditorTreeService } from "../../services/qms-ckeditor-tree.service";
import { QMSCKEditorUploadService } from "../../services/qms-ckeditor-upload.service";
import * as i0 from "@angular/core";
export declare class QMSCKEditorBpmnComponent extends QMSCKEditorBaseComponent implements OnInit, AfterViewInit {
    private dialog;
    private translate;
    private bpmnService;
    private bpmnApiService;
    private linkService;
    private uploadService;
    private commonService;
    private selectProcessDocumentGlobalService;
    private relatedService;
    dialogRef: MatDialogRef<QMSCKEditorBpmnComponent>;
    private treeService;
    private qmsRelatedService;
    private appIconService;
    private sanitizer;
    private iconRegistry;
    data: QMSCKEditorBpmnData;
    LANG: any;
    ckEditor: any;
    QMSBPMNConfig: QMSBPMNConfig;
    jsonContent: string;
    id: string;
    module: number;
    entityId: string;
    editorContent: string;
    bpmn: QMSCKEditorBpmn;
    bpmnTemlates: QMSCKEditorBpmnTemplate[];
    template: any;
    templates: any[];
    shapeModel: ShapeModel;
    /** template before selected already another template in select box (using for reset template)*/
    tempTemplate: any;
    targets: QMSBPMNShapeTarget[];
    anchors: QMSBPMNShapeAnchor[];
    splitView: boolean;
    processTreeConfig: TreeConfig;
    documentTreeConfig: TreeConfig;
    treeProcessData: DocumentTreeNodeData[];
    treeDocumentData: DocumentTreeNodeData[];
    loadingRelatedData: boolean;
    enabledInterconnected: boolean;
    enabledDeviationModule: boolean;
    enabledChecklistModule: boolean;
    language: string;
    deviationDataTree: TreeModel[];
    deviationSelectOneConfig: TreeConfig;
    checklistDataTree: TreeModel[];
    checklistSelectOneConfig: TreeConfig;
    constructor(dialog: MatDialog, translate: TranslateLibraryService, bpmnService: BpmnService, bpmnApiService: QMSCKEditorBpmnApiService, linkService: QMSCKEditorLinkService, uploadService: QMSCKEditorUploadService, commonService: QMSCKEditorCommonService, selectProcessDocumentGlobalService: QMSSelectProcessDocumentGlobalService, relatedService: QMSCKEditorBPMNConnectionService, dialogRef: MatDialogRef<QMSCKEditorBpmnComponent>, treeService: QMSCKEditorTreeService, qmsRelatedService: QMSSelectOneGlobalService, appIconService: QMSIconRegistryService, sanitizer: DomSanitizer, iconRegistry: MatIconRegistry, data: QMSCKEditorBpmnData);
    ngOnInit(): Promise<void>;
    ngAfterViewInit(): Promise<void>;
    initConnectionTypes(): void;
    initTarget(): void;
    getTemplates(): Promise<QMSCKEditorBpmnTemplate[]>;
    getJsonContent(id: string): Promise<string>;
    selectConnectType(event: ShapeFlowChartConnectionType): void;
    selectTemplate(): void;
    saveImageContent(graphObject: any): Promise<unknown>;
    getImageContent(joint: any, paper: any): Promise<unknown>;
    onInsertImage(): Promise<void>;
    onCloseDialog(): void;
    saveAsTemplate(templateName: string): void;
    deleteTemplate(): void;
    resetTemplate(): void;
    showConfirmDialog(title: string, content: string, isMessage: boolean, callback?: (result?: any) => void): void;
    calculateAdditionalWidth(graph: any, paper: any, cells: any[]): void;
    initShapeModel(id?: any, itemType?: any, itemName?: string, statusName?: string): void;
    initRelatedConfigAndData(): void;
    openProcessDocument(): void;
    isFolder(type: number): boolean;
    getParentId(item: any): any;
    getDislayNameOfProcessStatus(status: number): "COMMON.IN_PROGRESS" | "COMMON.SEND_TO_APPROVAL" | "COMMON.APPROVED" | "COMMON.UNDER_REVISION" | "COMMON.DELETED" | "COMMON.HEARING" | "COMMON.ARCHIVED" | "PROCESS.HEARING" | "COMMON.UNKNOWN";
    getLinkURL(shapeModel: ShapeModel): string;
    openDeviation(): void;
    openChecklist(): void;
    openAttachmentDialog(): void;
    getShapeActivity(event: any): void;
    getDataFromShapeAtrribute(shapeAttribute: any): void;
    getLinkId(url: string, type: DataType): string;
    getPartialUrl(type: DataType): string;
    getRelatedItemByShapeConnectionType(connectionTypeId: ShapeFlowChartConnectionType, url: string): DataType.process | DataType.document | DataType.area | DataType.folder | DataType.deviation | DataType.checklist | DataType.processInterconnected;
    getDocumentType(url: string): DataType.process | DataType.document | DataType.area | DataType.folder | DataType.deviation | DataType.checklist | DataType.processInterconnected;
    getAnchorDocument(documentId: any): void;
    extractDocumentAnchors(anchorDocument: QMSCKEditorLinkAnchorDocument[]): QMSBPMNShapeAnchor[];
    getShapeModelIconByDataType(dataType: DataType, levelType?: number): "process" | "process_area_outlined" | "document" | "folder_outlined" | "deviation" | "checklist" | "process_interconnected";
    reloadAnchorDocument(): void;
    openLink(): void;
    deleteConnection(selectedConnectionType: any): void;
    saveShapeTarget(targetId: any): void;
    saveShapeAnchor(anchorValue: any): void;
    mapShapeData(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<QMSCKEditorBpmnComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<QMSCKEditorBpmnComponent, "qms-ckeditor-bpmn", never, { "ckEditor": { "alias": "ckEditor"; "required": false; }; }, {}, never, never, false, never>;
}
