getBulkAction(event, count, options) {
            // Ignore internal updates (`options.context.internal`) for now
            const actor = this.prototype.getActor(options);
            if (!actor) {
                return;
            }

            // Models can opt-in to their CRUD actions being collected (we do this so we don't
            // log every single action)
            if (!this.prototype.actionsCollectCRUD) {
                return;
            }

            const resourceType = this.prototype.actionsResourceType;
            if (!resourceType) {
                return;
            }

            let context = {
                count,
                action_name: options.actionName
            };

            if (this.getBulkActionExtraContext && typeof this.getBulkActionExtraContext === 'function') {
                context = {
                    ...context,
                    ...this.getBulkActionExtraContext.bind(this)(options)
                };
            }

            const data = {
                event,
                resource_id: null,
                resource_type: resourceType,
                actor_id: actor.id,
                actor_type: actor.type
            };

            if (context && Object.keys(context).length) {
                data.context = context;
            }

            return data;
        }
Constructs data for bulk actions to be stored in the database

@param {string} event - The event that triggered the action
@param {number} count - The number of models that were affected
@param {Object} options - The options object
@returns {Object} The data to be stored in the database