#pragma once

#include <string>
#include <variant>
#include <type_traits>

namespace hack::security
{
  template<typename T>
  struct is_string : public std::disjunction<
                  std::is_same<char*, typename std::decay_t<T>>,
                  std::is_same<const char*, typename std::decay_t<T>>,
                  std::is_same<std::string, typename std::decay_t<T>>> {};
}
