#ifndef PLATFORM_BASE64_UTILS_H_ #define PLATFORM_BASE64_UTILS_H_ #include "platform/byte_array.h" #include "platform/port/string.h" #include "platform/ptr.h" namespace location { namespace nearby { class Base64Utils { public: static std::string encode(const std::string& input); static std::string encode(const ByteArray& bytes); static std::string encode(ConstPtr bytes); template static T decode(const std::string& base64_string); template <> Ptr decode(const std::string& base64_string); template <> ByteArray decode(const std::string& base64_string); static Ptr decode(const std::string& base64_string) { return decode>(base64_string); } }; } // namespace nearby } // namespace location #endif // PLATFORM_BASE64_UTILS_H_