import { ActivityLogBaseUseCase, BaseDataDTO, BasePayloadDTO, BasePayloadPropsDTO } from '../../activity-log-base-use-case.dto'; import { ActivityLogDocumentDTO, ActivityLogObjectDataDTO, ActivityLogObjectIdDTO, ActivityLogPayloadDTO, ActivityLogSchemeDTO, ChangeBaseDTO } from '../../dtos'; import { ACTIVITY_EVENT_TYPES, ACTIVITY_LOG_USE_CASES, ACTIVITY_OBJECT_TYPES } from '../../enums'; export type SchemeState = ActivityLogSchemeDTO & { roles: { name: string; permissions: { name: string; key: string; }[]; }[]; }; type PayloadDTO = BasePayloadPropsDTO & Pick, 'community' | 'originalState' | 'currentState'>; type DataDTO = Pick, 'actor' | 'community' | 'object'> & { changes: { id?: ChangeBaseDTO; name?: ChangeBaseDTO; description?: ChangeBaseDTO; roles?: ChangeBaseDTO; }; }; export declare class BaseSchemeLog extends ActivityLogBaseUseCase { static readonly useCase: ACTIVITY_LOG_USE_CASES.CREATE_GENERAL_SCHEME | ACTIVITY_LOG_USE_CASES.UPDATE_GENERAL_SCHEME | ACTIVITY_LOG_USE_CASES.DELETE_GENERAL_SCHEME | ACTIVITY_LOG_USE_CASES.CREATE_GROUP_SCHEME | ACTIVITY_LOG_USE_CASES.UPDATE_GROUP_SCHEME | ACTIVITY_LOG_USE_CASES.DELETE_GROUP_SCHEME; static readonly eventType: ACTIVITY_EVENT_TYPES.CREATE | ACTIVITY_EVENT_TYPES.UPDATE | ACTIVITY_EVENT_TYPES.DELETE; static readonly objectType: ACTIVITY_OBJECT_TYPES.GENERAL_SCHEME | ACTIVITY_OBJECT_TYPES.GROUP_SCHEME; static toPayload(data: PayloadDTO): ActivityLogPayloadDTO; static toDocument(payload: ActivityLogPayloadDTO): ActivityLogDocumentDTO; toObjectIds(): ActivityLogObjectIdDTO; toData(objectData: ActivityLogObjectDataDTO): DataDTO; } export {};