diff --git a/Userland/Libraries/LibWeb/HTML/CrossOrigin/CrossOriginOpenerPolicyEnforcementResult.h b/Userland/Libraries/LibWeb/HTML/CrossOrigin/CrossOriginOpenerPolicyEnforcementResult.h
new file mode 100644
index 0000000000..50e58875a9
--- /dev/null
+++ b/Userland/Libraries/LibWeb/HTML/CrossOrigin/CrossOriginOpenerPolicyEnforcementResult.h
@@ -0,0 +1,35 @@
+/*
+ * Copyright (c) 2022, Andreas Kling
+ *
+ * SPDX-License-Identifier: BSD-2-Clause
+ */
+
+#pragma once
+
+#include
+#include
+
+namespace Web::HTML {
+
+// https://html.spec.whatwg.org/multipage/origin.html#coop-enforcement-result
+struct CrossOriginOpenerPolicyEnforcementResult {
+ // A boolean needs a browsing context group switch, initially false.
+ bool needs_a_browsing_context_group_switch { false };
+
+ // A boolean would need a browsing context group switch due to report-only, initially false.
+ bool would_need_a_browsing_context_group_switch_due_to_report_only { false };
+
+ // A URL url.
+ AK::URL url;
+
+ // An origin origin.
+ Origin origin;
+
+ // A cross-origin opener policy cross-origin opener policy.
+ CrossOriginOpenerPolicy cross_origin_opener_policy;
+
+ // A boolean current context is navigation source.
+ bool current_context_is_navigation_source { false };
+};
+
+}