import { EventEmitter, OnDestroy } from '@angular/core';
import { CoreDialogService, FormComponent } from '@colijnit/corecomponents_v12';
import { Activity } from '@colijnit/mainapi/build/model/activity.bo';
import { WorkflowCategoryType } from '@colijnit/mainapi/build/enum/workflow-category.enum';
import { Icon } from '../../enum/icon.enum';
import { BusinessObjectFactory } from '@colijnit/ioneconnector/build/service/business-object-factory';
import { Task } from '@colijnit/mainapi/build/model/task.bo';
import { OperationCallbackActivity } from '../../interface/operation-callback-activity';
import { IconCacheService } from '../../service/icon-cache.service';
import { ModifyTaskFormComponent } from '../modify-task-form/modify-task-form.component';
import { SharedService } from '../../service/shared.service';
import { SharedComponentsDictionaryService } from '../../translation/shared-components-dictionary.service';
export declare class TaskModifierComponent implements OnDestroy {
    private _dialogService;
    private _boFactory;
    private readonly _dictionary;
    iconService: IconCacheService;
    protected sharedService: SharedService;
    readonly icons: typeof Icon;
    mainForm: FormComponent;
    modifyTaskForm: ModifyTaskFormComponent;
    get readonly(): boolean;
    workflowCategory: WorkflowCategoryType;
    reference: string;
    referenceId: string;
    userGroupId: number;
    relationId: number;
    createTaskOperation: OperationCallbackActivity;
    forceReadonly: boolean;
    readonly editingComplete: EventEmitter<Activity>;
    readonly activitySaved: EventEmitter<Activity>;
    readonly activityDeleted: EventEmitter<Activity>;
    readonly closedWithoutComplete: EventEmitter<boolean>;
    readonly showWorkLog: EventEmitter<void>;
    readonly taskCreated: EventEmitter<Task>;
    readonly taskModified: EventEmitter<Task>;
    readonly triggerFired: EventEmitter<void>;
    showClass(): boolean;
    get showForm(): boolean;
    get header(): string;
    get subHeader(): string;
    get subSubHeader(): string;
    get subHeaderLink(): string;
    get userIsTaskReporter(): boolean;
    showAfterInsert: boolean;
    showNewForm: boolean;
    showModificationForm: boolean;
    currentActivity: Activity;
    editActivity: Activity;
    taskEditting: boolean;
    constructor(_dialogService: CoreDialogService, _boFactory: BusinessObjectFactory, _dictionary: SharedComponentsDictionaryService, iconService: IconCacheService, sharedService: SharedService);
    ngOnDestroy(): void;
    handleSaveForm(): void;
    onValid(): Promise<void>;
    handleCancelForm(): void;
    onPopupClose(): void;
    hide(): void;
    deleteTask(): Promise<void>;
    createNewTask(standalone?: boolean): Promise<void>;
    startModifyingTask(activity: Activity): Promise<void>;
    startModifyingTaskAndWorkLog(activity: Activity): Promise<void>;
    _createClone(): void;
    doHandleStatusChange(editting: boolean): void;
    updateEditActivity(activity: Activity): void;
    handleTriggerFired(): void;
    protected readonly Icon: typeof Icon;
}
