| partial interface Element { |
| [SameObject] readonly attribute CSSToggleMap toggles; |
| }; |
| |
| interface CSSToggleMap { |
| maplike<DOMString, CSSToggle>; |
| CSSToggleMap set(DOMString key, CSSToggle value); |
| }; |
| |
| interface CSSToggle { |
| attribute (unsigned long or DOMString) value; |
| attribute unsigned long? valueAsNumber; |
| attribute DOMString? valueAsString; |
| |
| attribute (unsigned long or FrozenArray<DOMString>) states; |
| attribute boolean group; |
| attribute CSSToggleScope scope; |
| attribute CSSToggleCycle cycle; |
| |
| constructor(optional CSSToggleData options); |
| }; |
| |
| dictionary CSSToggleData { |
| (unsigned long or DOMString) value = 0; |
| (unsigned long or sequence<DOMString>) states = 1; |
| boolean group = false; |
| CSSToggleScope scope = "wide"; |
| CSSToggleCycle cycle = "cycle"; |
| }; |
| |
| enum CSSToggleScope { |
| "narrow", |
| "wide", |
| }; |
| |
| enum CSSToggleCycle { |
| "cycle", |
| "cycle-on", |
| "sticky", |
| }; |
| |
| interface CSSToggleEvent : Event { |
| constructor(DOMString type, optional CSSToggleEventInit eventInitDict = {}); |
| readonly attribute DOMString toggleName; |
| readonly attribute CSSToggle? toggle; |
| }; |
| |
| dictionary CSSToggleEventInit : EventInit { |
| DOMString toggleName = ""; |
| CSSToggle? toggle = null; |
| }; |