diff --git a/events.hpp b/events.hpp
index 9ecb93a..ef9d085 100644
--- a/events.hpp
+++ b/events.hpp
@@ -14,8 +14,6 @@
 {
 
 class Manager;
-namespace details
-{
 using Filter = std::function <
                bool (sdbusplus::bus::bus&, sdbusplus::message::message&, Manager&) >;
 
@@ -98,12 +96,9 @@
 {
     return Filter(std::forward<T>(filter));
 }
-} // namespace details
 
 namespace filters
 {
-namespace details
-{
 namespace property_condition
 {
 
@@ -281,7 +276,6 @@
 };
 
 } // namespace property_condition
-} // namespace details
 
 /** @brief Implicit type deduction for constructing PropertyChangedCondition.  */
 template <typename T>
@@ -295,7 +289,7 @@
         return arg == val;
     };
     using U = decltype(condition);
-    return details::property_condition::PropertyChangedCondition<T, U>(
+    return property_condition::PropertyChangedCondition<T, U>(
                iface, property, std::move(condition));
 }
 
@@ -313,7 +307,7 @@
         return arg == val;
     };
     using U = decltype(condition);
-    return details::property_condition::PropertyCondition<T, U>(
+    return property_condition::PropertyCondition<T, U>(
                path, iface, property, std::move(condition), service);
 }
 
