import { ActivityLogBaseUseCase, BaseDataDTO, BasePayloadDTO, BasePayloadPropsDTO } from '../../activity-log-base-use-case.dto';
import { ActivityLogDocumentDTO, ActivityLogGroupDTO, ActivityLogObjectDataDTO, ActivityLogObjectIdDTO, ActivityLogPayloadDTO, ChangeBaseDTO } from '../../dtos';
import { ACTIVITY_EVENT_TYPES, ACTIVITY_LOG_USE_CASES, ACTIVITY_OBJECT_TYPES } from '../../enums';
type Moved = {
    outer: ChangeBaseDTO<ActivityLogGroupDTO>;
};
type MovedGroup = ActivityLogGroupDTO & {
    outer: ActivityLogGroupDTO;
};
type PayloadDTO = BasePayloadPropsDTO & Omit<BasePayloadDTO<MovedGroup>, 'community'>;
type DataDTO = Omit<BaseDataDTO<ActivityLogGroupDTO>, 'community' | 'group'> & {
    changes: Moved;
};
export declare class MoveGroupLog extends ActivityLogBaseUseCase<DataDTO> {
    static readonly useCase = ACTIVITY_LOG_USE_CASES.MOVE_GROUP;
    static readonly eventType = 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 {};
