diff --git a/src/ActionAlterDefinitionsEvent.php b/src/ActionAlterDefinitionsEvent.php
new file mode 100644
index 0000000..68a6027
--- /dev/null
+++ b/src/ActionAlterDefinitionsEvent.php
@@ -0,0 +1,26 @@
+<?php
+
+namespace Drupal\views_bulk_operations;
+
+use Drupal\Component\EventDispatcher\Event;
+
+/**
+ * Defines action alter definitions event.
+ */
+class ActionAlterDefinitionsEvent extends Event {
+
+  /**
+   * Array of action definitions.
+   *
+   * @var mixed[]
+   */
+  public array $definitions;
+
+  /**
+   * Additional parameters passed to alter event.
+   *
+   * @var mixed[]
+   */
+  public array $alterParameters;
+
+}
diff --git a/src/Service/ViewsBulkOperationsActionManager.php b/src/Service/ViewsBulkOperationsActionManager.php
index 921c2b5..5af037a 100644
--- a/src/Service/ViewsBulkOperationsActionManager.php
+++ b/src/Service/ViewsBulkOperationsActionManager.php
@@ -8,6 +8,7 @@ use Drupal\Core\Action\ActionManager;
 use Drupal\Core\Cache\CacheBackendInterface;
 use Drupal\Core\Entity\EntityTypeManagerInterface;
 use Drupal\Core\Extension\ModuleHandlerInterface;
+use Drupal\views_bulk_operations\ActionAlterDefinitionsEvent;
 use Symfony\Component\EventDispatcher\EventDispatcherInterface;
 
 /**
@@ -209,7 +210,7 @@ class ViewsBulkOperationsActionManager extends ActionManager {
   protected function alterDefinitions(&$definitions) {
     // Let other modules change definitions.
     // Main purpose: Action permissions bridge.
-    $event = new Event();
+    $event = new ActionAlterDefinitionsEvent();
     $event->alterParameters = $this->alterParameters;
     $event->definitions = &$definitions;
 
