diff --git a/src/behavioral/Plugin.ts b/src/behavioral/Plugin.ts
index 1c54971..63269ff 100644
--- a/src/behavioral/Plugin.ts
+++ b/src/behavioral/Plugin.ts
@@ -34,7 +34,24 @@
  * @module Plugin
  */
 
-export abstract class Plugin<T> {
+export type Pluginable<T> = {
+  /**
+   * Returns the name as a string.
+   *
+   * @returns {string} The name.
+   */
+  get name(): string
+
+  /**
+   * Executes the method with the given arguments.
+   *
+   * @param {...T} args - The arguments to be passed to the method.
+   * @return {void}
+   */
+  execute(...args: T[]): void
+}
+
+export abstract class Plugin<T> implements Pluginable<T> {
   /**
    * Retrieves the name.
    *