#ifndef THIRD_PARTY_BLINK_PUBLIC_COMMON_FENCED_FRAME_FENCED_FRAME_UTILS_H_
#define THIRD_PARTY_BLINK_PUBLIC_COMMON_FENCED_FRAME_FENCED_FRAME_UTILS_H_
#include <optional>
#include "services/network/public/cpp/web_sandbox_flags.h"
#include "services/network/public/mojom/web_sandbox_flags.mojom-shared.h"
#include "third_party/blink/public/common/common_export.h"
class GURL;
namespace blink {
const size_t kFencedFrameMaxBeaconLength = …;
const size_t kFencedFrameConfigSharedStorageContextMaxLength = …;
inline constexpr char kFencedFrameCreationOrNavigationOutcomeHistogram[] = …;
inline constexpr char kIsOpaqueFencedFrameSizeCoercedHistogram[] = …;
inline constexpr char kIsFencedFrameResizedAfterSizeFrozen[] = …;
inline constexpr char kFencedFrameMandatoryUnsandboxedFlagsSandboxed[] = …;
inline constexpr char kFencedFrameFailedSandboxLoadInTopLevelFrame[] = …;
inline constexpr char kFencedFrameTopNavigationHistogram[] = …;
inline constexpr char kAutomaticBeaconOutcomeHistogram[] = …;
inline constexpr char kAutomaticBeaconEventTypeHistogram[] = …;
inline constexpr char kFencedFrameBeaconReportingHttpResultUMA[] = …;
inline constexpr char kFencedFrameBeaconReportingCountUMA[] = …;
inline constexpr char kFencedFrameBeaconReportingCountCrossOriginUMA[] = …;
enum class FencedFrameCreationOutcome { … };
enum class AutomaticBeaconOutcome { … };
enum class FencedFrameNavigationState { … };
enum class FencedFrameBeaconReportingResult { … };
BLINK_COMMON_EXPORT bool IsValidFencedFrameURL(const GURL& url);
BLINK_COMMON_EXPORT bool IsValidUrnUuidURL(const GURL& url);
BLINK_COMMON_EXPORT void RecordFencedFrameCreationOutcome(
const FencedFrameCreationOutcome outcome);
BLINK_COMMON_EXPORT void RecordOpaqueFencedFrameSizeCoercion(bool did_coerce);
BLINK_COMMON_EXPORT void RecordFencedFrameResizedAfterSizeFrozen();
BLINK_COMMON_EXPORT void RecordFencedFrameUnsandboxedFlags(
network::mojom::WebSandboxFlags flags);
BLINK_COMMON_EXPORT void RecordFencedFrameFailedSandboxLoadInTopLevelFrame(
bool is_main_frame);
BLINK_COMMON_EXPORT bool CanNotifyEventTypeAcrossFence(
const std::string& event_type);
inline constexpr char kDeprecatedFencedFrameTopNavigationBeaconType[] = …;
inline constexpr char kFencedFrameTopNavigationStartBeaconType[] = …;
inline constexpr char kFencedFrameTopNavigationCommitBeaconType[] = …;
inline constexpr const char* kFencedFrameAutomaticBeaconTypes[] = …;
inline constexpr char kFencedFrameReservedPAEventPrefix[] = …;
}
#endif