diff --git a/src/NotifyWatch.hpp b/src/NotifyWatch.hpp
new file mode 100644
index 0000000..1e1b33e
--- /dev/null
+++ b/src/NotifyWatch.hpp
@@ -0,0 +1,35 @@
+#pragma once
+
+#include <sdbusplus/async.hpp>
+
+#include <cerrno>
+#include <cstring>
+#include <functional>
+#include <memory>
+#include <string>
+
+namespace notify_watch
+{
+
+class NotifyWatch
+{
+  public:
+    using Callback_t = std::function<sdbusplus::async::task<>(std::string)>;
+
+    NotifyWatch() = delete;
+    explicit NotifyWatch(sdbusplus::async::context& ctx, const std::string& dir,
+                         Callback_t callback);
+    ~NotifyWatch();
+
+    /** @brief Asynchronously watch and notify for any changes to dir */
+    auto readNotifyAsync() -> sdbusplus::async::task<>;
+
+  private:
+    sdbusplus::async::context& ctx;
+    Callback_t callback;
+    int wd = -1;
+    int fd = -1;
+    std::unique_ptr<sdbusplus::async::fdio> fdioInstance;
+};
+
+} // namespace notify_watch
