PHP (NextCloud) events/listeners best practices

To give a bit on context, I am building an app in nextcloud and I am going to shoot & listen to a lot for events. I have got 2 options to tackle this problem.

1. Creating a lot of events & listeners;

For every single action within a service, I can shoot out an event which will have a listener attached. This means that I will get a lot of events and listeners within the system. Example;

$dispatcher->dispatchTyped(new reorderEvent());
$dispatcher->dispatchTyped(new assignEvent());

2. Creating 1 event for a model with actions;

I can also create just 1 event that will pass through just an action string/enum. This will reduce the amount of event files within the application. Example;

class ActionEnum: string 
{
    case REORDER;
    case ASSIGN;
}

$dispatcher->dispatchTyped(new updatedEvent(ActionEnum::REORDER));
$dispatcher->dispatchTyped(new updatedEvent(ActionEnum::ASSIGN));

Now the multi-million dollar question is, which would be considered best-practice in the long run? Or is there another solution that is even better to use?