#ifndef THIRD_PARTY_BLINK_RENDERER_PLATFORM_NETWORK_NETWORK_UTILS_H_
#define THIRD_PARTY_BLINK_RENDERER_PLATFORM_NETWORK_NETWORK_UTILS_H_
#include <string>
#include <tuple>
#include "services/metrics/public/cpp/ukm_recorder.h"
#include "third_party/blink/renderer/platform/platform_export.h"
#include "third_party/blink/renderer/platform/wtf/forward.h"
namespace WTF {
class String;
}
namespace blink {
class KURL;
class ResourceResponse;
namespace network_utils {
enum PrivateRegistryFilter { … };
PLATFORM_EXPORT bool IsReservedIPAddress(const WTF::String& host);
PLATFORM_EXPORT WTF::String GetDomainAndRegistry(const WTF::String& host,
PrivateRegistryFilter);
PLATFORM_EXPORT std::tuple<int, ResourceResponse, scoped_refptr<SharedBuffer>>
ParseDataURL(const KURL&,
const WTF::String& method,
ukm::SourceId source_id = ukm::kInvalidSourceId,
ukm::UkmRecorder* recorder = nullptr);
PLATFORM_EXPORT bool IsDataURLMimeTypeSupported(
const KURL&,
std::string* data = nullptr,
std::string* mime_type = nullptr);
PLATFORM_EXPORT bool IsRedirectResponseCode(int);
PLATFORM_EXPORT bool IsCertificateTransparencyRequiredError(int);
PLATFORM_EXPORT WTF::String ExpandLanguageList(const WTF::String&);
PLATFORM_EXPORT WTF::String GenerateAcceptLanguageHeader(const WTF::String&);
PLATFORM_EXPORT Vector<char> ParseMultipartBoundary(
const AtomicString& content_type_header);
}
}
#endif