| 
									
										
										
										
											2022-09-24 14:02:47 +01:00
										 |  |  | /*
 | 
					
						
							| 
									
										
										
										
											2023-01-18 17:41:12 +00:00
										 |  |  |  * Copyright (c) 2022-2023, Linus Groh <linusg@serenityos.org> | 
					
						
							| 
									
										
										
										
											2022-09-24 14:02:47 +01:00
										 |  |  |  * | 
					
						
							|  |  |  |  * SPDX-License-Identifier: BSD-2-Clause | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #pragma once
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #include <AK/Forward.h>
 | 
					
						
							| 
									
										
										
										
											2023-02-25 10:42:45 -07:00
										 |  |  | #include <AK/Variant.h>
 | 
					
						
							| 
									
										
										
										
											2022-09-24 14:02:47 +01:00
										 |  |  | #include <LibJS/Forward.h>
 | 
					
						
							|  |  |  | #include <LibWeb/Forward.h>
 | 
					
						
							|  |  |  | #include <LibWeb/HTML/CrossOrigin/CrossOriginPropertyDescriptorMap.h>
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | namespace Web::HTML { | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-01-18 17:41:12 +00:00
										 |  |  | Vector<CrossOriginProperty> cross_origin_properties(Variant<HTML::Location const*, HTML::Window const*> const&); | 
					
						
							| 
									
										
										
										
											2022-09-24 14:02:47 +01:00
										 |  |  | bool is_cross_origin_accessible_window_property_name(JS::PropertyKey const&); | 
					
						
							|  |  |  | JS::ThrowCompletionOr<JS::PropertyDescriptor> cross_origin_property_fallback(JS::VM&, JS::PropertyKey const&); | 
					
						
							|  |  |  | bool is_platform_object_same_origin(JS::Object const&); | 
					
						
							| 
									
										
										
										
											2023-01-18 17:41:12 +00:00
										 |  |  | Optional<JS::PropertyDescriptor> cross_origin_get_own_property_helper(Variant<HTML::Location*, HTML::Window*> const&, JS::PropertyKey const&); | 
					
						
							| 
									
										
										
										
											2022-09-24 14:02:47 +01:00
										 |  |  | JS::ThrowCompletionOr<JS::Value> cross_origin_get(JS::VM&, JS::Object const&, JS::PropertyKey const&, JS::Value receiver); | 
					
						
							|  |  |  | JS::ThrowCompletionOr<bool> cross_origin_set(JS::VM&, JS::Object&, JS::PropertyKey const&, JS::Value, JS::Value receiver); | 
					
						
							| 
									
										
										
										
											2025-05-16 04:14:12 +01:00
										 |  |  | GC::RootVector<JS::Value> cross_origin_own_property_keys(Variant<HTML::Location const*, HTML::Window const*> const&); | 
					
						
							| 
									
										
										
										
											2022-09-24 14:02:47 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | } |