import { AfterViewInit, ChangeDetectorRef, EventEmitter, OnDestroy } from '@angular/core';
import { Router } from '@angular/router';
import { FVAbstractControl } from '../../shared/abstract-control.component';
import { ApiService, DGSNotificationService, Lang } from '@dotgov/core';
import { LanguageService } from '../../../services/language.service';
import { ProcessService } from '../../../services/process.service';
import { Folder, DockItem, FVDoneResponse, Task } from '../../../models';
/**
 * @Author [GrigoreMe](https://github.com/grigoreme)
 */
export declare class FVControlsMenuGridComponent extends FVAbstractControl implements AfterViewInit, OnDestroy {
    private process;
    private api;
    private ref;
    private language;
    private notification;
    private router;
    isDblClick: boolean;
    reload: boolean;
    showModal: boolean;
    showAddModal: boolean;
    loading: boolean;
    taskData: any;
    lang: Lang;
    designerData: any;
    showDeleteModal: boolean;
    nodeTitle: string;
    private folderClickEvent;
    protected _task: any;
    addConfig: any;
    set task(task: any);
    get task(): any;
    protected _data: any;
    get data(): any;
    get node(): string;
    titleUpdated: EventEmitter<string>;
    onDone: EventEmitter<any>;
    private _title;
    private _node;
    private _lastModel;
    private _toDelete;
    constructor(process: ProcessService, api: ApiService, ref: ChangeDetectorRef, language: LanguageService, notification: DGSNotificationService, router: Router);
    ngAfterViewInit(): void;
    onTaskDone(response: FVDoneResponse): void;
    folderClicked(folder: Folder): void;
    modalClosed(): void;
    onMenuItemClicked(itemData: {
        actionName: string;
        dockItem: DockItem;
        activeItem: any;
    }): void;
    handleEdit(itemData: {
        actionName: string;
        dockItem: DockItem;
        activeItem: any;
    }): void;
    onDblClick(itemData: {
        keyfield: string;
        target: Task;
    }): void;
    updateTitle(title: string): void;
    handleDelete(itemData: any): void;
    onDeleteConfirm(): Promise<void>;
    onDeleteCancel(): void;
    onAddDone(event: any): Promise<void>;
    set node(name: string);
    get title(): string;
    get render(): string;
    get folders(): any[];
    private findPath;
    private loadDefaultNode;
    private readPseudoJson;
    private _isId;
    private createRequestBody;
    private fetchData;
    private handleProfile;
    private deleteSelected;
    private addSelected;
    private handleProcess;
    private handleResponse;
    ngOnDestroy(): void;
}
