--- a/net/minecraft/world/level/block/entity/vault/VaultServerData.java
+++ b/net/minecraft/world/level/block/entity/vault/VaultServerData.java
@@ -62,7 +_,12 @@
 
     @VisibleForTesting
     public void addToRewardedPlayers(Player player) {
-        this.rewardedPlayers.add(player.getUUID());
+    // Paper start - Vault API
+        addToRewardedPlayers(player.getUUID());
+    }
+    public boolean addToRewardedPlayers(final java.util.UUID player) {
+        final boolean removed = this.rewardedPlayers.add(player);
+    // Paper end - Vault API
         if (this.rewardedPlayers.size() > 128) {
             Iterator<UUID> iterator = this.rewardedPlayers.iterator();
             if (iterator.hasNext()) {
@@ -72,6 +_,7 @@
         }
 
         this.markChanged();
+        return removed; // Paper - Vault API
     }
 
     public long stateUpdatingResumesAt() {
@@ -127,4 +_,15 @@
     public float ejectionProgress() {
         return this.totalEjectionsNeeded == 1 ? 1.0F : 1.0F - Mth.inverseLerp((float)this.getItemsToEject().size(), 1.0F, (float)this.totalEjectionsNeeded);
     }
+
+    // Paper start - Vault API
+    public boolean removeFromRewardedPlayers(final UUID uuid) {
+        if (this.rewardedPlayers.remove(uuid)) {
+            this.markChanged();
+            return true;
+        }
+
+        return false;
+    }
+    // Paper end - Vault API
 }
