diff --git a/presence/anyof.hpp b/presence/anyof.hpp
index 2e49552..d9f988d 100644
--- a/presence/anyof.hpp
+++ b/presence/anyof.hpp
@@ -30,10 +30,10 @@
 {
   public:
     AnyOf() = delete;
-    AnyOf(const AnyOf&) = default;
-    AnyOf& operator=(const AnyOf&) = default;
-    AnyOf(AnyOf&&) = default;
-    AnyOf& operator=(AnyOf&&) = default;
+    AnyOf(const AnyOf&) = delete;
+    AnyOf& operator=(const AnyOf&) = delete;
+    AnyOf(AnyOf&&) = delete;
+    AnyOf& operator=(AnyOf&&) = delete;
     ~AnyOf() = default;
 
     /**
diff --git a/presence/fallback.hpp b/presence/fallback.hpp
index b9e2cbd..7306d5e 100644
--- a/presence/fallback.hpp
+++ b/presence/fallback.hpp
@@ -28,10 +28,10 @@
 {
   public:
     Fallback() = delete;
-    Fallback(const Fallback&) = default;
-    Fallback& operator=(const Fallback&) = default;
-    Fallback(Fallback&&) = default;
-    Fallback& operator=(Fallback&&) = default;
+    Fallback(const Fallback&) = delete;
+    Fallback& operator=(const Fallback&) = delete;
+    Fallback(Fallback&&) = delete;
+    Fallback& operator=(Fallback&&) = delete;
     ~Fallback() = default;
 
     /**
diff --git a/presence/rpolicy.hpp b/presence/rpolicy.hpp
index 259a31b..94060f4 100644
--- a/presence/rpolicy.hpp
+++ b/presence/rpolicy.hpp
@@ -26,10 +26,10 @@
 class RedundancyPolicy
 {
   public:
-    RedundancyPolicy(const RedundancyPolicy&) = default;
-    RedundancyPolicy& operator=(const RedundancyPolicy&) = default;
-    RedundancyPolicy(RedundancyPolicy&&) = default;
-    RedundancyPolicy& operator=(RedundancyPolicy&&) = default;
+    RedundancyPolicy(const RedundancyPolicy&) = delete;
+    RedundancyPolicy& operator=(const RedundancyPolicy&) = delete;
+    RedundancyPolicy(RedundancyPolicy&&) = delete;
+    RedundancyPolicy& operator=(RedundancyPolicy&&) = delete;
     virtual ~RedundancyPolicy() = default;
 
     /**
