diff --git a/runelite-api/pom.xml b/runelite-api/pom.xml
index 6cec7d08dc..237ebb5172 100644
--- a/runelite-api/pom.xml
+++ b/runelite-api/pom.xml
@@ -37,6 +37,13 @@
RuneLite API
+
+ org.projectlombok
+ lombok
+ 1.16.18
+ provided
+
+
junit
junit
diff --git a/runelite-client/src/main/java/net/runelite/client/events/ActorDeath.java b/runelite-api/src/main/java/net/runelite/api/events/ActorDeath.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/ActorDeath.java
rename to runelite-api/src/main/java/net/runelite/api/events/ActorDeath.java
index 790683b7a8..9021013f3e 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/ActorDeath.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ActorDeath.java
@@ -22,7 +22,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
import net.runelite.api.Actor;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/AnimationChanged.java b/runelite-api/src/main/java/net/runelite/api/events/AnimationChanged.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/AnimationChanged.java
rename to runelite-api/src/main/java/net/runelite/api/events/AnimationChanged.java
index 5632878f88..9ffa6b6f2b 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/AnimationChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/AnimationChanged.java
@@ -22,7 +22,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
import net.runelite.api.Actor;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/ChatMessage.java b/runelite-api/src/main/java/net/runelite/api/events/ChatMessage.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/ChatMessage.java
rename to runelite-api/src/main/java/net/runelite/api/events/ChatMessage.java
index 6170ab9e9c..ed1fa29e2e 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/ChatMessage.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ChatMessage.java
@@ -22,7 +22,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.AllArgsConstructor;
import lombok.Data;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/ClanMembersChanged.java b/runelite-api/src/main/java/net/runelite/api/events/ClanMembersChanged.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/ClanMembersChanged.java
rename to runelite-api/src/main/java/net/runelite/api/events/ClanMembersChanged.java
index 694c68e90d..21cafc3131 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/ClanMembersChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ClanMembersChanged.java
@@ -22,7 +22,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/ConfigChanged.java b/runelite-api/src/main/java/net/runelite/api/events/ConfigChanged.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/ConfigChanged.java
rename to runelite-api/src/main/java/net/runelite/api/events/ConfigChanged.java
index 8b91699e77..b1f2d38f9a 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/ConfigChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ConfigChanged.java
@@ -22,7 +22,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/ExperienceChanged.java b/runelite-api/src/main/java/net/runelite/api/events/ExperienceChanged.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/ExperienceChanged.java
rename to runelite-api/src/main/java/net/runelite/api/events/ExperienceChanged.java
index a67323144d..8f72b53fe7 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/ExperienceChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ExperienceChanged.java
@@ -23,7 +23,7 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
import net.runelite.api.Skill;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/GameObjectsChanged.java b/runelite-api/src/main/java/net/runelite/api/events/GameObjectsChanged.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/GameObjectsChanged.java
rename to runelite-api/src/main/java/net/runelite/api/events/GameObjectsChanged.java
index 3e13b5f158..f5abaf6648 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/GameObjectsChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/GameObjectsChanged.java
@@ -22,7 +22,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
import net.runelite.api.GameObject;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/GameStateChanged.java b/runelite-api/src/main/java/net/runelite/api/events/GameStateChanged.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/GameStateChanged.java
rename to runelite-api/src/main/java/net/runelite/api/events/GameStateChanged.java
index d598a9ce80..72fb43cb3b 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/GameStateChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/GameStateChanged.java
@@ -22,7 +22,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
import net.runelite.api.GameState;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/GameTick.java b/runelite-api/src/main/java/net/runelite/api/events/GameTick.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/GameTick.java
rename to runelite-api/src/main/java/net/runelite/api/events/GameTick.java
index 3e330d9bbd..735e9d0f95 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/GameTick.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/GameTick.java
@@ -22,7 +22,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/MapRegionChanged.java b/runelite-api/src/main/java/net/runelite/api/events/MapRegionChanged.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/MapRegionChanged.java
rename to runelite-api/src/main/java/net/runelite/api/events/MapRegionChanged.java
index f14b0eac1c..9e93ea0afa 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/MapRegionChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/MapRegionChanged.java
@@ -22,7 +22,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/MenuEntryAdded.java b/runelite-api/src/main/java/net/runelite/api/events/MenuEntryAdded.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/MenuEntryAdded.java
rename to runelite-api/src/main/java/net/runelite/api/events/MenuEntryAdded.java
index 8f88b40e2e..c9f0ed945f 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/MenuEntryAdded.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/MenuEntryAdded.java
@@ -22,7 +22,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.AllArgsConstructor;
import lombok.Data;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/MenuOptionClicked.java b/runelite-api/src/main/java/net/runelite/api/events/MenuOptionClicked.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/MenuOptionClicked.java
rename to runelite-api/src/main/java/net/runelite/api/events/MenuOptionClicked.java
index 270b1d4c2a..ac2b43ca29 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/MenuOptionClicked.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/MenuOptionClicked.java
@@ -22,7 +22,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
import net.runelite.api.MenuAction;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/PlayerMenuOptionClicked.java b/runelite-api/src/main/java/net/runelite/api/events/PlayerMenuOptionClicked.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/PlayerMenuOptionClicked.java
rename to runelite-api/src/main/java/net/runelite/api/events/PlayerMenuOptionClicked.java
index 47eafe3097..f6695dae30 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/PlayerMenuOptionClicked.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/PlayerMenuOptionClicked.java
@@ -22,7 +22,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/PlayerMenuOptionsChanged.java b/runelite-api/src/main/java/net/runelite/api/events/PlayerMenuOptionsChanged.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/PlayerMenuOptionsChanged.java
rename to runelite-api/src/main/java/net/runelite/api/events/PlayerMenuOptionsChanged.java
index 2f2848bac5..f4823fa9a9 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/PlayerMenuOptionsChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/PlayerMenuOptionsChanged.java
@@ -22,7 +22,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/ProjectileMoved.java b/runelite-api/src/main/java/net/runelite/api/events/ProjectileMoved.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/ProjectileMoved.java
rename to runelite-api/src/main/java/net/runelite/api/events/ProjectileMoved.java
index 66a515a9ab..db30a5c0d2 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/ProjectileMoved.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ProjectileMoved.java
@@ -22,7 +22,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
import net.runelite.api.Point;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/ResizeableChanged.java b/runelite-api/src/main/java/net/runelite/api/events/ResizeableChanged.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/ResizeableChanged.java
rename to runelite-api/src/main/java/net/runelite/api/events/ResizeableChanged.java
index 6c0f287a0a..bfc569767b 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/ResizeableChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/ResizeableChanged.java
@@ -24,7 +24,7 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/SessionClose.java b/runelite-api/src/main/java/net/runelite/api/events/SessionClose.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/SessionClose.java
rename to runelite-api/src/main/java/net/runelite/api/events/SessionClose.java
index 928d95260e..af15c22b37 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/SessionClose.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/SessionClose.java
@@ -22,7 +22,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/SessionOpen.java b/runelite-api/src/main/java/net/runelite/api/events/SessionOpen.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/SessionOpen.java
rename to runelite-api/src/main/java/net/runelite/api/events/SessionOpen.java
index 4287353bd9..e9f297077d 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/SessionOpen.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/SessionOpen.java
@@ -22,7 +22,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/SetMessage.java b/runelite-api/src/main/java/net/runelite/api/events/SetMessage.java
similarity index 90%
rename from runelite-client/src/main/java/net/runelite/client/events/SetMessage.java
rename to runelite-api/src/main/java/net/runelite/api/events/SetMessage.java
index 1eafac515d..203b0a9cb1 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/SetMessage.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/SetMessage.java
@@ -1,4 +1,4 @@
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
import net.runelite.api.ChatMessageType;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/VarbitChanged.java b/runelite-api/src/main/java/net/runelite/api/events/VarbitChanged.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/VarbitChanged.java
rename to runelite-api/src/main/java/net/runelite/api/events/VarbitChanged.java
index daf8a2d3f2..d41c0d8052 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/VarbitChanged.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/VarbitChanged.java
@@ -24,7 +24,7 @@
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
diff --git a/runelite-client/src/main/java/net/runelite/client/events/WidgetMenuOptionClicked.java b/runelite-api/src/main/java/net/runelite/api/events/WidgetMenuOptionClicked.java
similarity index 97%
rename from runelite-client/src/main/java/net/runelite/client/events/WidgetMenuOptionClicked.java
rename to runelite-api/src/main/java/net/runelite/api/events/WidgetMenuOptionClicked.java
index 92f4411114..f9758be1c4 100644
--- a/runelite-client/src/main/java/net/runelite/client/events/WidgetMenuOptionClicked.java
+++ b/runelite-api/src/main/java/net/runelite/api/events/WidgetMenuOptionClicked.java
@@ -22,7 +22,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-package net.runelite.client.events;
+package net.runelite.api.events;
import lombok.Data;
import net.runelite.api.widgets.WidgetInfo;
diff --git a/runelite-client/src/main/java/net/runelite/client/account/SessionManager.java b/runelite-client/src/main/java/net/runelite/client/account/SessionManager.java
index a4ab814003..9aaa7fcfac 100644
--- a/runelite-client/src/main/java/net/runelite/client/account/SessionManager.java
+++ b/runelite-client/src/main/java/net/runelite/client/account/SessionManager.java
@@ -38,8 +38,8 @@ import lombok.Getter;
import lombok.extern.slf4j.Slf4j;
import net.runelite.client.RuneLite;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.SessionClose;
-import net.runelite.client.events.SessionOpen;
+import net.runelite.api.events.SessionClose;
+import net.runelite.api.events.SessionOpen;
import net.runelite.http.api.account.AccountClient;
@Singleton
diff --git a/runelite-client/src/main/java/net/runelite/client/chat/ChatMessageManager.java b/runelite-client/src/main/java/net/runelite/client/chat/ChatMessageManager.java
index 306187dfc3..41bbb52a90 100644
--- a/runelite-client/src/main/java/net/runelite/client/chat/ChatMessageManager.java
+++ b/runelite-client/src/main/java/net/runelite/client/chat/ChatMessageManager.java
@@ -46,8 +46,8 @@ import net.runelite.api.ChatMessageType;
import net.runelite.api.Client;
import net.runelite.api.MessageNode;
import net.runelite.api.Varbits;
-import net.runelite.client.events.ResizeableChanged;
-import net.runelite.client.events.VarbitChanged;
+import net.runelite.api.events.ResizeableChanged;
+import net.runelite.api.events.VarbitChanged;
import net.runelite.client.config.RuneLiteConfig;
@Slf4j
diff --git a/runelite-client/src/main/java/net/runelite/client/config/ConfigManager.java b/runelite-client/src/main/java/net/runelite/client/config/ConfigManager.java
index ba084cbe63..b22827da7d 100644
--- a/runelite-client/src/main/java/net/runelite/client/config/ConfigManager.java
+++ b/runelite-client/src/main/java/net/runelite/client/config/ConfigManager.java
@@ -47,7 +47,7 @@ import javax.inject.Singleton;
import lombok.extern.slf4j.Slf4j;
import net.runelite.client.RuneLite;
import net.runelite.client.account.AccountSession;
-import net.runelite.client.events.ConfigChanged;
+import net.runelite.api.events.ConfigChanged;
import net.runelite.client.plugins.PluginManager;
import net.runelite.http.api.config.ConfigClient;
import net.runelite.http.api.config.ConfigEntry;
diff --git a/runelite-client/src/main/java/net/runelite/client/game/DeathChecker.java b/runelite-client/src/main/java/net/runelite/client/game/DeathChecker.java
index a253de9ff7..a7341b7ee6 100644
--- a/runelite-client/src/main/java/net/runelite/client/game/DeathChecker.java
+++ b/runelite-client/src/main/java/net/runelite/client/game/DeathChecker.java
@@ -30,7 +30,7 @@ import lombok.extern.slf4j.Slf4j;
import net.runelite.api.Actor;
import net.runelite.api.Client;
import net.runelite.api.Player;
-import net.runelite.client.events.ActorDeath;
+import net.runelite.api.events.ActorDeath;
@Slf4j
public class DeathChecker
diff --git a/runelite-client/src/main/java/net/runelite/client/menus/MenuManager.java b/runelite-client/src/main/java/net/runelite/client/menus/MenuManager.java
index db079f566c..e7cdc35d37 100644
--- a/runelite-client/src/main/java/net/runelite/client/menus/MenuManager.java
+++ b/runelite-client/src/main/java/net/runelite/client/menus/MenuManager.java
@@ -41,11 +41,11 @@ import net.runelite.api.Client;
import net.runelite.api.MenuAction;
import net.runelite.api.MenuEntry;
import net.runelite.api.widgets.WidgetInfo;
-import net.runelite.client.events.WidgetMenuOptionClicked;
-import net.runelite.client.events.MenuEntryAdded;
-import net.runelite.client.events.MenuOptionClicked;
-import net.runelite.client.events.PlayerMenuOptionClicked;
-import net.runelite.client.events.PlayerMenuOptionsChanged;
+import net.runelite.api.events.WidgetMenuOptionClicked;
+import net.runelite.api.events.MenuEntryAdded;
+import net.runelite.api.events.MenuOptionClicked;
+import net.runelite.api.events.PlayerMenuOptionClicked;
+import net.runelite.api.events.PlayerMenuOptionsChanged;
@Singleton
@Slf4j
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/account/AccountPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/account/AccountPlugin.java
index bd0ccb0353..20a20bf432 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/account/AccountPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/account/AccountPlugin.java
@@ -37,8 +37,8 @@ import javax.inject.Inject;
import lombok.extern.slf4j.Slf4j;
import net.runelite.client.account.AccountSession;
import net.runelite.client.account.SessionManager;
-import net.runelite.client.events.SessionClose;
-import net.runelite.client.events.SessionOpen;
+import net.runelite.api.events.SessionClose;
+import net.runelite.api.events.SessionOpen;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.ui.ClientUI;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/aoewarnings/AoeWarningPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/aoewarnings/AoeWarningPlugin.java
index 8733bacd51..6c868e86ab 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/aoewarnings/AoeWarningPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/aoewarnings/AoeWarningPlugin.java
@@ -34,7 +34,7 @@ import javax.inject.Inject;
import net.runelite.api.Point;
import net.runelite.api.Projectile;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.ProjectileMoved;
+import net.runelite.api.events.ProjectileMoved;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.ui.overlay.Overlay;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/attackindicator/AttackIndicatorPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/attackindicator/AttackIndicatorPlugin.java
index 82a93cb99f..f1e095f9b3 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/attackindicator/AttackIndicatorPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/attackindicator/AttackIndicatorPlugin.java
@@ -44,9 +44,9 @@ import net.runelite.api.Varbits;
import net.runelite.api.widgets.Widget;
import net.runelite.api.widgets.WidgetInfo;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.ConfigChanged;
-import net.runelite.client.events.GameStateChanged;
-import net.runelite.client.events.VarbitChanged;
+import net.runelite.api.events.ConfigChanged;
+import net.runelite.api.events.GameStateChanged;
+import net.runelite.api.events.VarbitChanged;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.task.Schedule;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/bosstimer/BossTimersPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/bosstimer/BossTimersPlugin.java
index f394b913af..0e29f7b965 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/bosstimer/BossTimersPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/bosstimer/BossTimersPlugin.java
@@ -29,7 +29,7 @@ import com.google.common.eventbus.Subscribe;
import javax.inject.Inject;
import lombok.extern.slf4j.Slf4j;
import net.runelite.api.Actor;
-import net.runelite.client.events.ActorDeath;
+import net.runelite.api.events.ActorDeath;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.ui.overlay.infobox.InfoBoxManager;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/chatcommands/ChatCommandsPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/chatcommands/ChatCommandsPlugin.java
index d6bbcf1aee..f73ea9ceaa 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/chatcommands/ChatCommandsPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/chatcommands/ChatCommandsPlugin.java
@@ -43,9 +43,9 @@ import net.runelite.client.chat.ChatColorType;
import net.runelite.client.chat.ChatMessageBuilder;
import net.runelite.client.chat.ChatMessageManager;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.ConfigChanged;
-import net.runelite.client.events.GameStateChanged;
-import net.runelite.client.events.SetMessage;
+import net.runelite.api.events.ConfigChanged;
+import net.runelite.api.events.GameStateChanged;
+import net.runelite.api.events.SetMessage;
import net.runelite.client.game.ItemManager;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/clanchat/ClanChatPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/clanchat/ClanChatPlugin.java
index 5f2c3e8bb9..3f35768861 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/clanchat/ClanChatPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/clanchat/ClanChatPlugin.java
@@ -51,8 +51,8 @@ import net.runelite.api.IndexedSprite;
import net.runelite.api.widgets.Widget;
import net.runelite.api.widgets.WidgetInfo;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.GameStateChanged;
-import net.runelite.client.events.SetMessage;
+import net.runelite.api.events.GameStateChanged;
+import net.runelite.api.events.SetMessage;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.task.Schedule;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/examine/ExaminePlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/examine/ExaminePlugin.java
index d26007281e..7e99735192 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/examine/ExaminePlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/examine/ExaminePlugin.java
@@ -48,10 +48,10 @@ import net.runelite.client.chat.ChatColorType;
import net.runelite.client.chat.ChatMessageBuilder;
import net.runelite.client.chat.ChatMessageManager;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.ChatMessage;
-import net.runelite.client.events.ConfigChanged;
-import net.runelite.client.events.GameStateChanged;
-import net.runelite.client.events.MenuOptionClicked;
+import net.runelite.api.events.ChatMessage;
+import net.runelite.api.events.ConfigChanged;
+import net.runelite.api.events.GameStateChanged;
+import net.runelite.api.events.MenuOptionClicked;
import net.runelite.client.game.ItemManager;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingPlugin.java
index c5eb709e31..68a7c8cf14 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/fishing/FishingPlugin.java
@@ -36,8 +36,8 @@ import javax.inject.Inject;
import javax.inject.Singleton;
import net.runelite.api.ChatMessageType;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.ChatMessage;
-import net.runelite.client.events.ConfigChanged;
+import net.runelite.api.events.ChatMessage;
+import net.runelite.api.events.ConfigChanged;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.task.Schedule;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/hiscore/HiscorePlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/hiscore/HiscorePlugin.java
index 7ff8215771..9ee2a6d91d 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/hiscore/HiscorePlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/hiscore/HiscorePlugin.java
@@ -30,7 +30,7 @@ import java.util.concurrent.ScheduledExecutorService;
import javax.imageio.ImageIO;
import javax.inject.Inject;
import javax.swing.SwingUtilities;
-import net.runelite.client.events.PlayerMenuOptionClicked;
+import net.runelite.api.events.PlayerMenuOptionClicked;
import net.runelite.client.menus.MenuManager;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/hunter/HunterPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/hunter/HunterPlugin.java
index 2164276695..2ce24ccdae 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/hunter/HunterPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/hunter/HunterPlugin.java
@@ -48,9 +48,9 @@ import net.runelite.api.Point;
import net.runelite.api.queries.GameObjectQuery;
import net.runelite.api.queries.PlayerQuery;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.ConfigChanged;
-import net.runelite.client.events.GameObjectsChanged;
-import net.runelite.client.events.GameStateChanged;
+import net.runelite.api.events.ConfigChanged;
+import net.runelite.api.events.GameObjectsChanged;
+import net.runelite.api.events.GameStateChanged;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.task.Schedule;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/idlenotifier/IdleNotifierPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/idlenotifier/IdleNotifierPlugin.java
index 444b0904eb..0282c85848 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/idlenotifier/IdleNotifierPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/idlenotifier/IdleNotifierPlugin.java
@@ -102,8 +102,8 @@ import net.runelite.api.Player;
import net.runelite.api.Skill;
import net.runelite.client.Notifier;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.AnimationChanged;
-import net.runelite.client.events.GameStateChanged;
+import net.runelite.api.events.AnimationChanged;
+import net.runelite.api.events.GameStateChanged;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.task.Schedule;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/implings/ImplingsPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/implings/ImplingsPlugin.java
index 7b376e10f0..25fe919cd0 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/implings/ImplingsPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/implings/ImplingsPlugin.java
@@ -29,7 +29,7 @@ import com.google.inject.Binder;
import com.google.inject.Provides;
import javax.inject.Inject;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.ConfigChanged;
+import net.runelite.api.events.ConfigChanged;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.ui.overlay.Overlay;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/instancemap/InstanceMapOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/instancemap/InstanceMapOverlay.java
index a9abcaada7..1f671aeff1 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/instancemap/InstanceMapOverlay.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/instancemap/InstanceMapOverlay.java
@@ -43,8 +43,8 @@ import net.runelite.api.SceneTilePaint;
import net.runelite.api.SpritePixels;
import net.runelite.api.Tile;
import net.runelite.api.WallObject;
-import net.runelite.client.events.GameStateChanged;
-import net.runelite.client.events.MapRegionChanged;
+import net.runelite.api.events.GameStateChanged;
+import net.runelite.api.events.MapRegionChanged;
import static net.runelite.client.plugins.instancemap.PixelMaps.ALL;
import static net.runelite.client.plugins.instancemap.PixelMaps.BOTTOM;
import static net.runelite.client.plugins.instancemap.PixelMaps.BOTTOM_LEFT_CORNER;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/instancemap/InstanceMapPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/instancemap/InstanceMapPlugin.java
index eace4dcab0..09b6d5d3de 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/instancemap/InstanceMapPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/instancemap/InstanceMapPlugin.java
@@ -31,10 +31,10 @@ import javax.inject.Inject;
import net.runelite.api.widgets.WidgetInfo;
import static net.runelite.api.widgets.WidgetInfo.WORLD_MAP;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.ConfigChanged;
-import net.runelite.client.events.GameStateChanged;
-import net.runelite.client.events.MapRegionChanged;
-import net.runelite.client.events.WidgetMenuOptionClicked;
+import net.runelite.api.events.ConfigChanged;
+import net.runelite.api.events.GameStateChanged;
+import net.runelite.api.events.MapRegionChanged;
+import net.runelite.api.events.WidgetMenuOptionClicked;
import net.runelite.client.menus.MenuManager;
import net.runelite.client.menus.WidgetMenuOption;
import net.runelite.client.plugins.Plugin;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/prayflick/PrayerFlickPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/prayflick/PrayerFlickPlugin.java
index a2766de774..7c6cc157da 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/prayflick/PrayerFlickPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/prayflick/PrayerFlickPlugin.java
@@ -29,7 +29,7 @@ import com.google.inject.Binder;
import com.google.inject.Provides;
import javax.inject.Inject;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.GameTick;
+import net.runelite.api.events.GameTick;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.ui.overlay.Overlay;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/rememberusername/RememberUsernamePlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/rememberusername/RememberUsernamePlugin.java
index 47930aacf9..8e5c05a693 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/rememberusername/RememberUsernamePlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/rememberusername/RememberUsernamePlugin.java
@@ -30,7 +30,7 @@ import javax.inject.Inject;
import net.runelite.api.Client;
import net.runelite.api.GameState;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.GameStateChanged;
+import net.runelite.api.events.GameStateChanged;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/runecraft/RunecraftPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/runecraft/RunecraftPlugin.java
index e93fee0623..64a04542dc 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/runecraft/RunecraftPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/runecraft/RunecraftPlugin.java
@@ -34,7 +34,7 @@ import java.util.regex.Pattern;
import javax.inject.Inject;
import net.runelite.api.ChatMessageType;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.ChatMessage;
+import net.runelite.api.events.ChatMessage;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.ui.overlay.Overlay;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java
index 73596c94f1..b240033455 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/slayer/SlayerPlugin.java
@@ -42,9 +42,9 @@ import net.runelite.api.ItemID;
import net.runelite.api.widgets.Widget;
import net.runelite.api.widgets.WidgetInfo;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.ChatMessage;
-import net.runelite.client.events.ExperienceChanged;
-import net.runelite.client.events.GameStateChanged;
+import net.runelite.api.events.ChatMessage;
+import net.runelite.api.events.ExperienceChanged;
+import net.runelite.api.events.GameStateChanged;
import net.runelite.client.game.ItemManager;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/specorb/SpecOrbOverlay.java b/runelite-client/src/main/java/net/runelite/client/plugins/specorb/SpecOrbOverlay.java
index 3355c2a3db..a64a93cccd 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/specorb/SpecOrbOverlay.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/specorb/SpecOrbOverlay.java
@@ -34,8 +34,8 @@ import net.runelite.api.Point;
import net.runelite.api.Varbits;
import net.runelite.api.widgets.Widget;
import net.runelite.api.widgets.WidgetInfo;
-import net.runelite.client.events.GameTick;
-import net.runelite.client.events.VarbitChanged;
+import net.runelite.api.events.GameTick;
+import net.runelite.api.events.VarbitChanged;
import net.runelite.client.ui.overlay.Overlay;
import net.runelite.client.ui.overlay.OverlayPosition;
import net.runelite.client.ui.overlay.OverlayUtil;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/specorb/SpecOrbPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/specorb/SpecOrbPlugin.java
index 55c1577bdd..773893029c 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/specorb/SpecOrbPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/specorb/SpecOrbPlugin.java
@@ -28,8 +28,8 @@ import com.google.common.eventbus.Subscribe;
import com.google.inject.Binder;
import com.google.inject.Provides;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.GameTick;
-import net.runelite.client.events.VarbitChanged;
+import net.runelite.api.events.GameTick;
+import net.runelite.api.events.VarbitChanged;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.ui.overlay.Overlay;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/timers/TimersPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/timers/TimersPlugin.java
index 12098e141c..51c692375d 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/timers/TimersPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/timers/TimersPlugin.java
@@ -41,9 +41,8 @@ import javax.inject.Inject;
import net.runelite.api.ChatMessageType;
import net.runelite.api.ItemID;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.ChatMessage;
-import net.runelite.client.events.ConfigChanged;
-import net.runelite.client.events.MenuOptionClicked;
+import net.runelite.api.events.ChatMessage;
+import net.runelite.api.events.ConfigChanged;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.ui.overlay.infobox.InfoBoxManager;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/volcanicmine/VolcanicMinePlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/volcanicmine/VolcanicMinePlugin.java
index 5165935a27..c692bf1d41 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/volcanicmine/VolcanicMinePlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/volcanicmine/VolcanicMinePlugin.java
@@ -57,7 +57,7 @@ import net.runelite.api.widgets.Widget;
import net.runelite.api.widgets.WidgetInfo;
import net.runelite.client.Notifier;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.ConfigChanged;
+import net.runelite.api.events.ConfigChanged;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.task.Schedule;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/woodcutting/WoodcuttingPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/woodcutting/WoodcuttingPlugin.java
index f27f017fb6..d196cf5cd3 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/woodcutting/WoodcuttingPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/woodcutting/WoodcuttingPlugin.java
@@ -34,7 +34,7 @@ import javax.inject.Inject;
import net.runelite.api.ChatMessageType;
import net.runelite.client.Notifier;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.ChatMessage;
+import net.runelite.api.events.ChatMessage;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.task.Schedule;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/xpglobes/XpGlobesPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/xpglobes/XpGlobesPlugin.java
index 94f7fde0b9..f8c3f9e70e 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/xpglobes/XpGlobesPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/xpglobes/XpGlobesPlugin.java
@@ -36,8 +36,8 @@ import net.runelite.api.Client;
import net.runelite.api.Experience;
import net.runelite.api.Skill;
import net.runelite.client.config.ConfigManager;
-import net.runelite.client.events.ExperienceChanged;
-import net.runelite.client.events.GameStateChanged;
+import net.runelite.api.events.ExperienceChanged;
+import net.runelite.api.events.GameStateChanged;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.client.ui.overlay.Overlay;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpTrackerPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpTrackerPlugin.java
index 0cc1d3ec91..a36b89ecbc 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpTrackerPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/xptracker/XpTrackerPlugin.java
@@ -28,8 +28,8 @@ import com.google.common.eventbus.Subscribe;
import javax.imageio.ImageIO;
import net.runelite.api.Client;
import net.runelite.api.Skill;
-import net.runelite.client.events.ExperienceChanged;
-import net.runelite.client.events.GameStateChanged;
+import net.runelite.api.events.ExperienceChanged;
+import net.runelite.api.events.GameStateChanged;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.ui.ClientUI;
import net.runelite.client.ui.NavigationButton;
diff --git a/runelite-client/src/main/java/net/runelite/client/plugins/xtea/XteaPlugin.java b/runelite-client/src/main/java/net/runelite/client/plugins/xtea/XteaPlugin.java
index 253d459a33..c1d017c61e 100644
--- a/runelite-client/src/main/java/net/runelite/client/plugins/xtea/XteaPlugin.java
+++ b/runelite-client/src/main/java/net/runelite/client/plugins/xtea/XteaPlugin.java
@@ -32,7 +32,7 @@ import java.util.concurrent.ScheduledExecutorService;
import javax.inject.Inject;
import lombok.extern.slf4j.Slf4j;
import net.runelite.api.Client;
-import net.runelite.client.events.MapRegionChanged;
+import net.runelite.api.events.MapRegionChanged;
import net.runelite.client.plugins.Plugin;
import net.runelite.client.plugins.PluginDescriptor;
import net.runelite.http.api.xtea.XteaClient;
diff --git a/runelite-client/src/main/java/net/runelite/client/ui/overlay/OverlayRenderer.java b/runelite-client/src/main/java/net/runelite/client/ui/overlay/OverlayRenderer.java
index 1acbff793a..b3db2ff6c9 100644
--- a/runelite-client/src/main/java/net/runelite/client/ui/overlay/OverlayRenderer.java
+++ b/runelite-client/src/main/java/net/runelite/client/ui/overlay/OverlayRenderer.java
@@ -43,9 +43,9 @@ import net.runelite.api.Client;
import net.runelite.api.GameState;
import net.runelite.api.widgets.Widget;
import net.runelite.api.widgets.WidgetInfo;
-import net.runelite.client.events.GameStateChanged;
+import net.runelite.api.events.GameStateChanged;
import net.runelite.client.events.PluginChanged;
-import net.runelite.client.events.ResizeableChanged;
+import net.runelite.api.events.ResizeableChanged;
import net.runelite.client.plugins.PluginManager;
import net.runelite.client.ui.overlay.infobox.InfoBoxOverlay;
import net.runelite.client.ui.overlay.tooltip.TooltipOverlay;
diff --git a/runelite-client/src/test/java/net/runelite/client/plugins/slayer/SlayerPluginTest.java b/runelite-client/src/test/java/net/runelite/client/plugins/slayer/SlayerPluginTest.java
index 342c93dca4..b6300a2268 100644
--- a/runelite-client/src/test/java/net/runelite/client/plugins/slayer/SlayerPluginTest.java
+++ b/runelite-client/src/test/java/net/runelite/client/plugins/slayer/SlayerPluginTest.java
@@ -30,7 +30,7 @@ import com.google.inject.testing.fieldbinder.BoundFieldModule;
import javax.inject.Inject;
import static net.runelite.api.ChatMessageType.SERVER;
import net.runelite.api.Client;
-import net.runelite.client.events.ChatMessage;
+import net.runelite.api.events.ChatMessage;
import net.runelite.client.game.ItemManager;
import net.runelite.client.ui.overlay.infobox.InfoBoxManager;
import static org.junit.Assert.assertEquals;