#pragma once

#include <nlohmann/json.hpp>
#include <string>

namespace softbus::api {

struct ExecuteCommand {
    std::string requestId;
    std::string traceId;
    std::string objectRef;
    std::string command;
    nlohmann::json params;

    static ExecuteCommand fromJson(const nlohmann::json& j);
    nlohmann::json toJson() const;
    bool validate(std::string* error) const;
};

} // namespace softbus::api
