UNPKG

@beincom/dto

Version:

Share dto for all projects of Beincom

35 lines (34 loc) 2.06 kB
import { ActivityLogBaseUseCase, BaseDataDTO, BasePayloadDTO, BasePayloadPropsDTO } from '../../activity-log-base-use-case.dto'; import { ActivityLogDocumentDTO, ActivityLogObjectDataDTO, ActivityLogObjectIdDTO, ActivityLogPayloadDTO, ChangeBaseDTO } from '../../dtos'; import { ACTIVITY_EVENT_TYPES, ACTIVITY_LOG_USE_CASES, ACTIVITY_OBJECT_TYPES } from '../../enums'; type PayloadDTO = BasePayloadPropsDTO & Pick<BasePayloadDTO<string>, 'actor' | 'group' | 'originalState' | 'currentState'>; type DataDTO = Pick<BaseDataDTO, 'actor' | 'group'> & { changes: { terms: ChangeBaseDTO<string>; }; }; export declare class BaseTermsLog extends ActivityLogBaseUseCase<DataDTO> { static readonly useCase: ACTIVITY_LOG_USE_CASES.CREATE_TERMS | ACTIVITY_LOG_USE_CASES.UPDATE_TERMS | ACTIVITY_LOG_USE_CASES.DELETE_TERMS; static readonly eventType: ACTIVITY_EVENT_TYPES.CREATE | ACTIVITY_EVENT_TYPES.UPDATE | ACTIVITY_EVENT_TYPES.DELETE; static readonly objectType = ACTIVITY_OBJECT_TYPES.GROUP; static toPayload(data: PayloadDTO): ActivityLogPayloadDTO<PayloadDTO>; static toDocument(payload: ActivityLogPayloadDTO<PayloadDTO>): ActivityLogDocumentDTO<DataDTO>; toObjectIds(): ActivityLogObjectIdDTO; toData(objectData: ActivityLogObjectDataDTO): DataDTO; } export declare class CreateTermsLog extends BaseTermsLog { static readonly useCase = ACTIVITY_LOG_USE_CASES.CREATE_TERMS; static readonly eventType = ACTIVITY_EVENT_TYPES.CREATE; static readonly objectType = ACTIVITY_OBJECT_TYPES.GROUP; } export declare class UpdateTermsLog extends BaseTermsLog { static readonly useCase = ACTIVITY_LOG_USE_CASES.UPDATE_TERMS; static readonly eventType = ACTIVITY_EVENT_TYPES.UPDATE; static readonly objectType = ACTIVITY_OBJECT_TYPES.GROUP; } export declare class DeleteTermsLog extends BaseTermsLog { static readonly useCase = ACTIVITY_LOG_USE_CASES.DELETE_TERMS; static readonly eventType = ACTIVITY_EVENT_TYPES.DELETE; static readonly objectType = ACTIVITY_OBJECT_TYPES.GROUP; } export {};