import { EntityEnum } from "../interface/entity.utils.interface"; import { RelationConfigs } from "../interface/relation-config.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"; import { DesignationActionEnum } from "../enums/designation_action_enum"; import { DesignationStatusEnum } from "../enums/designation_status_enum"; import { IDesignationFlowConfigContextData } from "../flow-configs/designation_flow.config"; import { IDesignationEntity } from "../interface/designation.entity.interface"; import { ClientQuoteEntityModel } from "./client_quote.entity.model"; import { ClientQuoteRateEntityModel } from "./client_quote_rate.entity.model"; import { RateEntityModel } from "./rate.entity.model"; export declare class DesignationEntityModel extends BaseEntityModel implements IDesignationEntity { id: number; name: string; description?: string; order?: number; status: DesignationStatusEnum; createdOn: number; updatedOn: number; createdBy: number; updatedBy: number; clientQuoteRates?: ClientQuoteRateEntityModel[]; rates?: RateEntityModel[]; users?: UserEntityModel[]; static relationConfigs: RelationConfigs<[EntityEnum.CLIENT_QUOTE_RATE, EntityEnum.RATE, EntityEnum.USER], EntityEnum.DESIGNATION>; static fromEntity(entity: IDesignationEntity): DesignationEntityModel; getRelationConfigs(): any[]; get clientQuotes(): ClientQuoteEntityModel[] | undefined; getNextStatus(currentUser: IUserEntity, action: DesignationActionEnum, designationFlowConfigContextData: IDesignationFlowConfigContextData): DesignationStatusEnum; getAvailableActions(currentUser: UserEntityModel, config?: { combinedActions?: Record; customLabels?: Partial>; }): IRowActions[]; getUpdateActionVisibility(currentUser: UserEntityModel): { [key: string]: () => boolean; }; isUserAssignedToDesignation(): boolean; static getByUserAssignedToDesignation(designationEntityModels: DesignationEntityModel[]): DesignationEntityModel[]; static sortByDesignationPriority(data: T[], designationEntities?: DesignationEntityModel[]): T[]; getNameOfUsersAssignedToCurrentDesignation(): string[]; }