blob: 5587019a290c2b90d0e46c05acf557916fb7db20 [file] [log] [blame]
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;
};