#ifndef PRODUCTION_SUSHID_SAFEPOWER_AGENT_CONVERT_PROTO_H_
#define PRODUCTION_SUSHID_SAFEPOWER_AGENT_CONVERT_PROTO_H_

#include "google/protobuf/timestamp.pb.h"
#include "safepower_agent.pb.h"
#include "absl/status/status.h"
#include "absl/time/time.h"
namespace safepower_agent {
absl::Time ConvertTime(const google::protobuf::Timestamp& timestamp);
void SetTimestamp(google::protobuf::Timestamp& timestamp, absl::Time time);
void SetTimestampToNow(google::protobuf::Timestamp& timestamp);

void SetStatus(safepower_agent_proto::Status& status_proto,
               const absl::Status& status);
}  // namespace safepower_agent

#endif  // PRODUCTION_SUSHID_SAFEPOWER_AGENT_CONVERT_PROTO_H_
