[improve][broker] Add annotation for topic compaction strategy (#20858)

### Motivation

Add `Audience.Private` annotation for topic compaction strategy. Since this interface only uses for load manager, other users should not use this interface.

(cherry picked from commit e55ed58eed4380b463d04b76dbb953d7a0ac795d)
diff --git a/pulsar-common/src/main/java/org/apache/pulsar/common/topics/TopicCompactionStrategy.java b/pulsar-common/src/main/java/org/apache/pulsar/common/topics/TopicCompactionStrategy.java
index 51fb674..39bfa6d 100644
--- a/pulsar-common/src/main/java/org/apache/pulsar/common/topics/TopicCompactionStrategy.java
+++ b/pulsar-common/src/main/java/org/apache/pulsar/common/topics/TopicCompactionStrategy.java
@@ -21,6 +21,8 @@
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 import org.apache.pulsar.client.api.Schema;
+import org.apache.pulsar.common.classification.InterfaceAudience;
+import org.apache.pulsar.common.classification.InterfaceStability;
 
 /**
  * Defines a custom strategy to compact messages in a topic.
@@ -45,6 +47,8 @@
  *                         "topicCompactionStrategyClassName", strategy.getClass().getCanonicalName()))
  *                 .create();
  */
+@InterfaceAudience.Private
+@InterfaceStability.Unstable
 public interface TopicCompactionStrategy<T> {
 
     String TABLE_VIEW_TAG = "table-view";