chromium/third_party/blink/public/common/user_agent/user_agent_metadata.h

// Copyright 2019 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef THIRD_PARTY_BLINK_PUBLIC_COMMON_USER_AGENT_USER_AGENT_METADATA_H_
#define THIRD_PARTY_BLINK_PUBLIC_COMMON_USER_AGENT_USER_AGENT_METADATA_H_

#include <optional>
#include <string>
#include <vector>

#include "third_party/blink/public/common/common_export.h"

namespace blink {

// Values for the Sec-CH-UA-Form-Factors header.
// https://wicg.github.io/ua-client-hints/#sec-ch-ua-form-factors
// LINT.IfChange
inline constexpr char kDesktopFormFactor[] =;
inline constexpr char kAutomotiveFormFactor[] =;
inline constexpr char kMobileFormFactor[] =;
inline constexpr char kTabletFormFactor[] =;
inline constexpr char kXRFormFactor[] =;
inline constexpr char kEInkFormFactor[] =;
inline constexpr char kWatchFormFactor[] =;
// LINT.ThenChange(/android_webview/java/src/org/chromium/android_webview/client_hints/AwUserAgentMetadata.java)

struct BLINK_COMMON_EXPORT UserAgentBrandVersion {};

UserAgentBrandList;

struct BLINK_COMMON_EXPORT UserAgentMetadata {};

// Used when customizing the sent User-Agent and Sec-CH-UA-* for
// features like "request desktop site", which override those from defaults
// for some individual navigations. WebContents::SetUserAgentOverride()
// is the main entry point used for the functionality.
struct BLINK_COMMON_EXPORT UserAgentOverride {};

bool BLINK_COMMON_EXPORT operator==(const UserAgentMetadata& a,
                                    const UserAgentMetadata& b);

bool BLINK_COMMON_EXPORT operator==(const UserAgentOverride& a,
                                    const UserAgentOverride& b);

}  // namespace blink

#endif  // THIRD_PARTY_BLINK_PUBLIC_COMMON_USER_AGENT_USER_AGENT_METADATA_H_