1 #pragma once
2 
3 #include "types/duration_types.hpp"
4 #include "types/trigger_types.hpp"
5 
6 #include <cstdint>
7 #include <string>
8 
9 namespace interfaces
10 {
11 
12 class TriggerAction
13 {
14   public:
15     virtual ~TriggerAction() = default;
16 
17     virtual void commit(const std::string& triggerId,
18                         const ThresholdName thresholdName,
19                         const std::string& sensorId,
20                         const Milliseconds timestamp,
21                         const TriggerValue value) = 0;
22 };
23 } // namespace interfaces
24