| 
									
										
										
										
											2024-06-24 21:54:42 +01:00
										 |  |  | #import <DOM/ShadowRoot.idl> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // https://html.spec.whatwg.org/multipage/custom-elements.html#elementinternals | 
					
						
							|  |  |  | [Exposed=Window] | 
					
						
							|  |  |  | interface ElementInternals { | 
					
						
							|  |  |  |     // Shadow root access | 
					
						
							|  |  |  |     readonly attribute ShadowRoot? shadowRoot; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // Form-associated custom elements | 
					
						
							| 
									
										
										
										
											2025-03-31 01:43:20 -07:00
										 |  |  |     undefined setFormValue((File or USVString or FormData)? value, | 
					
						
							| 
									
										
										
										
											2024-06-24 21:54:42 +01:00
										 |  |  |                             optional (File or USVString or FormData)? state); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-03-31 01:43:20 -07:00
										 |  |  |     readonly attribute HTMLFormElement? form; | 
					
						
							| 
									
										
										
										
											2024-06-24 21:54:42 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-03-31 01:43:20 -07:00
										 |  |  |     undefined setValidity(optional ValidityStateFlags flags = {}, | 
					
						
							| 
									
										
										
										
											2024-06-24 21:54:42 +01:00
										 |  |  |                           optional DOMString message, | 
					
						
							|  |  |  |                           optional HTMLElement anchor); | 
					
						
							| 
									
										
										
										
											2025-03-31 01:43:20 -07:00
										 |  |  |     readonly attribute boolean willValidate; | 
					
						
							|  |  |  |     readonly attribute ValidityState validity; | 
					
						
							|  |  |  |     readonly attribute DOMString validationMessage; | 
					
						
							|  |  |  |     boolean checkValidity(); | 
					
						
							|  |  |  |     boolean reportValidity(); | 
					
						
							| 
									
										
										
										
											2024-06-24 21:54:42 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-03-31 01:43:20 -07:00
										 |  |  |     readonly attribute NodeList labels; | 
					
						
							| 
									
										
										
										
											2024-06-24 21:54:42 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  |     // Custom state pseudo-class | 
					
						
							|  |  |  |     [FIXME, SameObject] readonly attribute CustomStateSet states; | 
					
						
							|  |  |  | }; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | // Accessibility semantics | 
					
						
							|  |  |  | // ElementInternals includes ARIAMixin; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | dictionary ValidityStateFlags { | 
					
						
							|  |  |  |     boolean valueMissing = false; | 
					
						
							|  |  |  |     boolean typeMismatch = false; | 
					
						
							|  |  |  |     boolean patternMismatch = false; | 
					
						
							|  |  |  |     boolean tooLong = false; | 
					
						
							|  |  |  |     boolean tooShort = false; | 
					
						
							|  |  |  |     boolean rangeUnderflow = false; | 
					
						
							|  |  |  |     boolean rangeOverflow = false; | 
					
						
							|  |  |  |     boolean stepMismatch = false; | 
					
						
							|  |  |  |     boolean badInput = false; | 
					
						
							|  |  |  |     boolean customError = false; | 
					
						
							|  |  |  | }; |