From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Fri, 18 Dec 2020 21:21:48 -0600
Subject: [PATCH] Fix javadoc warnings (missing @param and @return)


diff --git a/src/main/java/com/destroystokyo/paper/ClientOption.java b/src/main/java/com/destroystokyo/paper/ClientOption.java
index cedb51f9f3a9150035c2b44970a096448c441dd9..130fab58e6d448ec08667e2a6c13fc78121f802b 100644
--- a/src/main/java/com/destroystokyo/paper/ClientOption.java
+++ b/src/main/java/com/destroystokyo/paper/ClientOption.java
@@ -6,6 +6,11 @@ import org.jetbrains.annotations.NotNull;
 
 import org.bukkit.inventory.MainHand;
 
+/**
+ * Represents a client option
+ *
+ * @param <T> Client option type
+ */
 public final class ClientOption<T> {
 
     public static final ClientOption<SkinParts> SKIN_PARTS = new ClientOption<>(SkinParts.class);
@@ -21,6 +26,11 @@ public final class ClientOption<T> {
         this.type = type;
     }
 
+    /**
+     * Get the option's type
+     *
+     * @return Option's type
+     */
     @NotNull
     public Class<T> getType() {
         return type;
diff --git a/src/main/java/com/destroystokyo/paper/MaterialSetTag.java b/src/main/java/com/destroystokyo/paper/MaterialSetTag.java
index a02a02aa0c87e0f0ed9e509e4dcab01565b3d92a..6c99f4b4960f8f982557bb42717a2868d57ce4b7 100644
--- a/src/main/java/com/destroystokyo/paper/MaterialSetTag.java
+++ b/src/main/java/com/destroystokyo/paper/MaterialSetTag.java
@@ -21,10 +21,14 @@ import java.util.stream.Stream;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Material set tag
+ */
 public class MaterialSetTag extends BaseTag<Material, MaterialSetTag> {
 
     /**
      * @deprecated Use NamespacedKey version of constructor
+     * @param filter Filter predicate
      */
     @Deprecated
     public MaterialSetTag(@NotNull Predicate<Material> filter) {
@@ -33,6 +37,7 @@ public class MaterialSetTag extends BaseTag<Material, MaterialSetTag> {
 
     /**
      * @deprecated Use NamespacedKey version of constructor
+     * @param materials Materials to include
      */
     @Deprecated
     public MaterialSetTag(@NotNull Collection<Material> materials) {
@@ -41,6 +46,7 @@ public class MaterialSetTag extends BaseTag<Material, MaterialSetTag> {
 
     /**
      * @deprecated Use NamespacedKey version of constructor
+     * @param materials Materials to include
      */
     @Deprecated
     public MaterialSetTag(@NotNull Material... materials) {
diff --git a/src/main/java/com/destroystokyo/paper/SkinParts.java b/src/main/java/com/destroystokyo/paper/SkinParts.java
index 4a0c39405d4fbed457787e3c6ded4cc6591bc8c2..9b269a51928bc5cc35431855c79bd33ce9031bf1 100644
--- a/src/main/java/com/destroystokyo/paper/SkinParts.java
+++ b/src/main/java/com/destroystokyo/paper/SkinParts.java
@@ -1,5 +1,8 @@
 package com.destroystokyo.paper;
 
+/**
+ * Skin parts
+ */
 public interface SkinParts {
 
     boolean hasCapeEnabled();
diff --git a/src/main/java/com/destroystokyo/paper/block/TargetBlockInfo.java b/src/main/java/com/destroystokyo/paper/block/TargetBlockInfo.java
index 18a96dbb01d3b34476652264b2d6be3782a154ec..1bae8e5df78bb88deec212eedf855cc69bfbe913 100644
--- a/src/main/java/com/destroystokyo/paper/block/TargetBlockInfo.java
+++ b/src/main/java/com/destroystokyo/paper/block/TargetBlockInfo.java
@@ -46,6 +46,9 @@ public class TargetBlockInfo {
         return block.getRelative(blockFace);
     }
 
+    /**
+     * Fluid mode
+     */
     public enum FluidMode {
         NEVER,
         SOURCE_ONLY,
diff --git a/src/main/java/com/destroystokyo/paper/entity/RangedEntity.java b/src/main/java/com/destroystokyo/paper/entity/RangedEntity.java
index f2e3233a3d1744e32fb76d3731b9858ef0067e30..e66e8b28c673216dd1587582f44c26f6ca877c23 100644
--- a/src/main/java/com/destroystokyo/paper/entity/RangedEntity.java
+++ b/src/main/java/com/destroystokyo/paper/entity/RangedEntity.java
@@ -4,6 +4,9 @@ import org.bukkit.entity.LivingEntity;
 import org.bukkit.entity.Mob;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Represents an entity with ranged attacks
+ */
 public interface RangedEntity extends Mob {
     /**
      * Attack the specified entity using a ranged attack.
diff --git a/src/main/java/com/destroystokyo/paper/event/block/TNTPrimeEvent.java b/src/main/java/com/destroystokyo/paper/event/block/TNTPrimeEvent.java
index 73dabb82c7fbea3f0cccade0a2944b11a80ede06..b065f8f8af6ed9cc7b1c8a671488a6424662d14c 100644
--- a/src/main/java/com/destroystokyo/paper/event/block/TNTPrimeEvent.java
+++ b/src/main/java/com/destroystokyo/paper/event/block/TNTPrimeEvent.java
@@ -83,6 +83,9 @@ public class TNTPrimeEvent extends BlockEvent implements Cancellable {
         return handlers;
     }
 
+    /**
+     * TnT prime reason
+     */
     public enum PrimeReason {
         /**
          * When TNT prime was caused by other explosion (chain reaction)
diff --git a/src/main/java/com/destroystokyo/paper/event/entity/EndermanEscapeEvent.java b/src/main/java/com/destroystokyo/paper/event/entity/EndermanEscapeEvent.java
index 806112a8b5a7ce31166675f5b074ceaf42e364b6..a2635e3b76780a51f87f6329b0db3a08dd08b0e6 100644
--- a/src/main/java/com/destroystokyo/paper/event/entity/EndermanEscapeEvent.java
+++ b/src/main/java/com/destroystokyo/paper/event/entity/EndermanEscapeEvent.java
@@ -8,6 +8,9 @@ import org.bukkit.event.HandlerList;
 import org.bukkit.event.entity.EntityEvent;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Called when an enderman tries to teleport to escape
+ */
 public class EndermanEscapeEvent extends EntityEvent implements Cancellable {
     @NotNull private final Reason reason;
 
@@ -62,6 +65,9 @@ public class EndermanEscapeEvent extends EntityEvent implements Cancellable {
         cancelled = cancel;
     }
 
+    /**
+     * Escape reason
+     */
     public enum Reason {
         /**
          * The enderman has stopped attacking and ran away
diff --git a/src/main/java/com/destroystokyo/paper/event/entity/EntityTransformedEvent.java b/src/main/java/com/destroystokyo/paper/event/entity/EntityTransformedEvent.java
index 12194f1fc7f03ca6785904b6187b3dfd03b16461..e974323d0193e6b5a6fe43979c6c24d78107a5cc 100644
--- a/src/main/java/com/destroystokyo/paper/event/entity/EntityTransformedEvent.java
+++ b/src/main/java/com/destroystokyo/paper/event/entity/EntityTransformedEvent.java
@@ -66,6 +66,9 @@ public class EntityTransformedEvent extends EntityEvent implements Cancellable {
         cancelled = cancel;
     }
 
+    /**
+     * Transformed reason
+     */
     public enum TransformedReason {
         /**
          * When a zombie drowns
diff --git a/src/main/java/com/destroystokyo/paper/event/entity/WitchReadyPotionEvent.java b/src/main/java/com/destroystokyo/paper/event/entity/WitchReadyPotionEvent.java
index 5351b523defa054ba56ae3fb591029283ca7510d..f00594fba37c8b6264f940c84ed5c40c09879d2f 100644
--- a/src/main/java/com/destroystokyo/paper/event/entity/WitchReadyPotionEvent.java
+++ b/src/main/java/com/destroystokyo/paper/event/entity/WitchReadyPotionEvent.java
@@ -9,6 +9,9 @@ import org.bukkit.inventory.ItemStack;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Called when a witch prepares a potion
+ */
 public class WitchReadyPotionEvent extends EntityEvent implements Cancellable {
     private ItemStack potion;
 
diff --git a/src/main/java/com/destroystokyo/paper/event/executor/MethodHandleEventExecutor.java b/src/main/java/com/destroystokyo/paper/event/executor/MethodHandleEventExecutor.java
index 5b28e9b1daba7834af67dbc193dd656bedd9a994..dbda663489e82b89646975b56462c4ff38a5fde9 100644
--- a/src/main/java/com/destroystokyo/paper/event/executor/MethodHandleEventExecutor.java
+++ b/src/main/java/com/destroystokyo/paper/event/executor/MethodHandleEventExecutor.java
@@ -11,6 +11,9 @@ import org.bukkit.event.Listener;
 import org.bukkit.plugin.EventExecutor;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Method handle event executor
+ */
 public class MethodHandleEventExecutor implements EventExecutor {
     private final Class<? extends Event> eventClass;
     private final MethodHandle handle;
diff --git a/src/main/java/com/destroystokyo/paper/event/executor/StaticMethodHandleEventExecutor.java b/src/main/java/com/destroystokyo/paper/event/executor/StaticMethodHandleEventExecutor.java
index c83672427324bd068ed52916f700b68446a226f6..d28f8f0fb6dcf34453a75af9e9efd18a89b2b94f 100644
--- a/src/main/java/com/destroystokyo/paper/event/executor/StaticMethodHandleEventExecutor.java
+++ b/src/main/java/com/destroystokyo/paper/event/executor/StaticMethodHandleEventExecutor.java
@@ -15,6 +15,9 @@ import org.bukkit.event.Listener;
 import org.bukkit.plugin.EventExecutor;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Static method handle event executor
+ */
 public class StaticMethodHandleEventExecutor implements EventExecutor {
     private final Class<? extends Event> eventClass;
     private final MethodHandle handle;
diff --git a/src/main/java/com/destroystokyo/paper/event/executor/asm/ASMEventExecutorGenerator.java b/src/main/java/com/destroystokyo/paper/event/executor/asm/ASMEventExecutorGenerator.java
index b6e7d8ee8d903ebf975d60bec0e08603d9a49fdb..55770ba8a2461c782f311aeb8abc79ec5f53ea81 100644
--- a/src/main/java/com/destroystokyo/paper/event/executor/asm/ASMEventExecutorGenerator.java
+++ b/src/main/java/com/destroystokyo/paper/event/executor/asm/ASMEventExecutorGenerator.java
@@ -11,6 +11,9 @@ import org.objectweb.asm.commons.GeneratorAdapter;
 
 import static org.objectweb.asm.Opcodes.*;
 
+/**
+ * ASM event executor generator
+ */
 public class ASMEventExecutorGenerator {
     @NotNull
     public static byte[] generateEventExecutor(@NotNull Method m, @NotNull String name) {
diff --git a/src/main/java/com/destroystokyo/paper/event/executor/asm/ClassDefiner.java b/src/main/java/com/destroystokyo/paper/event/executor/asm/ClassDefiner.java
index f79685b48bb581277a6891927988b6f7a4389dc4..75810a098791b5f758a3fbb212d80643b1cb505b 100644
--- a/src/main/java/com/destroystokyo/paper/event/executor/asm/ClassDefiner.java
+++ b/src/main/java/com/destroystokyo/paper/event/executor/asm/ClassDefiner.java
@@ -2,6 +2,9 @@ package com.destroystokyo.paper.event.executor.asm;
 
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Class definer
+ */
 public interface ClassDefiner {
 
     /**
diff --git a/src/main/java/com/destroystokyo/paper/event/executor/asm/SafeClassDefiner.java b/src/main/java/com/destroystokyo/paper/event/executor/asm/SafeClassDefiner.java
index ac99477e9f2c08041aeff31abc1d1edee58d0a67..d2bd9211046dea646f0c0954a932859ba1d0fb15 100644
--- a/src/main/java/com/destroystokyo/paper/event/executor/asm/SafeClassDefiner.java
+++ b/src/main/java/com/destroystokyo/paper/event/executor/asm/SafeClassDefiner.java
@@ -9,6 +9,9 @@ import com.google.common.collect.MapMaker;
 import org.jetbrains.annotations.NotNull;
 import org.objectweb.asm.Type;
 
+/**
+ * Safe class definer
+ */
 public class SafeClassDefiner implements ClassDefiner {
     /* default */ static final SafeClassDefiner INSTANCE = new SafeClassDefiner();
 
diff --git a/src/main/java/com/destroystokyo/paper/event/player/PlayerArmorChangeEvent.java b/src/main/java/com/destroystokyo/paper/event/player/PlayerArmorChangeEvent.java
index e406ce639a2e88b78f82f25e71678a669d0a958b..4cc1012c33c6f76255ac075ace1d8ee638091eed 100644
--- a/src/main/java/com/destroystokyo/paper/event/player/PlayerArmorChangeEvent.java
+++ b/src/main/java/com/destroystokyo/paper/event/player/PlayerArmorChangeEvent.java
@@ -80,6 +80,9 @@ public class PlayerArmorChangeEvent extends PlayerEvent {
         return HANDLERS;
     }
 
+    /**
+     * Armor slot type
+     */
     public enum SlotType {
         HEAD(NETHERITE_HELMET, DIAMOND_HELMET, GOLDEN_HELMET, IRON_HELMET, CHAINMAIL_HELMET, LEATHER_HELMET, CARVED_PUMPKIN, PLAYER_HEAD, SKELETON_SKULL, ZOMBIE_HEAD, CREEPER_HEAD, WITHER_SKELETON_SKULL, TURTLE_HELMET),
         CHEST(NETHERITE_CHESTPLATE, DIAMOND_CHESTPLATE, GOLDEN_CHESTPLATE, IRON_CHESTPLATE, CHAINMAIL_CHESTPLATE, LEATHER_CHESTPLATE, ELYTRA),
diff --git a/src/main/java/com/destroystokyo/paper/event/player/PlayerConnectionCloseEvent.java b/src/main/java/com/destroystokyo/paper/event/player/PlayerConnectionCloseEvent.java
index 12c1c6fe9dc8dc5f5faf6dcf99f6857219ef22b8..1f623010d3eddc2bee8f4b8fb410a9509a57b5ae 100644
--- a/src/main/java/com/destroystokyo/paper/event/player/PlayerConnectionCloseEvent.java
+++ b/src/main/java/com/destroystokyo/paper/event/player/PlayerConnectionCloseEvent.java
@@ -59,7 +59,9 @@ public class PlayerConnectionCloseEvent extends Event {
     }
 
     /**
-     * Returns the {@code UUID} of the player disconnecting.
+     * Get the {@code UUID} of the player disconnecting.
+     *
+     * @return the {@code UUID} of the player disconnecting
      */
     @NotNull
     public UUID getPlayerUniqueId() {
@@ -67,7 +69,9 @@ public class PlayerConnectionCloseEvent extends Event {
     }
 
     /**
-     * Returns the name of the player disconnecting.
+     * Get the name of the player disconnecting.
+     *
+     * @return the name of the player disconnecting
      */
     @NotNull
     public String getPlayerName() {
@@ -75,7 +79,9 @@ public class PlayerConnectionCloseEvent extends Event {
     }
 
     /**
-     * Returns the player's IP address.
+     * Get the player's IP address.
+     *
+     * @return the player's IP address
      */
     @NotNull
     public InetAddress getIpAddress() {
diff --git a/src/main/java/com/destroystokyo/paper/event/player/PlayerUseUnknownEntityEvent.java b/src/main/java/com/destroystokyo/paper/event/player/PlayerUseUnknownEntityEvent.java
index 09cfdf48ead8f03f3497646537292174241b0868..20f8201d2278f6fcac38913638510f33b0750b28 100644
--- a/src/main/java/com/destroystokyo/paper/event/player/PlayerUseUnknownEntityEvent.java
+++ b/src/main/java/com/destroystokyo/paper/event/player/PlayerUseUnknownEntityEvent.java
@@ -6,6 +6,9 @@ import org.bukkit.event.player.PlayerEvent;
 import org.bukkit.inventory.EquipmentSlot;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Called when a player uses (interacts with) an unknown entity
+ */
 public class PlayerUseUnknownEntityEvent extends PlayerEvent {
 
     private static final HandlerList handlers = new HandlerList();
diff --git a/src/main/java/com/destroystokyo/paper/event/server/GS4QueryEvent.java b/src/main/java/com/destroystokyo/paper/event/server/GS4QueryEvent.java
index 77a19995f6792a182c5a43d6714e7bda0f42df5b..cb43359e012630b3126564c068d81e9b20845a80 100644
--- a/src/main/java/com/destroystokyo/paper/event/server/GS4QueryEvent.java
+++ b/src/main/java/com/destroystokyo/paper/event/server/GS4QueryEvent.java
@@ -105,6 +105,9 @@ public final class GS4QueryEvent extends Event {
         ;
     }
 
+    /**
+     * Query response
+     */
     public final static class QueryResponse {
         private final String motd;
         private final String gameVersion;
diff --git a/src/main/java/com/destroystokyo/paper/event/server/ServerTickStartEvent.java b/src/main/java/com/destroystokyo/paper/event/server/ServerTickStartEvent.java
index eac85f1f49088bb71afb01eff4d5f53887306461..3ae058eb9433885920715408ebbe303d02f99c47 100644
--- a/src/main/java/com/destroystokyo/paper/event/server/ServerTickStartEvent.java
+++ b/src/main/java/com/destroystokyo/paper/event/server/ServerTickStartEvent.java
@@ -4,6 +4,9 @@ import org.bukkit.event.Event;
 import org.bukkit.event.HandlerList;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Called at the beginning of the server tick
+ */
 public class ServerTickStartEvent extends Event {
 
     private static final HandlerList handlers = new HandlerList();
diff --git a/src/main/java/com/destroystokyo/paper/inventory/meta/ArmorStandMeta.java b/src/main/java/com/destroystokyo/paper/inventory/meta/ArmorStandMeta.java
index 7e4acfff16db80a75e1ff2fee1972b16955b0918..333812f322f1f0a06d654581103aeb0123daef60 100644
--- a/src/main/java/com/destroystokyo/paper/inventory/meta/ArmorStandMeta.java
+++ b/src/main/java/com/destroystokyo/paper/inventory/meta/ArmorStandMeta.java
@@ -2,6 +2,9 @@ package com.destroystokyo.paper.inventory.meta;
 
 import org.bukkit.inventory.meta.ItemMeta;
 
+/**
+ * Armor stand meta
+ */
 public interface ArmorStandMeta extends ItemMeta {
 
     /**
diff --git a/src/main/java/com/destroystokyo/paper/loottable/LootableInventoryReplenishEvent.java b/src/main/java/com/destroystokyo/paper/loottable/LootableInventoryReplenishEvent.java
index fd184f13f5e8ee5cf829fff4f44696e1f760430b..302059e9fc048a63fd9cd2e1ed5aa27ef5811637 100644
--- a/src/main/java/com/destroystokyo/paper/loottable/LootableInventoryReplenishEvent.java
+++ b/src/main/java/com/destroystokyo/paper/loottable/LootableInventoryReplenishEvent.java
@@ -6,6 +6,9 @@ import org.bukkit.event.HandlerList;
 import org.bukkit.event.player.PlayerEvent;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Called when a lootable inventory replenishes it's contents
+ */
 public class LootableInventoryReplenishEvent extends PlayerEvent implements Cancellable {
     @NotNull private final LootableInventory inventory;
 
diff --git a/src/main/java/com/destroystokyo/paper/util/SneakyThrow.java b/src/main/java/com/destroystokyo/paper/util/SneakyThrow.java
index 9db0056ab94145819628b3ad8d8d26130d117fcf..680410d8404a6d3b0ac91aa5fc4cd9d7f5c8fa93 100644
--- a/src/main/java/com/destroystokyo/paper/util/SneakyThrow.java
+++ b/src/main/java/com/destroystokyo/paper/util/SneakyThrow.java
@@ -2,6 +2,9 @@ package com.destroystokyo.paper.util;
 
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Sneaky sneaky
+ */
 public class SneakyThrow {
 
     public static void sneaky(@NotNull Throwable exception) {
diff --git a/src/main/java/com/destroystokyo/paper/util/VersionFetcher.java b/src/main/java/com/destroystokyo/paper/util/VersionFetcher.java
index a736d7bcdc5861a01b66ba36158db1c716339346..4825c9ca2191d3bf1440b986827fc32e230a3280 100644
--- a/src/main/java/com/destroystokyo/paper/util/VersionFetcher.java
+++ b/src/main/java/com/destroystokyo/paper/util/VersionFetcher.java
@@ -5,6 +5,9 @@ import net.kyori.adventure.text.format.NamedTextColor;
 import org.bukkit.Bukkit;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Version fetcher
+ */
 public interface VersionFetcher {
     /**
      * Amount of time to cache results for in milliseconds
@@ -26,6 +29,9 @@ public interface VersionFetcher {
     @NotNull
     Component getVersionMessage(@NotNull String serverVersion);
 
+    /**
+     * Dummy version fetcher
+     */
     class DummyVersionFetcher implements VersionFetcher {
 
         @Override
diff --git a/src/main/java/com/destroystokyo/paper/utils/CachedSizeConcurrentLinkedQueue.java b/src/main/java/com/destroystokyo/paper/utils/CachedSizeConcurrentLinkedQueue.java
index 5bb677ce585b856b3d3e589e29786a29619c56a7..613f00fa387dcc5af3191e550dea9d4d76fda02f 100644
--- a/src/main/java/com/destroystokyo/paper/utils/CachedSizeConcurrentLinkedQueue.java
+++ b/src/main/java/com/destroystokyo/paper/utils/CachedSizeConcurrentLinkedQueue.java
@@ -5,6 +5,11 @@ import java.util.concurrent.atomic.LongAdder;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Cached size concurrent linked queue
+ *
+ * @param <E> Element type
+ */
 public class CachedSizeConcurrentLinkedQueue<E> extends ConcurrentLinkedQueue<E> {
     private final LongAdder cachedSize = new LongAdder();
 
diff --git a/src/main/java/io/papermc/paper/inventory/ItemRarity.java b/src/main/java/io/papermc/paper/inventory/ItemRarity.java
index 74ef8395cc040ce488c2acaa416db20272cc2734..b974627a415cd6897b245275e953cc907a5929d8 100644
--- a/src/main/java/io/papermc/paper/inventory/ItemRarity.java
+++ b/src/main/java/io/papermc/paper/inventory/ItemRarity.java
@@ -19,7 +19,7 @@ public enum ItemRarity {
 
     /**
      * Gets the color formatting associated with the rarity.
-     * @return
+     * @return TextColor
      */
     @NotNull
     public TextColor getColor() {
diff --git a/src/main/java/io/papermc/paper/world/MoonPhase.java b/src/main/java/io/papermc/paper/world/MoonPhase.java
index df05153397b42930cd53d37b30824c7e5f008f7e..ebf70fea04a9d37aa5f2ad8e7d6cef73cd3a4541 100644
--- a/src/main/java/io/papermc/paper/world/MoonPhase.java
+++ b/src/main/java/io/papermc/paper/world/MoonPhase.java
@@ -5,6 +5,9 @@ import org.jetbrains.annotations.NotNull;
 import java.util.HashMap;
 import java.util.Map;
 
+/**
+ * Moon phase
+ */
 public enum MoonPhase {
     FULL_MOON(0L),
     WANING_GIBBOUS(1L),
diff --git a/src/main/java/org/bukkit/Fluid.java b/src/main/java/org/bukkit/Fluid.java
index 525ede42137cc27cf20cf713478e85292455676e..a0279fcbfc76ad97a61fc191424e876d517acb46 100644
--- a/src/main/java/org/bukkit/Fluid.java
+++ b/src/main/java/org/bukkit/Fluid.java
@@ -3,6 +3,9 @@ package org.bukkit;
 import java.util.Locale;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Represents a fluid
+ */
 public enum Fluid implements Keyed {
 
     WATER,
diff --git a/src/main/java/org/bukkit/Nameable.java b/src/main/java/org/bukkit/Nameable.java
index 2acdf2a6d3955923c721222b9da784f3278f6418..737c3b053060e38f6776a5a508948cc300bbe6f4 100644
--- a/src/main/java/org/bukkit/Nameable.java
+++ b/src/main/java/org/bukkit/Nameable.java
@@ -2,6 +2,9 @@ package org.bukkit;
 
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Represents something that can be named
+ */
 public interface Nameable {
 
     // Paper start
diff --git a/src/main/java/org/bukkit/OfflinePlayer.java b/src/main/java/org/bukkit/OfflinePlayer.java
index 3afd5f5c0208a4ee93b5dbfc2aab2b9d2e8a7544..7838731e0e16bdccfb79e74ceb64148f7c52db79 100644
--- a/src/main/java/org/bukkit/OfflinePlayer.java
+++ b/src/main/java/org/bukkit/OfflinePlayer.java
@@ -9,6 +9,9 @@ import org.bukkit.permissions.ServerOperator;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Represents an offline player
+ */
 public interface OfflinePlayer extends ServerOperator, AnimalTamer, ConfigurationSerializable {
 
     /**
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index 0b68d0bd03822ed90effc4e57d288973f3164f16..86141c856478c6b39f7ef52f590a68e564da1ba9 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -1652,6 +1652,9 @@ public interface Server extends PluginMessageRecipient, net.kyori.adventure.audi
     UnsafeValues getUnsafe();
 
     // Spigot start
+    /**
+     * Spigot stuffs
+     */
     public class Spigot {
 
         @NotNull
diff --git a/src/main/java/org/bukkit/UnsafeValues.java b/src/main/java/org/bukkit/UnsafeValues.java
index 379acee1b5f2d06e6a96f3444783f4a29ca24095..ef3011d74ce9acf02d0ee857033816854134ec0e 100644
--- a/src/main/java/org/bukkit/UnsafeValues.java
+++ b/src/main/java/org/bukkit/UnsafeValues.java
@@ -87,6 +87,8 @@ public interface UnsafeValues {
 
     /**
      * Called once by the version command on first use, then cached.
+     *
+     * @return Paper's VersionFetcher
      */
     default com.destroystokyo.paper.util.VersionFetcher getVersionFetcher() {
         return new com.destroystokyo.paper.util.VersionFetcher.DummyVersionFetcher();
@@ -105,6 +107,8 @@ public interface UnsafeValues {
     /**
      * Return the translation key for the Material, so the client can translate it into the active
      * locale when using a {@link net.kyori.adventure.text.TranslatableComponent}.
+     *
+     * @param mat Material to check
      * @return the translation key
      */
     String getTranslationKey(Material mat);
@@ -112,6 +116,8 @@ public interface UnsafeValues {
     /**
      * Return the translation key for the Block, so the client can translate it into the active
      * locale when using a {@link net.kyori.adventure.text.TranslatableComponent}.
+     *
+     * @param block Block to check
      * @return the translation key
      */
     String getTranslationKey(org.bukkit.block.Block block);
@@ -120,6 +126,8 @@ public interface UnsafeValues {
      * Return the translation key for the EntityType, so the client can translate it into the active
      * locale when using a {@link net.kyori.adventure.text.TranslatableComponent}.<br>
      * This is <code>null</code>, when the EntityType isn't known to NMS (custom entities)
+     *
+     * @param type EntityType to check
      * @return the translation key
      */
     String getTranslationKey(org.bukkit.entity.EntityType type);
@@ -135,6 +143,8 @@ public interface UnsafeValues {
      * Creates and returns the next EntityId available.
      * <p>
      * Use this when sending custom packets, so that there are no collisions on the client or server.
+     *
+     * @return the next available entity id
      */
     public int nextEntityId();
 
diff --git a/src/main/java/org/bukkit/WorldBorder.java b/src/main/java/org/bukkit/WorldBorder.java
index afb7b136b461202026290624836446cff9f9e45d..087579fdff09237409c9f80446e7a15a78f9040c 100644
--- a/src/main/java/org/bukkit/WorldBorder.java
+++ b/src/main/java/org/bukkit/WorldBorder.java
@@ -2,6 +2,9 @@ package org.bukkit;
 
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Represents a world border
+ */
 public interface WorldBorder {
 
     /**
diff --git a/src/main/java/org/bukkit/WorldCreator.java b/src/main/java/org/bukkit/WorldCreator.java
index c0454d977119b28115b7698a2c4287f0f56efa55..445c1c13a85f7abb5fd319f9aeb05572bb1f63f6 100644
--- a/src/main/java/org/bukkit/WorldCreator.java
+++ b/src/main/java/org/bukkit/WorldCreator.java
@@ -71,6 +71,8 @@ public class WorldCreator {
      *
      * @param levelName LevelName of the world that will be created
      * @param worldKey NamespacedKey of the world that will be created
+     *
+     * @return WorldCreator
      */
     @NotNull
     public static WorldCreator ofNameAndKey(@NotNull String levelName, @NotNull NamespacedKey worldKey) {
@@ -82,6 +84,8 @@ public class WorldCreator {
      * LevelName will be the Key part of the NamespacedKey.
      *
      * @param worldKey NamespacedKey of the world that will be created
+     *
+     * @return WorldCreator
      */
     @NotNull
     public static WorldCreator ofKey(@NotNull NamespacedKey worldKey) {
diff --git a/src/main/java/org/bukkit/advancement/AdvancementDisplay.java b/src/main/java/org/bukkit/advancement/AdvancementDisplay.java
index c2e161e8e14d9949165055b6051708c048e68338..2bb3b525a3974b6ccd223b2ba272933c1617ceac 100644
--- a/src/main/java/org/bukkit/advancement/AdvancementDisplay.java
+++ b/src/main/java/org/bukkit/advancement/AdvancementDisplay.java
@@ -2,6 +2,9 @@ package org.bukkit.advancement;
 
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Represents an advancement's display
+ */
 public interface AdvancementDisplay {
     /**
      * Get the title of this advancement
diff --git a/src/main/java/org/bukkit/advancement/FrameType.java b/src/main/java/org/bukkit/advancement/FrameType.java
index d1757f3d456ff9efce26ce8baa1d16d896908cc2..a5db52386e11e4b5511ae417a0e7ac92e001de71 100644
--- a/src/main/java/org/bukkit/advancement/FrameType.java
+++ b/src/main/java/org/bukkit/advancement/FrameType.java
@@ -3,6 +3,9 @@ package org.bukkit.advancement;
 import org.bukkit.ChatColor;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Represents an advancement's display's frame type
+ */
 public enum FrameType {
     TASK(ChatColor.GREEN),
     CHALLENGE(ChatColor.DARK_PURPLE),
diff --git a/src/main/java/org/bukkit/block/Block.java b/src/main/java/org/bukkit/block/Block.java
index ad8bce01ba459a036cd4ebbbe4fc974021924fe2..466de59ee63a065151f62029743598f1e8d54253 100644
--- a/src/main/java/org/bukkit/block/Block.java
+++ b/src/main/java/org/bukkit/block/Block.java
@@ -184,6 +184,9 @@ public interface Block extends Metadatable, net.kyori.adventure.translation.Tran
      * {@code int z = (int) ((packed << 10) >> 37);}
      * </p>
      *
+     * @param x X coordinate
+     * @param y Y coordinate
+     * @param z Z coordinate
      * @return This block's x, y, and z coordinates packed into a long value
      */
     public static long getBlockKey(int x, int y, int z) {
diff --git a/src/main/java/org/bukkit/block/Lidded.java b/src/main/java/org/bukkit/block/Lidded.java
index 30c7df0021df44a411e50636d906d4a1d30fd927..73930312accf6d8c5d71777caa8190a15c2f036d 100644
--- a/src/main/java/org/bukkit/block/Lidded.java
+++ b/src/main/java/org/bukkit/block/Lidded.java
@@ -1,5 +1,8 @@
 package org.bukkit.block;
 
+/**
+ * Represents something that has a lid
+ */
 public interface Lidded {
 
     /**
diff --git a/src/main/java/org/bukkit/boss/BarColor.java b/src/main/java/org/bukkit/boss/BarColor.java
index e191d9ffe8d6fdeaef77313535a697b6038a0550..2ce3201079701de65c434b8f1e390bed27364370 100644
--- a/src/main/java/org/bukkit/boss/BarColor.java
+++ b/src/main/java/org/bukkit/boss/BarColor.java
@@ -1,5 +1,8 @@
 package org.bukkit.boss;
 
+/**
+ * Bar color
+ */
 public enum BarColor {
     PINK,
     BLUE,
diff --git a/src/main/java/org/bukkit/boss/BarFlag.java b/src/main/java/org/bukkit/boss/BarFlag.java
index 69e02998d062f5b52ef4e5cdd4dbb29384eb9f3c..0d8f617dc33b828bdadf3e8112b4c545625a55b2 100644
--- a/src/main/java/org/bukkit/boss/BarFlag.java
+++ b/src/main/java/org/bukkit/boss/BarFlag.java
@@ -1,5 +1,8 @@
 package org.bukkit.boss;
 
+/**
+ * Bar flag
+ */
 public enum BarFlag {
 
     /**
diff --git a/src/main/java/org/bukkit/boss/BarStyle.java b/src/main/java/org/bukkit/boss/BarStyle.java
index 3e499eb77957851ca67ca37bd116c617b44b6478..6907889ba91a32583cf62749a3148d3d2cd93925 100644
--- a/src/main/java/org/bukkit/boss/BarStyle.java
+++ b/src/main/java/org/bukkit/boss/BarStyle.java
@@ -1,5 +1,8 @@
 package org.bukkit.boss;
 
+/**
+ * Boss bar style
+ */
 public enum BarStyle {
     /**
      * Makes the boss bar solid (no segments)
diff --git a/src/main/java/org/bukkit/boss/BossBar.java b/src/main/java/org/bukkit/boss/BossBar.java
index 70274f2e2a1d6f27c4febd9d5d5fa3ee1b49f100..3b98e6e3e6dea0df5fb9462c78e8c142fde64723 100644
--- a/src/main/java/org/bukkit/boss/BossBar.java
+++ b/src/main/java/org/bukkit/boss/BossBar.java
@@ -5,6 +5,9 @@ import org.bukkit.entity.Player;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Represents a boss bar
+ */
 public interface BossBar {
 
     /**
diff --git a/src/main/java/org/bukkit/command/CommandSender.java b/src/main/java/org/bukkit/command/CommandSender.java
index 096dca3b733688dcc17669d78efbc5115f9b6e4a..63fbe3197918aaeab49d0397d2873dc91e3204e7 100644
--- a/src/main/java/org/bukkit/command/CommandSender.java
+++ b/src/main/java/org/bukkit/command/CommandSender.java
@@ -62,6 +62,9 @@ public interface CommandSender extends net.kyori.adventure.audience.Audience, Pe
     public String getName();
 
     // Spigot start
+    /**
+     * Spigot stuffs
+     */
     public class Spigot {
 
         /**
diff --git a/src/main/java/org/bukkit/conversations/Conversation.java b/src/main/java/org/bukkit/conversations/Conversation.java
index bf2407c838bc20197802687c150d513f4e86ed2b..ae09abfe9fe2979e89cfb4bb5c9cc0e7760943e7 100644
--- a/src/main/java/org/bukkit/conversations/Conversation.java
+++ b/src/main/java/org/bukkit/conversations/Conversation.java
@@ -295,6 +295,9 @@ public class Conversation {
         }
     }
 
+    /**
+     * Conversation state
+     */
     public enum ConversationState {
         UNSTARTED,
         STARTED,
diff --git a/src/main/java/org/bukkit/entity/AbstractArrow.java b/src/main/java/org/bukkit/entity/AbstractArrow.java
index b1d8007eed489aa061c1a6813bcdafc101231e56..eb847e3bb110f73695ba9b4191e69e6ea8a6ffc8 100644
--- a/src/main/java/org/bukkit/entity/AbstractArrow.java
+++ b/src/main/java/org/bukkit/entity/AbstractArrow.java
@@ -176,6 +176,9 @@ public interface AbstractArrow extends Projectile {
         this.setPickupStatus(PickupStatus.valueOf(rule.name()));
     }
 
+    /**
+     * Pickup rule
+     */
     @Deprecated
     enum PickupRule {
         DISALLOWED,
diff --git a/src/main/java/org/bukkit/entity/AnimalTamer.java b/src/main/java/org/bukkit/entity/AnimalTamer.java
index 2e17b2d4f759531fbe9ee8e9b00c839186af09ca..9382234722792b5920a2456187e079581c2e2f2a 100644
--- a/src/main/java/org/bukkit/entity/AnimalTamer.java
+++ b/src/main/java/org/bukkit/entity/AnimalTamer.java
@@ -4,6 +4,9 @@ import java.util.UUID;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Represents an animal tamer
+ */
 public interface AnimalTamer {
 
     /**
diff --git a/src/main/java/org/bukkit/entity/ArmorStand.java b/src/main/java/org/bukkit/entity/ArmorStand.java
index 21c8ec6d8b795799b5b110be57ffd27fc8dcabe3..d3eb843fb6a7257152120371c4f317133f63de4d 100644
--- a/src/main/java/org/bukkit/entity/ArmorStand.java
+++ b/src/main/java/org/bukkit/entity/ArmorStand.java
@@ -7,6 +7,9 @@ import org.bukkit.util.EulerAngle;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Represents an armor stand
+ */
 public interface ArmorStand extends LivingEntity {
 
     /**
diff --git a/src/main/java/org/bukkit/entity/Arrow.java b/src/main/java/org/bukkit/entity/Arrow.java
index ec8443b67014c0129256c9227cc89686422b9217..6b41e09d6ed075aae5455929b5b29efb2c6287f6 100644
--- a/src/main/java/org/bukkit/entity/Arrow.java
+++ b/src/main/java/org/bukkit/entity/Arrow.java
@@ -8,6 +8,9 @@ import org.bukkit.potion.PotionEffectType;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Represents an arrow
+ */
 public interface Arrow extends AbstractArrow {
 
     /**
diff --git a/src/main/java/org/bukkit/entity/Dolphin.java b/src/main/java/org/bukkit/entity/Dolphin.java
index f00eaadcdde7ceef95def2d8ec6eb63a76c177bd..a4a645799d82c730e3280519facf1347d26a859f 100644
--- a/src/main/java/org/bukkit/entity/Dolphin.java
+++ b/src/main/java/org/bukkit/entity/Dolphin.java
@@ -1,3 +1,6 @@
 package org.bukkit.entity;
 
+/**
+ * Represents a dolphin
+ */
 public interface Dolphin extends WaterMob { }
diff --git a/src/main/java/org/bukkit/entity/DragonFireball.java b/src/main/java/org/bukkit/entity/DragonFireball.java
index 6c475a3723721b33bb7709d8c1bbf487a10f9bbe..210d955e9bbb669c8ce644c935c1607ae8e7419b 100644
--- a/src/main/java/org/bukkit/entity/DragonFireball.java
+++ b/src/main/java/org/bukkit/entity/DragonFireball.java
@@ -1,3 +1,6 @@
 package org.bukkit.entity;
 
+/**
+ * Represents a dragon's fireball
+ */
 public interface DragonFireball extends Fireball {}
diff --git a/src/main/java/org/bukkit/entity/Endermite.java b/src/main/java/org/bukkit/entity/Endermite.java
index 9e7f42caab1204036f4203354c115fd40c6def92..f76ddd80f9fc926f73b1cc50f0a2767abbc549bb 100644
--- a/src/main/java/org/bukkit/entity/Endermite.java
+++ b/src/main/java/org/bukkit/entity/Endermite.java
@@ -1,5 +1,8 @@
 package org.bukkit.entity;
 
+/**
+ * Represents an endermite
+ */
 public interface Endermite extends Monster {
 
     /**
diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java
index c6f33ed7502fe8ad58f937ac2e326b85416452c2..6a16e4dcebaf6c899859039774383125dd03e59a 100644
--- a/src/main/java/org/bukkit/entity/Entity.java
+++ b/src/main/java/org/bukkit/entity/Entity.java
@@ -668,6 +668,9 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent
     Pose getPose();
 
     // Spigot start
+    /**
+     * Spigot stuffs
+     */
     public class Spigot extends CommandSender.Spigot {
 
     }
@@ -720,36 +723,50 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent
 
     /**
      * Check if entity is in rain
+     *
+     * @return True if entity is in rain
      */
     public boolean isInRain();
 
     /**
      * Check if entity is in bubble column
+     *
+     * @return True if entity is in bubble column
      */
     public boolean isInBubbleColumn();
 
     /**
      * Check if entity is in water or rain
+     *
+     * @return True if entity is in water or rain
      */
     public boolean isInWaterOrRain();
 
     /**
      * Check if entity is in water or bubble column
+     *
+     * @return True if entity is in water or bubble column
      */
     public boolean isInWaterOrBubbleColumn();
 
     /**
      * Check if entity is in water or rain or bubble column
+     *
+     * @return True if entity is in water or rain or bubble column
      */
     public boolean isInWaterOrRainOrBubbleColumn();
 
     /**
      * Check if entity is in lava
+     *
+     * @return True if entity is in lava
      */
     public boolean isInLava();
 
     /**
      * Check if entity is inside a ticking chunk
+     *
+     * @return True if entity is ticking
      */
     public boolean isTicking();
     // Paper end
diff --git a/src/main/java/org/bukkit/entity/EntityType.java b/src/main/java/org/bukkit/entity/EntityType.java
index d36d314383713bac3b11f18d95b0809dce3cd6e0..6a340d660d75968a52005502e6b410e2408140af 100644
--- a/src/main/java/org/bukkit/entity/EntityType.java
+++ b/src/main/java/org/bukkit/entity/EntityType.java
@@ -20,6 +20,9 @@ import org.jetbrains.annotations.Contract;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Entity type
+ */
 public enum EntityType implements Keyed, net.kyori.adventure.translation.Translatable { // Paper - translatable
 
     // These strings MUST match the strings in nms.EntityTypes and are case sensitive.
diff --git a/src/main/java/org/bukkit/entity/Firework.java b/src/main/java/org/bukkit/entity/Firework.java
index d616d5941b3c7b85e350e845901da798601b9a3c..14bdddb7ced9c4cd92a8ad96d97a08a6ed4c25bf 100644
--- a/src/main/java/org/bukkit/entity/Firework.java
+++ b/src/main/java/org/bukkit/entity/Firework.java
@@ -3,6 +3,9 @@ package org.bukkit.entity;
 import org.bukkit.inventory.meta.FireworkMeta;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Represents a firework
+ */
 public interface Firework extends Projectile {
 
     /**
diff --git a/src/main/java/org/bukkit/entity/Guardian.java b/src/main/java/org/bukkit/entity/Guardian.java
index 812af884d0601645e254ac29613323d2fd92a112..c1b1ac9210eaaa02dad0449aac867efbd1cac36a 100644
--- a/src/main/java/org/bukkit/entity/Guardian.java
+++ b/src/main/java/org/bukkit/entity/Guardian.java
@@ -1,5 +1,8 @@
 package org.bukkit.entity;
 
+/**
+ * Represents a guardian
+ */
 public interface Guardian extends Monster {
 
     /**
diff --git a/src/main/java/org/bukkit/entity/LightningStrike.java b/src/main/java/org/bukkit/entity/LightningStrike.java
index 2c81a3f685588431a3c7675c84b35a28975232af..efb308c82580722e5106d5d1c7512d99c38e536a 100644
--- a/src/main/java/org/bukkit/entity/LightningStrike.java
+++ b/src/main/java/org/bukkit/entity/LightningStrike.java
@@ -15,6 +15,9 @@ public interface LightningStrike extends Entity {
     public boolean isEffect();
 
     // Spigot start
+    /**
+     * Spigot stuffs
+     */
     public class Spigot extends Entity.Spigot {
 
         /*
diff --git a/src/main/java/org/bukkit/entity/Panda.java b/src/main/java/org/bukkit/entity/Panda.java
index a6a7429ed2e1eefb2b12b7480ed74fcc3963a864..e8027e1d505dda6effbb1698550016e87b2e581f 100644
--- a/src/main/java/org/bukkit/entity/Panda.java
+++ b/src/main/java/org/bukkit/entity/Panda.java
@@ -37,6 +37,9 @@ public interface Panda extends Animals {
      */
     void setHiddenGene(@NotNull Gene gene);
 
+    /**
+     * Panda gene type
+     */
     public enum Gene {
 
         NORMAL(false),
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
index b59a297a9eb21f0e7d70d9662fd7c0e0080ff3e1..89345f789bb6f5e87463f423c69f1fb8a350bfaa 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -2121,6 +2121,8 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
     void resetCooldown();
 
     /**
+     * @param <T> ClientOption type
+     * @param option ClientOption
      * @return the client option value of the player
      */
     @NotNull
@@ -2160,6 +2162,9 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
     // Paper end
 
     // Spigot start
+    /**
+     * Spigot stuffs
+     */
     public class Spigot extends Entity.Spigot {
 
         /**
diff --git a/src/main/java/org/bukkit/entity/Rabbit.java b/src/main/java/org/bukkit/entity/Rabbit.java
index e88154283a8ef594e160d25005870053de15568a..24c81708dc6691e220e278e92c07b9d51072fb88 100644
--- a/src/main/java/org/bukkit/entity/Rabbit.java
+++ b/src/main/java/org/bukkit/entity/Rabbit.java
@@ -2,6 +2,9 @@ package org.bukkit.entity;
 
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Represents a rabbit
+ */
 public interface Rabbit extends Animals {
 
     /**
diff --git a/src/main/java/org/bukkit/entity/Raider.java b/src/main/java/org/bukkit/entity/Raider.java
index 9a99b8ca1ec9c3c88b29275c88b1221e1b22bcef..f1763f75d5f223ef70b968e4633616731b727df5 100644
--- a/src/main/java/org/bukkit/entity/Raider.java
+++ b/src/main/java/org/bukkit/entity/Raider.java
@@ -3,6 +3,9 @@ package org.bukkit.entity;
 import org.bukkit.block.Block;
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Represents a raider entity
+ */
 public interface Raider extends Monster {
 
     /**
diff --git a/src/main/java/org/bukkit/entity/Shulker.java b/src/main/java/org/bukkit/entity/Shulker.java
index 010e1f9c3567a2fe8297fe04fcf7b75df0279eca..bd40fdfbcd9a34c7cde5f4dc34cba53aec53c485 100644
--- a/src/main/java/org/bukkit/entity/Shulker.java
+++ b/src/main/java/org/bukkit/entity/Shulker.java
@@ -4,6 +4,9 @@ import org.bukkit.block.BlockFace;
 import org.bukkit.material.Colorable;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Represents a shulker
+ */
 public interface Shulker extends Golem, Colorable {
 
     /**
diff --git a/src/main/java/org/bukkit/entity/ShulkerBullet.java b/src/main/java/org/bukkit/entity/ShulkerBullet.java
index 4623e0d767b343cbdc6fcf20b3b2ff7ff14863cf..ca3f98a8272bab3c9f57f59b077b206c6503de80 100644
--- a/src/main/java/org/bukkit/entity/ShulkerBullet.java
+++ b/src/main/java/org/bukkit/entity/ShulkerBullet.java
@@ -2,6 +2,9 @@ package org.bukkit.entity;
 
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Represents a shulker bullet
+ */
 public interface ShulkerBullet extends Projectile {
 
     /**
diff --git a/src/main/java/org/bukkit/entity/Tameable.java b/src/main/java/org/bukkit/entity/Tameable.java
index 65e68da98ab66ed781bce2f0dbe0913be48d2990..cb708ae66f60a36ac0f529614743e33511e4bd90 100644
--- a/src/main/java/org/bukkit/entity/Tameable.java
+++ b/src/main/java/org/bukkit/entity/Tameable.java
@@ -3,6 +3,9 @@ package org.bukkit.entity;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Represents a tameable entity
+ */
 public interface Tameable extends Animals {
 
     /**
diff --git a/src/main/java/org/bukkit/entity/ThrowableProjectile.java b/src/main/java/org/bukkit/entity/ThrowableProjectile.java
index ceb3e2c5117740ce284e893fff8e41a002d78649..fab5c3c90f55c113cae2bca2354a94e88c1aaece 100644
--- a/src/main/java/org/bukkit/entity/ThrowableProjectile.java
+++ b/src/main/java/org/bukkit/entity/ThrowableProjectile.java
@@ -3,6 +3,9 @@ package org.bukkit.entity;
 import org.bukkit.inventory.ItemStack;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Represents a throwable projectile
+ */
 public interface ThrowableProjectile extends Projectile {
 
     /**
diff --git a/src/main/java/org/bukkit/entity/minecart/CommandMinecart.java b/src/main/java/org/bukkit/entity/minecart/CommandMinecart.java
index 91cab8b13d5bba34007f124838b32a1df58c5ac7..078228106b299a8e38495f7f881d38de4f87bc95 100644
--- a/src/main/java/org/bukkit/entity/minecart/CommandMinecart.java
+++ b/src/main/java/org/bukkit/entity/minecart/CommandMinecart.java
@@ -4,6 +4,9 @@ import org.bukkit.entity.Minecart;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Represents a minecart with command block
+ */
 public interface CommandMinecart extends Minecart {
 
     /**
diff --git a/src/main/java/org/bukkit/event/Cancellable.java b/src/main/java/org/bukkit/event/Cancellable.java
index 799b0b0f3cd842edd2bc1005c2e848f9a0b7b43c..7f02db9d1660b7b33d8c3825114b5040e5461696 100644
--- a/src/main/java/org/bukkit/event/Cancellable.java
+++ b/src/main/java/org/bukkit/event/Cancellable.java
@@ -1,5 +1,8 @@
 package org.bukkit.event;
 
+/**
+ * Represents a cancellable event
+ */
 public interface Cancellable {
 
     /**
diff --git a/src/main/java/org/bukkit/event/Event.java b/src/main/java/org/bukkit/event/Event.java
index 8ec56cd6b8e0f5c5dd8c7c88b4671e18dcf109d0..740bbce54140480039a637c9fee6ccb3f4da1027 100644
--- a/src/main/java/org/bukkit/event/Event.java
+++ b/src/main/java/org/bukkit/event/Event.java
@@ -95,6 +95,9 @@ public abstract class Event {
         return async;
     }
 
+    /**
+     * Event result
+     */
     public enum Result {
 
         /**
diff --git a/src/main/java/org/bukkit/event/EventException.java b/src/main/java/org/bukkit/event/EventException.java
index 84638e852501cc804c13c188c90c38b163657c36..a32f7d86407a36d34932101a8b46751c5bed0d75 100644
--- a/src/main/java/org/bukkit/event/EventException.java
+++ b/src/main/java/org/bukkit/event/EventException.java
@@ -1,5 +1,8 @@
 package org.bukkit.event;
 
+/**
+ * Event exception
+ */
 public class EventException extends Exception {
     private static final long serialVersionUID = 3532808232324183999L;
     private final Throwable cause;
diff --git a/src/main/java/org/bukkit/event/block/Action.java b/src/main/java/org/bukkit/event/block/Action.java
index 25d26e3fe713311e66d7e634a6c32af61f4cef59..2825263c102d3f9ed37f6884e09ec5efb8105fb9 100644
--- a/src/main/java/org/bukkit/event/block/Action.java
+++ b/src/main/java/org/bukkit/event/block/Action.java
@@ -1,5 +1,8 @@
 package org.bukkit.event.block;
 
+/**
+ * Block action
+ */
 public enum Action {
 
     /**
diff --git a/src/main/java/org/bukkit/event/block/CauldronLevelChangeEvent.java b/src/main/java/org/bukkit/event/block/CauldronLevelChangeEvent.java
index 891f3d250b8ea2af0902602758efb1e27183d558..5cc86332986ce4c70e6c1a95a51601b9a29f95b3 100644
--- a/src/main/java/org/bukkit/event/block/CauldronLevelChangeEvent.java
+++ b/src/main/java/org/bukkit/event/block/CauldronLevelChangeEvent.java
@@ -12,6 +12,9 @@ import org.bukkit.event.HandlerList;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Called when a cauldron changes fluid level
+ */
 public class CauldronLevelChangeEvent extends BlockEvent implements Cancellable {
 
     private static final HandlerList handlers = new HandlerList();
@@ -119,6 +122,9 @@ public class CauldronLevelChangeEvent extends BlockEvent implements Cancellable
         return handlers;
     }
 
+    /**
+     * Cauldron level change reason
+     */
     public enum ChangeReason {
         /**
          * Player emptying the cauldron by filling their bucket.
diff --git a/src/main/java/org/bukkit/event/entity/EntityTransformEvent.java b/src/main/java/org/bukkit/event/entity/EntityTransformEvent.java
index 1e702f94e1994bb9ee5c0871152048f4f4b1defc..4cbf2dca3e59967d562d88caf999838266e5bf34 100644
--- a/src/main/java/org/bukkit/event/entity/EntityTransformEvent.java
+++ b/src/main/java/org/bukkit/event/entity/EntityTransformEvent.java
@@ -79,6 +79,9 @@ public class EntityTransformEvent extends EntityEvent implements Cancellable {
         return handlers;
     }
 
+    /**
+     * Entity transform reason
+     */
     public enum TransformReason {
         /**
          * When a zombie gets cured and a villager is spawned.
diff --git a/src/main/java/org/bukkit/event/entity/EntityUnleashEvent.java b/src/main/java/org/bukkit/event/entity/EntityUnleashEvent.java
index 95248d0f5cf9b62d31a4883955b9088a7fc8a3b3..4367e272a0eb8010afbdb478ca56cfd87eb87315 100644
--- a/src/main/java/org/bukkit/event/entity/EntityUnleashEvent.java
+++ b/src/main/java/org/bukkit/event/entity/EntityUnleashEvent.java
@@ -85,6 +85,9 @@ public class EntityUnleashEvent extends EntityEvent implements org.bukkit.event.
         return handlers;
     }
 
+    /**
+     * Entity unleash reason
+     */
     public enum UnleashReason {
         /**
          * When the entity's leashholder has died or logged out, and so is
diff --git a/src/main/java/org/bukkit/event/entity/ItemMergeEvent.java b/src/main/java/org/bukkit/event/entity/ItemMergeEvent.java
index e378cc29b47238fe12ae9aff5171edcff6b456f5..f5b9fd0b6f9512e425e1cc6103f80ba198c6db5b 100644
--- a/src/main/java/org/bukkit/event/entity/ItemMergeEvent.java
+++ b/src/main/java/org/bukkit/event/entity/ItemMergeEvent.java
@@ -5,6 +5,9 @@ import org.bukkit.event.Cancellable;
 import org.bukkit.event.HandlerList;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Called when an item merges with another
+ */
 public class ItemMergeEvent extends EntityEvent implements Cancellable {
 
     private static final HandlerList handlers = new HandlerList();
diff --git a/src/main/java/org/bukkit/event/entity/VillagerCareerChangeEvent.java b/src/main/java/org/bukkit/event/entity/VillagerCareerChangeEvent.java
index b550029cf3a7bc55137851eab734abab8965306d..d070baf9587edccdd95204771f59491f5c4ba10d 100644
--- a/src/main/java/org/bukkit/event/entity/VillagerCareerChangeEvent.java
+++ b/src/main/java/org/bukkit/event/entity/VillagerCareerChangeEvent.java
@@ -6,6 +6,9 @@ import org.bukkit.event.Cancellable;
 import org.bukkit.event.HandlerList;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Called when a villager changes career
+ */
 public class VillagerCareerChangeEvent extends EntityEvent implements Cancellable {
 
     private static final HandlerList handlers = new HandlerList();
diff --git a/src/main/java/org/bukkit/event/inventory/InventoryCloseEvent.java b/src/main/java/org/bukkit/event/inventory/InventoryCloseEvent.java
index 21ad8888c0e403bfc63518502577d651c02dda05..295cbe558ace7b55c80fc84256808d2f505ea734 100644
--- a/src/main/java/org/bukkit/event/inventory/InventoryCloseEvent.java
+++ b/src/main/java/org/bukkit/event/inventory/InventoryCloseEvent.java
@@ -18,6 +18,9 @@ public class InventoryCloseEvent extends InventoryEvent {
         return reason;
     }
 
+    /**
+     * Inventory close reason
+     */
     public enum Reason {
         /**
          * Unknown reason
diff --git a/src/main/java/org/bukkit/event/inventory/InventoryType.java b/src/main/java/org/bukkit/event/inventory/InventoryType.java
index a31841b93964338c9325631dbfa59b3cad77b4f1..09f0fa8f2aac16b2c2d848089e228af2d09f9090 100644
--- a/src/main/java/org/bukkit/event/inventory/InventoryType.java
+++ b/src/main/java/org/bukkit/event/inventory/InventoryType.java
@@ -189,6 +189,9 @@ public enum InventoryType {
         return isCreatable;
     }
 
+    /**
+     * Inventory slot type
+     */
     public enum SlotType {
         /**
          * A result slot in a furnace or crafting inventory.
diff --git a/src/main/java/org/bukkit/event/inventory/PrepareItemCraftEvent.java b/src/main/java/org/bukkit/event/inventory/PrepareItemCraftEvent.java
index efd29d198dd847e22988963f70ad57e1b810aeb7..b5de6e77a030057f923a5d82ea0054b9e138009d 100644
--- a/src/main/java/org/bukkit/event/inventory/PrepareItemCraftEvent.java
+++ b/src/main/java/org/bukkit/event/inventory/PrepareItemCraftEvent.java
@@ -7,6 +7,9 @@ import org.bukkit.inventory.Recipe;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Prepare item craft event
+ */
 public class PrepareItemCraftEvent extends InventoryEvent {
     private static final HandlerList handlers = new HandlerList();
     private boolean repair;
diff --git a/src/main/java/org/bukkit/event/player/PlayerQuitEvent.java b/src/main/java/org/bukkit/event/player/PlayerQuitEvent.java
index b6016aa1e91863efc252eecab69ade6f54c89f27..e43acfb570036adb73d195136573620378cc6a61 100644
--- a/src/main/java/org/bukkit/event/player/PlayerQuitEvent.java
+++ b/src/main/java/org/bukkit/event/player/PlayerQuitEvent.java
@@ -94,6 +94,9 @@ public class PlayerQuitEvent extends PlayerEvent {
         return this.reason;
     }
 
+    /**
+     * Player quit reason
+     */
     public enum QuitReason {
         /**
          * The player left on their own behalf.
diff --git a/src/main/java/org/bukkit/event/player/PlayerTeleportEvent.java b/src/main/java/org/bukkit/event/player/PlayerTeleportEvent.java
index 553d7740489fe729166c8ca8ef8c7834db3663ad..4a2d61912ffed137b2b3e4cc4d9b32a11207f6ba 100644
--- a/src/main/java/org/bukkit/event/player/PlayerTeleportEvent.java
+++ b/src/main/java/org/bukkit/event/player/PlayerTeleportEvent.java
@@ -33,6 +33,9 @@ public class PlayerTeleportEvent extends PlayerMoveEvent {
         return cause;
     }
 
+    /**
+     * Player teleport cause
+     */
     public enum TeleportCause {
         /**
          * Indicates the teleporation was caused by a player throwing an Ender
diff --git a/src/main/java/org/bukkit/event/raid/RaidStopEvent.java b/src/main/java/org/bukkit/event/raid/RaidStopEvent.java
index 9e852ac973d7a38c075249360be483ed0e5f5ac6..55db1a074144c709489d7f6a4e353b8fd94d312e 100644
--- a/src/main/java/org/bukkit/event/raid/RaidStopEvent.java
+++ b/src/main/java/org/bukkit/event/raid/RaidStopEvent.java
@@ -40,6 +40,9 @@ public class RaidStopEvent extends RaidEvent {
         return handlers;
     }
 
+    /**
+     * Raid stop reason
+     */
     public enum Reason {
 
         /**
diff --git a/src/main/java/org/bukkit/event/weather/LightningStrikeEvent.java b/src/main/java/org/bukkit/event/weather/LightningStrikeEvent.java
index c98f07f82d179dffe162bb5cd85efe97de1b6175..a03669ed9720a9a8ed646bcaebbd8edc6f51cfce 100644
--- a/src/main/java/org/bukkit/event/weather/LightningStrikeEvent.java
+++ b/src/main/java/org/bukkit/event/weather/LightningStrikeEvent.java
@@ -67,6 +67,9 @@ public class LightningStrikeEvent extends WeatherEvent implements Cancellable {
         return handlers;
     }
 
+    /**
+     * Lightning strike cause
+     */
     public enum Cause {
         /**
          * Triggered by the /summon command.
diff --git a/src/main/java/org/bukkit/help/HelpTopicComparator.java b/src/main/java/org/bukkit/help/HelpTopicComparator.java
index e1f4930f4d7cf657a75282b4c3480cabaaee2765..00b3b1d65f80d8e17ca1a40b704ece57a4776f8e 100644
--- a/src/main/java/org/bukkit/help/HelpTopicComparator.java
+++ b/src/main/java/org/bukkit/help/HelpTopicComparator.java
@@ -31,6 +31,9 @@ public final class HelpTopicComparator implements Comparator<HelpTopic> {
         return tnc.compare(lhs.getName(), rhs.getName());
     }
 
+    /**
+     * Topic name comparator
+     */
     public static final class TopicNameComparator implements Comparator<String> {
         private TopicNameComparator() {}
 
diff --git a/src/main/java/org/bukkit/inventory/ArmoredHorseInventory.java b/src/main/java/org/bukkit/inventory/ArmoredHorseInventory.java
index 163ffe8ff76ded6265d865901d5110fb6a56950d..36145294db34d273bb767cc928453b765a30e9db 100644
--- a/src/main/java/org/bukkit/inventory/ArmoredHorseInventory.java
+++ b/src/main/java/org/bukkit/inventory/ArmoredHorseInventory.java
@@ -2,6 +2,9 @@ package org.bukkit.inventory;
 
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Represents an armored horse's inventory
+ */
 public interface ArmoredHorseInventory extends AbstractHorseInventory {
 
     /**
diff --git a/src/main/java/org/bukkit/inventory/EquipmentSlot.java b/src/main/java/org/bukkit/inventory/EquipmentSlot.java
index 1e7d77118a55ca9db99eabb94894e6ef3409946b..ad7db4407c83b19bc8ecc9b849152af42d5c4ddb 100644
--- a/src/main/java/org/bukkit/inventory/EquipmentSlot.java
+++ b/src/main/java/org/bukkit/inventory/EquipmentSlot.java
@@ -1,5 +1,8 @@
 package org.bukkit.inventory;
 
+/**
+ * Equipment slot
+ */
 public enum EquipmentSlot {
 
     HAND,
diff --git a/src/main/java/org/bukkit/inventory/InventoryHolder.java b/src/main/java/org/bukkit/inventory/InventoryHolder.java
index c7b17eabf07b829a02afe7c1f27a5127b6bfea70..d4e2bcf8ce8fc2af851b471490147f0092ea456a 100644
--- a/src/main/java/org/bukkit/inventory/InventoryHolder.java
+++ b/src/main/java/org/bukkit/inventory/InventoryHolder.java
@@ -2,6 +2,9 @@ package org.bukkit.inventory;
 
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Represents an inventory holder
+ */
 public interface InventoryHolder {
 
     /**
diff --git a/src/main/java/org/bukkit/inventory/ItemFactory.java b/src/main/java/org/bukkit/inventory/ItemFactory.java
index 858dd1a5df74f9b36966ad55b5b66d4424b00c62..e7dd844f2359fdaf903632bb3761382ee9dc38b5 100644
--- a/src/main/java/org/bukkit/inventory/ItemFactory.java
+++ b/src/main/java/org/bukkit/inventory/ItemFactory.java
@@ -148,6 +148,7 @@ public interface ItemFactory {
      * Creates a hover event for the given item.
      *
      * @param item The item
+     * @param op Unary operator
      * @return A hover event
      */
     @NotNull
@@ -188,7 +189,7 @@ public interface ItemFactory {
     /**
      * Creates a {@link net.md_5.bungee.api.chat.hover.content.Content} of that ItemStack for displaying.
      *
-     * @param itemStack
+     * @param itemStack ItemStack to check
      * @return the {@link net.md_5.bungee.api.chat.hover.content.Content} of that ItemStack
      */
     @NotNull
diff --git a/src/main/java/org/bukkit/inventory/SaddledHorseInventory.java b/src/main/java/org/bukkit/inventory/SaddledHorseInventory.java
index 7944f26a3e2a92601c3be0e55c00c39cc16cf177..8e7bb66c96d34b73959c0653b2a8e7b422da35fe 100644
--- a/src/main/java/org/bukkit/inventory/SaddledHorseInventory.java
+++ b/src/main/java/org/bukkit/inventory/SaddledHorseInventory.java
@@ -1,3 +1,6 @@
 package org.bukkit.inventory;
 
+/**
+ * Represents a saddled horse's inventory
+ */
 public interface SaddledHorseInventory extends AbstractHorseInventory {}
diff --git a/src/main/java/org/bukkit/inventory/meta/BannerMeta.java b/src/main/java/org/bukkit/inventory/meta/BannerMeta.java
index 4739d2ecc26e7e4adc1b297013da98e12fe58783..45ebb3ca8d628b708419bd2beedd94ee4c819b8a 100644
--- a/src/main/java/org/bukkit/inventory/meta/BannerMeta.java
+++ b/src/main/java/org/bukkit/inventory/meta/BannerMeta.java
@@ -6,6 +6,9 @@ import org.bukkit.block.banner.Pattern;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Represents metadata on a banner
+ */
 public interface BannerMeta extends ItemMeta {
 
     /**
diff --git a/src/main/java/org/bukkit/inventory/meta/BlockDataMeta.java b/src/main/java/org/bukkit/inventory/meta/BlockDataMeta.java
index 473c72dcd34d3f6be72e2ab87c5af51819a00e33..a73b59f40eb3c4d94074154591f9f6885fb287ca 100644
--- a/src/main/java/org/bukkit/inventory/meta/BlockDataMeta.java
+++ b/src/main/java/org/bukkit/inventory/meta/BlockDataMeta.java
@@ -4,6 +4,9 @@ import org.bukkit.Material;
 import org.bukkit.block.data.BlockData;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Represents metadata on a block
+ */
 public interface BlockDataMeta extends ItemMeta {
 
     /**
diff --git a/src/main/java/org/bukkit/inventory/meta/BlockStateMeta.java b/src/main/java/org/bukkit/inventory/meta/BlockStateMeta.java
index e7d905b1146b2bdd2da5bdeb6bf3541fb181d59e..1fab68c9de96b0d362ebf85fd675cc19099aefa1 100644
--- a/src/main/java/org/bukkit/inventory/meta/BlockStateMeta.java
+++ b/src/main/java/org/bukkit/inventory/meta/BlockStateMeta.java
@@ -4,6 +4,9 @@ package org.bukkit.inventory.meta;
 import org.bukkit.block.BlockState;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Represents metadata on a blockstate
+ */
 public interface BlockStateMeta extends ItemMeta {
 
     /**
diff --git a/src/main/java/org/bukkit/inventory/meta/BookMeta.java b/src/main/java/org/bukkit/inventory/meta/BookMeta.java
index 4947251f347d83fa326a67735293401c10d87ba4..248cd6faa72a91ceaf6f74d06c05d05bd26f5fbc 100644
--- a/src/main/java/org/bukkit/inventory/meta/BookMeta.java
+++ b/src/main/java/org/bukkit/inventory/meta/BookMeta.java
@@ -315,6 +315,9 @@ public interface BookMeta extends ItemMeta, net.kyori.adventure.inventory.Book {
     BookMeta clone();
 
     // Spigot start
+    /**
+     * Spigot stuffs
+     */
     public class Spigot {
 
         /**
diff --git a/src/main/java/org/bukkit/inventory/meta/CrossbowMeta.java b/src/main/java/org/bukkit/inventory/meta/CrossbowMeta.java
index 35c6594fd1040a1af1029e7260e5e3a9307b107d..47975b24ffa01c9872f6e910d14e1c8e0d0481b9 100644
--- a/src/main/java/org/bukkit/inventory/meta/CrossbowMeta.java
+++ b/src/main/java/org/bukkit/inventory/meta/CrossbowMeta.java
@@ -5,6 +5,9 @@ import org.bukkit.inventory.ItemStack;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Represents metadata on a crossbow
+ */
 public interface CrossbowMeta extends ItemMeta {
 
     /**
diff --git a/src/main/java/org/bukkit/inventory/meta/KnowledgeBookMeta.java b/src/main/java/org/bukkit/inventory/meta/KnowledgeBookMeta.java
index 736c60c71d112e8c017473a93091b4e5336a996f..88c7b311128d605c8d33e1b075795a3a1a434fa5 100644
--- a/src/main/java/org/bukkit/inventory/meta/KnowledgeBookMeta.java
+++ b/src/main/java/org/bukkit/inventory/meta/KnowledgeBookMeta.java
@@ -4,6 +4,9 @@ import java.util.List;
 import org.bukkit.NamespacedKey;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Represents metadata on a knowledge book
+ */
 public interface KnowledgeBookMeta extends ItemMeta {
 
     /**
diff --git a/src/main/java/org/bukkit/material/CocoaPlant.java b/src/main/java/org/bukkit/material/CocoaPlant.java
index b1b1c729d182b676d8ea69a8d3c942c6820863dd..222c2ae29bc150bbc44c74885b6565911a666911 100644
--- a/src/main/java/org/bukkit/material/CocoaPlant.java
+++ b/src/main/java/org/bukkit/material/CocoaPlant.java
@@ -12,6 +12,9 @@ import org.bukkit.block.BlockFace;
 @Deprecated
 public class CocoaPlant extends MaterialData implements Directional, Attachable {
 
+    /**
+     * Cocoa plant size
+     */
     public enum CocoaPlantSize {
         SMALL,
         MEDIUM,
diff --git a/src/main/java/org/bukkit/material/Directional.java b/src/main/java/org/bukkit/material/Directional.java
index 8c1c7b0a258bd4e601955827c4f5a72b81a60db2..f188563dd0db1d7e1dab5e1cce5d76339061df3e 100644
--- a/src/main/java/org/bukkit/material/Directional.java
+++ b/src/main/java/org/bukkit/material/Directional.java
@@ -3,6 +3,9 @@ package org.bukkit.material;
 import org.bukkit.block.BlockFace;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Represents something that can face a direction
+ */
 public interface Directional {
 
     /**
diff --git a/src/main/java/org/bukkit/material/Openable.java b/src/main/java/org/bukkit/material/Openable.java
index 0ae54f973d11df74abb3105cf9226afb130b4f33..6541bca9c6c4ccedf059d2297b54b738588a02dc 100644
--- a/src/main/java/org/bukkit/material/Openable.java
+++ b/src/main/java/org/bukkit/material/Openable.java
@@ -1,5 +1,8 @@
 package org.bukkit.material;
 
+/**
+ * Represents something that can be opened
+ */
 public interface Openable {
 
     /**
diff --git a/src/main/java/org/bukkit/material/PressureSensor.java b/src/main/java/org/bukkit/material/PressureSensor.java
index de20bd39c532e94a11536a67c1af71bea203aedc..aa14be496bfe05bf3882f8ac50ef88b8ad655302 100644
--- a/src/main/java/org/bukkit/material/PressureSensor.java
+++ b/src/main/java/org/bukkit/material/PressureSensor.java
@@ -1,5 +1,8 @@
 package org.bukkit.material;
 
+/**
+ * Represents a pressure sensor
+ */
 public interface PressureSensor {
     public boolean isPressed();
 }
diff --git a/src/main/java/org/bukkit/metadata/MetadataStore.java b/src/main/java/org/bukkit/metadata/MetadataStore.java
index 29f86fa938c2758cbdf8dec22519a18c3e119818..8fca91925ce7d3fdcec838a3f1c9ba3e4ddc5a9c 100644
--- a/src/main/java/org/bukkit/metadata/MetadataStore.java
+++ b/src/main/java/org/bukkit/metadata/MetadataStore.java
@@ -4,6 +4,11 @@ import java.util.List;
 import org.bukkit.plugin.Plugin;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Metadata store
+ *
+ * @param <T> Type
+ */
 public interface MetadataStore<T> {
     /**
      * Adds a metadata value to an object.
diff --git a/src/main/java/org/bukkit/metadata/MetadataStoreBase.java b/src/main/java/org/bukkit/metadata/MetadataStoreBase.java
index abbe545af572687a0399c2387434863cd2b70f68..81024450c3cf28657e2c38fd164dad034f47af22 100644
--- a/src/main/java/org/bukkit/metadata/MetadataStoreBase.java
+++ b/src/main/java/org/bukkit/metadata/MetadataStoreBase.java
@@ -12,6 +12,11 @@ import org.apache.commons.lang.Validate;
 import org.bukkit.plugin.Plugin;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Metadata store base
+ *
+ * @param <T> Type
+ */
 public abstract class MetadataStoreBase<T> {
     private Map<String, Map<Plugin, MetadataValue>> metadataMap = new java.util.concurrent.ConcurrentHashMap<String, Map<Plugin, MetadataValue>>(); // Paper
 
diff --git a/src/main/java/org/bukkit/metadata/MetadataValue.java b/src/main/java/org/bukkit/metadata/MetadataValue.java
index 4b4d57924b8b2aecf4ebf92edc805334ffa53d0e..9df3d1c71a399c4d3f610bcd96aa401b4ea0c708 100644
--- a/src/main/java/org/bukkit/metadata/MetadataValue.java
+++ b/src/main/java/org/bukkit/metadata/MetadataValue.java
@@ -4,6 +4,9 @@ import org.bukkit.plugin.Plugin;
 import org.jetbrains.annotations.NotNull;
 import org.jetbrains.annotations.Nullable;
 
+/**
+ * Metadata value
+ */
 public interface MetadataValue {
 
     /**
diff --git a/src/main/java/org/bukkit/plugin/AuthorNagException.java b/src/main/java/org/bukkit/plugin/AuthorNagException.java
index 6565a441467e323b3e1871485a9e09e4cfbea050..20985f022afa077ba0907f3404175cb4500fa29f 100644
--- a/src/main/java/org/bukkit/plugin/AuthorNagException.java
+++ b/src/main/java/org/bukkit/plugin/AuthorNagException.java
@@ -1,5 +1,8 @@
 package org.bukkit.plugin;
 
+/**
+ * Author nag exception
+ */
 @SuppressWarnings("serial")
 public class AuthorNagException extends RuntimeException {
     private final String message;
diff --git a/src/main/java/org/bukkit/projectiles/BlockProjectileSource.java b/src/main/java/org/bukkit/projectiles/BlockProjectileSource.java
index 21a3d767baf9f76746b2a5f2b3af134fe1e96e8a..6d7a29554f337333f4cf6095d9d0ca9e275f8f4f 100644
--- a/src/main/java/org/bukkit/projectiles/BlockProjectileSource.java
+++ b/src/main/java/org/bukkit/projectiles/BlockProjectileSource.java
@@ -3,6 +3,9 @@ package org.bukkit.projectiles;
 import org.bukkit.block.Block;
 import org.jetbrains.annotations.NotNull;
 
+/**
+ * Represents a block projectile source
+ */
 public interface BlockProjectileSource extends ProjectileSource {
 
     /**
