import { TaskActionEnum } from "../enums/task_action_enum"; import { TaskStatusEnum } from "../enums/task_status_enum"; import { TaskTypeEnum } from "../enums/task_type_enum"; import { ITaskFlowConfigContextData } from "../flow-configs/task_flow.config"; import { EntityEnum } from "../interface/entity.utils.interface"; import { RelationConfigs } from "../interface/relation-config.interface"; import { ITaskEntity } from "../interface/task.entity.interface"; import { IUserEntity } from "../interface/user.entity.interface"; import { BaseEntityModel } from "./base.entity.model"; import { IRowActions } from "./interface/row-actions.interface"; import { UserEntityModel } from "./user.entity.model"; export declare class TaskEntityModel extends BaseEntityModel implements ITaskEntity { id: number; name: string; description: string; status: TaskStatusEnum; type: TaskTypeEnum; createdBy: number; updatedBy: number; createdOn: number; updatedOn: number; static fromEntity(entity: ITaskEntity): TaskEntityModel; static relationConfigs: RelationConfigs<[], EntityEnum.TASK>; getRelationConfigs(): any[]; getNextStatus(currentUser: IUserEntity, action: TaskActionEnum, taskFlowConfigContextData: ITaskFlowConfigContextData): TaskStatusEnum; getAvailableActions(currentUser: UserEntityModel, config?: { combinedActions?: Record; customLabels?: Partial>; }): IRowActions[]; getUpdateActionVisibility(currentUser: UserEntityModel): { [key: string]: () => boolean; }; }