#ifndef BASE_BASE64_H_
#define BASE_BASE64_H_
#include <stdint.h>
#include <optional>
#include <string>
#include <string_view>
#include <vector>
#include "base/base_export.h"
#include "base/containers/span.h"
namespace base {
BASE_EXPORT std::string Base64Encode(span<const uint8_t> input);
BASE_EXPORT void Base64EncodeAppend(span<const uint8_t> input,
std::string* output);
BASE_EXPORT std::string Base64Encode(std::string_view input);
enum class Base64DecodePolicy { … };
BASE_EXPORT bool Base64Decode(
std::string_view input,
std::string* output,
Base64DecodePolicy policy = Base64DecodePolicy::kStrict);
BASE_EXPORT std::optional<std::vector<uint8_t>> Base64Decode(
std::string_view input);
}
#endif