@beincom/dto
Version:
Share dto for all projects of Beincom
37 lines (36 loc) • 1.92 kB
TypeScript
import { ActivityLogBaseUseCase, BasePayloadPropsDTO } from '../../activity-log-base-use-case.dto';
import { ActivityLogDocumentDTO, ActivityLogGroupDTO, ActivityLogObjectDataDTO, ActivityLogObjectIdDTO, ActivityLogPayloadDTO, ActivityLogUserDTO } from '../../dtos';
import { ACTIVITY_EVENT_TYPES, ACTIVITY_LOG_USE_CASES, ACTIVITY_OBJECT_TYPES } from '../../enums';
export declare enum DeletedGroupState {
DELETED = "deleted",
RESTORED = "recoverd",
TEMPORARY_DELETED = "temporary-deleted"
}
export type DeleteRecoverGroupPayload = {
group: ActivityLogGroupDTO;
state: DeletedGroupState;
};
type PayloadDTO = BasePayloadPropsDTO & DeleteRecoverGroupPayload;
type DataDTO = {
actor: ActivityLogUserDTO;
} & DeleteRecoverGroupPayload;
declare class DeleteRecoverGroupLog extends ActivityLogBaseUseCase<DataDTO> {
static readonly useCase: ACTIVITY_LOG_USE_CASES.DELETE_GROUP | ACTIVITY_LOG_USE_CASES.RECOVER_GROUP;
static readonly eventType: ACTIVITY_EVENT_TYPES.DELETE | ACTIVITY_EVENT_TYPES.UPDATE;
static readonly objectType = ACTIVITY_OBJECT_TYPES.GROUP;
static toPayload(data: PayloadDTO): ActivityLogPayloadDTO<PayloadDTO>;
static toDocument({ eventTime, data, }: ActivityLogPayloadDTO<PayloadDTO>): ActivityLogDocumentDTO<DataDTO>;
toObjectIds(): ActivityLogObjectIdDTO;
toData(objectData: ActivityLogObjectDataDTO): DataDTO;
}
export declare class DeleteGroupLog extends DeleteRecoverGroupLog {
static readonly useCase = ACTIVITY_LOG_USE_CASES.DELETE_GROUP;
static readonly eventType = ACTIVITY_EVENT_TYPES.DELETE;
static readonly objectType = ACTIVITY_OBJECT_TYPES.GROUP;
}
export declare class RecoverGroupLog extends DeleteRecoverGroupLog {
static readonly useCase = ACTIVITY_LOG_USE_CASES.RECOVER_GROUP;
static readonly eventType = ACTIVITY_EVENT_TYPES.UPDATE;
static readonly objectType = ACTIVITY_OBJECT_TYPES.GROUP;
}
export {};