feat: add idl definitions

This commit is contained in:
Mikael Sand
2019-08-05 02:02:11 +03:00
parent fe419f6ea7
commit b7e57ddc27
7 changed files with 1070 additions and 0 deletions
+22
View File
@@ -0,0 +1,22 @@
interface CSSFontFaceRule : CSSRule {
readonly attribute CSSStyleDeclaration style;
};
partial interface CSSStyleDeclaration {
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString fontFamily;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString fontWeight;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString fontStretch;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString fontStyle;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString fontSize;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString fontSizeAdjust;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString font;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString fontSynthesis;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString fontKerning;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString fontVariantLigatures;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString fontVariantPosition;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString fontVariantCaps;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString fontVariantNumeric;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString fontVariantEastAsian;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString fontVariant;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString fontFeatureSettings;
};
+12
View File
@@ -0,0 +1,12 @@
partial interface CSSStyleDeclaration {
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString textDecorationLine;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString textDecorationStyle;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString textDecorationColor;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString textDecoration;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString textUnderlinePosition;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString textEmphasisStyle;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString textEmphasisColor;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString textEmphasis;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString textEmphasisPosition;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString textShadow;
};
+18
View File
@@ -0,0 +1,18 @@
partial interface CSSStyleDeclaration {
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString textTransform;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString whiteSpace;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString tabSize;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString wordBreak;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString lineBreak;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString hyphens;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString overflowWrap;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString wordWrap;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString textAlign;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString textAlignAll;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString textAlignLast;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString textJustify;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString wordSpacing;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString letterSpacing;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString textIndent;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString hangingPunctuation;
};
+5
View File
@@ -0,0 +1,5 @@
partial interface CSSStyleDeclaration {
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString transform;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString transformOrigin;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString transformBox;
};
+8
View File
@@ -0,0 +1,8 @@
partial interface CSSStyleDeclaration {
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString direction;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString unicodeBidi;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString writingMode;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString textOrientation;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString glyphOrientationVertical;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString textCombineUpright;
};
+317
View File
@@ -0,0 +1,317 @@
interface SVGFilterElement : SVGElement {
readonly attribute SVGAnimatedEnumeration filterUnits;
readonly attribute SVGAnimatedEnumeration primitiveUnits;
readonly attribute SVGAnimatedLength x;
readonly attribute SVGAnimatedLength y;
readonly attribute SVGAnimatedLength width;
readonly attribute SVGAnimatedLength height;
};
SVGFilterElement includes SVGURIReference;
interface mixin SVGFilterPrimitiveStandardAttributes {
readonly attribute SVGAnimatedLength x;
readonly attribute SVGAnimatedLength y;
readonly attribute SVGAnimatedLength width;
readonly attribute SVGAnimatedLength height;
readonly attribute SVGAnimatedString result;
};
interface SVGFEBlendElement : SVGElement {
// Blend Mode Types
const unsigned short SVG_FEBLEND_MODE_UNKNOWN = 0;
const unsigned short SVG_FEBLEND_MODE_NORMAL = 1;
const unsigned short SVG_FEBLEND_MODE_MULTIPLY = 2;
const unsigned short SVG_FEBLEND_MODE_SCREEN = 3;
const unsigned short SVG_FEBLEND_MODE_DARKEN = 4;
const unsigned short SVG_FEBLEND_MODE_LIGHTEN = 5;
const unsigned short SVG_FEBLEND_MODE_OVERLAY = 6;
const unsigned short SVG_FEBLEND_MODE_COLOR_DODGE = 7;
const unsigned short SVG_FEBLEND_MODE_COLOR_BURN = 8;
const unsigned short SVG_FEBLEND_MODE_HARD_LIGHT = 9;
const unsigned short SVG_FEBLEND_MODE_SOFT_LIGHT = 10;
const unsigned short SVG_FEBLEND_MODE_DIFFERENCE = 11;
const unsigned short SVG_FEBLEND_MODE_EXCLUSION = 12;
const unsigned short SVG_FEBLEND_MODE_HUE = 13;
const unsigned short SVG_FEBLEND_MODE_SATURATION = 14;
const unsigned short SVG_FEBLEND_MODE_COLOR = 15;
const unsigned short SVG_FEBLEND_MODE_LUMINOSITY = 16;
readonly attribute SVGAnimatedString in1;
readonly attribute SVGAnimatedString in2;
readonly attribute SVGAnimatedEnumeration mode;
};
SVGFEBlendElement includes SVGFilterPrimitiveStandardAttributes;
interface SVGFEColorMatrixElement : SVGElement {
// Color Matrix Types
const unsigned short SVG_FECOLORMATRIX_TYPE_UNKNOWN = 0;
const unsigned short SVG_FECOLORMATRIX_TYPE_MATRIX = 1;
const unsigned short SVG_FECOLORMATRIX_TYPE_SATURATE = 2;
const unsigned short SVG_FECOLORMATRIX_TYPE_HUEROTATE = 3;
const unsigned short SVG_FECOLORMATRIX_TYPE_LUMINANCETOALPHA = 4;
readonly attribute SVGAnimatedString in1;
readonly attribute SVGAnimatedEnumeration type;
readonly attribute SVGAnimatedNumberList values;
};
SVGFEColorMatrixElement includes SVGFilterPrimitiveStandardAttributes;
interface SVGFEComponentTransferElement : SVGElement {
readonly attribute SVGAnimatedString in1;
};
SVGFEComponentTransferElement includes SVGFilterPrimitiveStandardAttributes;
interface SVGComponentTransferFunctionElement : SVGElement {
// Component Transfer Types
const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_UNKNOWN = 0;
const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_IDENTITY = 1;
const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_TABLE = 2;
const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_DISCRETE = 3;
const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_LINEAR = 4;
const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_GAMMA = 5;
readonly attribute SVGAnimatedEnumeration type;
readonly attribute SVGAnimatedNumberList tableValues;
readonly attribute SVGAnimatedNumber slope;
readonly attribute SVGAnimatedNumber intercept;
readonly attribute SVGAnimatedNumber amplitude;
readonly attribute SVGAnimatedNumber exponent;
readonly attribute SVGAnimatedNumber offset;
};
interface SVGFEFuncRElement : SVGComponentTransferFunctionElement {
};
interface SVGFEFuncGElement : SVGComponentTransferFunctionElement {
};
interface SVGFEFuncBElement : SVGComponentTransferFunctionElement {
};
interface SVGFEFuncAElement : SVGComponentTransferFunctionElement {
};
interface SVGFECompositeElement : SVGElement {
// Composite Operators
const unsigned short SVG_FECOMPOSITE_OPERATOR_UNKNOWN = 0;
const unsigned short SVG_FECOMPOSITE_OPERATOR_OVER = 1;
const unsigned short SVG_FECOMPOSITE_OPERATOR_IN = 2;
const unsigned short SVG_FECOMPOSITE_OPERATOR_OUT = 3;
const unsigned short SVG_FECOMPOSITE_OPERATOR_ATOP = 4;
const unsigned short SVG_FECOMPOSITE_OPERATOR_XOR = 5;
const unsigned short SVG_FECOMPOSITE_OPERATOR_ARITHMETIC = 6;
readonly attribute SVGAnimatedString in1;
readonly attribute SVGAnimatedString in2;
readonly attribute SVGAnimatedEnumeration operator;
readonly attribute SVGAnimatedNumber k1;
readonly attribute SVGAnimatedNumber k2;
readonly attribute SVGAnimatedNumber k3;
readonly attribute SVGAnimatedNumber k4;
};
SVGFECompositeElement includes SVGFilterPrimitiveStandardAttributes;
interface SVGFEConvolveMatrixElement : SVGElement {
// Edge Mode Values
const unsigned short SVG_EDGEMODE_UNKNOWN = 0;
const unsigned short SVG_EDGEMODE_DUPLICATE = 1;
const unsigned short SVG_EDGEMODE_WRAP = 2;
const unsigned short SVG_EDGEMODE_NONE = 3;
readonly attribute SVGAnimatedString in1;
readonly attribute SVGAnimatedInteger orderX;
readonly attribute SVGAnimatedInteger orderY;
readonly attribute SVGAnimatedNumberList kernelMatrix;
readonly attribute SVGAnimatedNumber divisor;
readonly attribute SVGAnimatedNumber bias;
readonly attribute SVGAnimatedInteger targetX;
readonly attribute SVGAnimatedInteger targetY;
readonly attribute SVGAnimatedEnumeration edgeMode;
readonly attribute SVGAnimatedNumber kernelUnitLengthX;
readonly attribute SVGAnimatedNumber kernelUnitLengthY;
readonly attribute SVGAnimatedBoolean preserveAlpha;
};
SVGFEConvolveMatrixElement includes SVGFilterPrimitiveStandardAttributes;
interface SVGFEDiffuseLightingElement : SVGElement {
readonly attribute SVGAnimatedString in1;
readonly attribute SVGAnimatedNumber surfaceScale;
readonly attribute SVGAnimatedNumber diffuseConstant;
readonly attribute SVGAnimatedNumber kernelUnitLengthX;
readonly attribute SVGAnimatedNumber kernelUnitLengthY;
};
SVGFEDiffuseLightingElement includes SVGFilterPrimitiveStandardAttributes;
interface SVGFEDistantLightElement : SVGElement {
readonly attribute SVGAnimatedNumber azimuth;
readonly attribute SVGAnimatedNumber elevation;
};
interface SVGFEPointLightElement : SVGElement {
readonly attribute SVGAnimatedNumber x;
readonly attribute SVGAnimatedNumber y;
readonly attribute SVGAnimatedNumber z;
};
interface SVGFESpotLightElement : SVGElement {
readonly attribute SVGAnimatedNumber x;
readonly attribute SVGAnimatedNumber y;
readonly attribute SVGAnimatedNumber z;
readonly attribute SVGAnimatedNumber pointsAtX;
readonly attribute SVGAnimatedNumber pointsAtY;
readonly attribute SVGAnimatedNumber pointsAtZ;
readonly attribute SVGAnimatedNumber specularExponent;
readonly attribute SVGAnimatedNumber limitingConeAngle;
};
interface SVGFEDisplacementMapElement : SVGElement {
// Channel Selectors
const unsigned short SVG_CHANNEL_UNKNOWN = 0;
const unsigned short SVG_CHANNEL_R = 1;
const unsigned short SVG_CHANNEL_G = 2;
const unsigned short SVG_CHANNEL_B = 3;
const unsigned short SVG_CHANNEL_A = 4;
readonly attribute SVGAnimatedString in1;
readonly attribute SVGAnimatedString in2;
readonly attribute SVGAnimatedNumber scale;
readonly attribute SVGAnimatedEnumeration xChannelSelector;
readonly attribute SVGAnimatedEnumeration yChannelSelector;
};
SVGFEDisplacementMapElement includes SVGFilterPrimitiveStandardAttributes;
interface SVGFEDropShadowElement : SVGElement {
readonly attribute SVGAnimatedString in1;
readonly attribute SVGAnimatedNumber dx;
readonly attribute SVGAnimatedNumber dy;
readonly attribute SVGAnimatedNumber stdDeviationX;
readonly attribute SVGAnimatedNumber stdDeviationY;
void setStdDeviation(float stdDeviationX, float stdDeviationY);
};
SVGFEDropShadowElement includes SVGFilterPrimitiveStandardAttributes;
interface SVGFEFloodElement : SVGElement {
};
SVGFEFloodElement includes SVGFilterPrimitiveStandardAttributes;
interface SVGFEGaussianBlurElement : SVGElement {
// Edge Mode Values
const unsigned short SVG_EDGEMODE_UNKNOWN = 0;
const unsigned short SVG_EDGEMODE_DUPLICATE = 1;
const unsigned short SVG_EDGEMODE_WRAP = 2;
const unsigned short SVG_EDGEMODE_NONE = 3;
readonly attribute SVGAnimatedString in1;
readonly attribute SVGAnimatedNumber stdDeviationX;
readonly attribute SVGAnimatedNumber stdDeviationY;
readonly attribute SVGAnimatedEnumeration edgeMode;
void setStdDeviation(float stdDeviationX, float stdDeviationY);
};
SVGFEGaussianBlurElement includes SVGFilterPrimitiveStandardAttributes;
interface SVGFEImageElement : SVGElement {
readonly attribute SVGAnimatedPreserveAspectRatio preserveAspectRatio;
readonly attribute SVGAnimatedString crossOrigin;
};
SVGFEImageElement includes SVGFilterPrimitiveStandardAttributes;
SVGFEImageElement includes SVGURIReference;
interface SVGFEMergeElement : SVGElement {
};
SVGFEMergeElement includes SVGFilterPrimitiveStandardAttributes;
interface SVGFEMergeNodeElement : SVGElement {
readonly attribute SVGAnimatedString in1;
};
interface SVGFEMorphologyElement : SVGElement {
// Morphology Operators
const unsigned short SVG_MORPHOLOGY_OPERATOR_UNKNOWN = 0;
const unsigned short SVG_MORPHOLOGY_OPERATOR_ERODE = 1;
const unsigned short SVG_MORPHOLOGY_OPERATOR_DILATE = 2;
readonly attribute SVGAnimatedString in1;
readonly attribute SVGAnimatedEnumeration operator;
readonly attribute SVGAnimatedNumber radiusX;
readonly attribute SVGAnimatedNumber radiusY;
};
SVGFEMorphologyElement includes SVGFilterPrimitiveStandardAttributes;
interface SVGFEOffsetElement : SVGElement {
readonly attribute SVGAnimatedString in1;
readonly attribute SVGAnimatedNumber dx;
readonly attribute SVGAnimatedNumber dy;
};
SVGFEOffsetElement includes SVGFilterPrimitiveStandardAttributes;
interface SVGFESpecularLightingElement : SVGElement {
readonly attribute SVGAnimatedString in1;
readonly attribute SVGAnimatedNumber surfaceScale;
readonly attribute SVGAnimatedNumber specularConstant;
readonly attribute SVGAnimatedNumber specularExponent;
readonly attribute SVGAnimatedNumber kernelUnitLengthX;
readonly attribute SVGAnimatedNumber kernelUnitLengthY;
};
SVGFESpecularLightingElement includes SVGFilterPrimitiveStandardAttributes;
interface SVGFETileElement : SVGElement {
readonly attribute SVGAnimatedString in1;
};
SVGFETileElement includes SVGFilterPrimitiveStandardAttributes;
interface SVGFETurbulenceElement : SVGElement {
// Turbulence Types
const unsigned short SVG_TURBULENCE_TYPE_UNKNOWN = 0;
const unsigned short SVG_TURBULENCE_TYPE_FRACTALNOISE = 1;
const unsigned short SVG_TURBULENCE_TYPE_TURBULENCE = 2;
// Stitch Options
const unsigned short SVG_STITCHTYPE_UNKNOWN = 0;
const unsigned short SVG_STITCHTYPE_STITCH = 1;
const unsigned short SVG_STITCHTYPE_NOSTITCH = 2;
readonly attribute SVGAnimatedNumber baseFrequencyX;
readonly attribute SVGAnimatedNumber baseFrequencyY;
readonly attribute SVGAnimatedInteger numOctaves;
readonly attribute SVGAnimatedNumber seed;
readonly attribute SVGAnimatedEnumeration stitchTiles;
readonly attribute SVGAnimatedEnumeration type;
};
SVGFETurbulenceElement includes SVGFilterPrimitiveStandardAttributes;
partial interface CSSStyleDeclaration {
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString filter;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString floodColor;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString floodOpacity;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString colorInterpolationFilters;
[CEReactions] attribute [TreatNullAs=EmptyString] CSSOMString lightingColor;
};
+688
View File
@@ -0,0 +1,688 @@
[Exposed=Window]
interface SVGElement : Element {
[SameObject] readonly attribute SVGAnimatedString className;
readonly attribute SVGSVGElement? ownerSVGElement;
readonly attribute SVGElement? viewportElement;
};
SVGElement includes GlobalEventHandlers;
SVGElement includes DocumentAndElementEventHandlers;
SVGElement includes SVGElementInstance;
SVGElement includes HTMLOrSVGElement;
dictionary SVGBoundingBoxOptions {
boolean fill = true;
boolean stroke = false;
boolean markers = false;
boolean clipped = false;
};
interface SVGGraphicsElement : SVGElement {
[SameObject] readonly attribute SVGAnimatedTransformList transform;
DOMRect getBBox(optional SVGBoundingBoxOptions options);
DOMMatrix? getCTM();
DOMMatrix? getScreenCTM();
};
SVGGraphicsElement includes SVGTests;
[Exposed=Window]
interface SVGGeometryElement : SVGGraphicsElement {
[SameObject] readonly attribute SVGAnimatedNumber pathLength;
boolean isPointInFill(optional DOMPointInit point);
boolean isPointInStroke(optional DOMPointInit point);
float getTotalLength();
DOMPoint getPointAtLength(float distance);
};
[Exposed=Window]
interface SVGNumber {
attribute float value;
};
[Exposed=Window]
interface SVGLength {
// Length Unit Types
const unsigned short SVG_LENGTHTYPE_UNKNOWN = 0;
const unsigned short SVG_LENGTHTYPE_NUMBER = 1;
const unsigned short SVG_LENGTHTYPE_PERCENTAGE = 2;
const unsigned short SVG_LENGTHTYPE_EMS = 3;
const unsigned short SVG_LENGTHTYPE_EXS = 4;
const unsigned short SVG_LENGTHTYPE_PX = 5;
const unsigned short SVG_LENGTHTYPE_CM = 6;
const unsigned short SVG_LENGTHTYPE_MM = 7;
const unsigned short SVG_LENGTHTYPE_IN = 8;
const unsigned short SVG_LENGTHTYPE_PT = 9;
const unsigned short SVG_LENGTHTYPE_PC = 10;
readonly attribute unsigned short unitType;
attribute float value;
attribute float valueInSpecifiedUnits;
attribute DOMString valueAsString;
void newValueSpecifiedUnits(unsigned short unitType, float valueInSpecifiedUnits);
void convertToSpecifiedUnits(unsigned short unitType);
};
[Exposed=Window]
interface SVGAngle {
// Angle Unit Types
const unsigned short SVG_ANGLETYPE_UNKNOWN = 0;
const unsigned short SVG_ANGLETYPE_UNSPECIFIED = 1;
const unsigned short SVG_ANGLETYPE_DEG = 2;
const unsigned short SVG_ANGLETYPE_RAD = 3;
const unsigned short SVG_ANGLETYPE_GRAD = 4;
readonly attribute unsigned short unitType;
attribute float value;
attribute float valueInSpecifiedUnits;
attribute DOMString valueAsString;
void newValueSpecifiedUnits(unsigned short unitType, float valueInSpecifiedUnits);
void convertToSpecifiedUnits(unsigned short unitType);
};
[Exposed=Window]
interface SVGNumberList {
readonly attribute unsigned long length;
readonly attribute unsigned long numberOfItems;
void clear();
SVGNumber initialize(SVGNumber newItem);
getter SVGNumber getItem(unsigned long index);
SVGNumber insertItemBefore(SVGNumber newItem, unsigned long index);
SVGNumber replaceItem(SVGNumber newItem, unsigned long index);
SVGNumber removeItem(unsigned long index);
SVGNumber appendItem(SVGNumber newItem);
setter void (unsigned long index, SVGNumber newItem);
};
[Exposed=Window]
interface SVGLengthList {
readonly attribute unsigned long length;
readonly attribute unsigned long numberOfItems;
void clear();
SVGLength initialize(SVGLength newItem);
getter SVGLength getItem(unsigned long index);
SVGLength insertItemBefore(SVGLength newItem, unsigned long index);
SVGLength replaceItem(SVGLength newItem, unsigned long index);
SVGLength removeItem(unsigned long index);
SVGLength appendItem(SVGLength newItem);
setter void (unsigned long index, SVGLength newItem);
};
[Exposed=Window]
interface SVGStringList {
readonly attribute unsigned long length;
readonly attribute unsigned long numberOfItems;
void clear();
DOMString initialize(DOMString newItem);
getter DOMString getItem(unsigned long index);
DOMString insertItemBefore(DOMString newItem, unsigned long index);
DOMString replaceItem(DOMString newItem, unsigned long index);
DOMString removeItem(unsigned long index);
DOMString appendItem(DOMString newItem);
setter void (unsigned long index, DOMString newItem);
};
[Exposed=Window]
interface SVGAnimatedBoolean {
attribute boolean baseVal;
readonly attribute boolean animVal;
};
[Exposed=Window]
interface SVGAnimatedEnumeration {
attribute unsigned short baseVal;
readonly attribute unsigned short animVal;
};
[Exposed=Window]
interface SVGAnimatedInteger {
attribute long baseVal;
readonly attribute long animVal;
};
[Exposed=Window]
interface SVGAnimatedNumber {
attribute float baseVal;
readonly attribute float animVal;
};
[Exposed=Window]
interface SVGAnimatedLength {
[SameObject] readonly attribute SVGLength baseVal;
[SameObject] readonly attribute SVGLength animVal;
};
[Exposed=Window]
interface SVGAnimatedAngle {
[SameObject] readonly attribute SVGAngle baseVal;
[SameObject] readonly attribute SVGAngle animVal;
};
[Exposed=Window]
interface SVGAnimatedString {
attribute DOMString baseVal;
readonly attribute DOMString animVal;
};
[Exposed=Window]
interface SVGAnimatedRect {
[SameObject] readonly attribute DOMRect baseVal;
[SameObject] readonly attribute DOMRectReadOnly animVal;
};
[Exposed=Window]
interface SVGAnimatedNumberList {
[SameObject] readonly attribute SVGNumberList baseVal;
[SameObject] readonly attribute SVGNumberList animVal;
};
[Exposed=Window]
interface SVGAnimatedLengthList {
[SameObject] readonly attribute SVGLengthList baseVal;
[SameObject] readonly attribute SVGLengthList animVal;
};
[Exposed=Window]
interface SVGUnitTypes {
// Unit Types
const unsigned short SVG_UNIT_TYPE_UNKNOWN = 0;
const unsigned short SVG_UNIT_TYPE_USERSPACEONUSE = 1;
const unsigned short SVG_UNIT_TYPE_OBJECTBOUNDINGBOX = 2;
};
interface mixin SVGTests {
[SameObject] readonly attribute SVGStringList requiredExtensions;
[SameObject] readonly attribute SVGStringList systemLanguage;
};
interface mixin SVGFitToViewBox {
[SameObject] readonly attribute SVGAnimatedRect viewBox;
[SameObject] readonly attribute SVGAnimatedPreserveAspectRatio preserveAspectRatio;
};
interface mixin SVGZoomAndPan {
// Zoom and Pan Types
const unsigned short SVG_ZOOMANDPAN_UNKNOWN = 0;
const unsigned short SVG_ZOOMANDPAN_DISABLE = 1;
const unsigned short SVG_ZOOMANDPAN_MAGNIFY = 2;
attribute unsigned short zoomAndPan;
};
interface mixin SVGURIReference {
[SameObject] readonly attribute SVGAnimatedString href;
};
partial interface Document {
readonly attribute SVGSVGElement? rootElement;
};
[Exposed=Window]
interface SVGSVGElement : SVGGraphicsElement {
[SameObject] readonly attribute SVGAnimatedLength x;
[SameObject] readonly attribute SVGAnimatedLength y;
[SameObject] readonly attribute SVGAnimatedLength width;
[SameObject] readonly attribute SVGAnimatedLength height;
attribute float currentScale;
[SameObject] readonly attribute DOMPointReadOnly currentTranslate;
NodeList getIntersectionList(DOMRectReadOnly rect, SVGElement? referenceElement);
NodeList getEnclosureList(DOMRectReadOnly rect, SVGElement? referenceElement);
boolean checkIntersection(SVGElement element, DOMRectReadOnly rect);
boolean checkEnclosure(SVGElement element, DOMRectReadOnly rect);
void deselectAll();
SVGNumber createSVGNumber();
SVGLength createSVGLength();
SVGAngle createSVGAngle();
DOMPoint createSVGPoint();
DOMMatrix createSVGMatrix();
DOMRect createSVGRect();
SVGTransform createSVGTransform();
SVGTransform createSVGTransformFromMatrix(optional DOMMatrix2DInit matrix);
Element getElementById(DOMString elementId);
// Deprecated methods that have no effect when called,
// but which are kept for compatibility reasons.
unsigned long suspendRedraw(unsigned long maxWaitMilliseconds);
void unsuspendRedraw(unsigned long suspendHandleID);
void unsuspendRedrawAll();
void forceRedraw();
};
SVGSVGElement includes SVGFitToViewBox;
SVGSVGElement includes SVGZoomAndPan;
SVGSVGElement includes WindowEventHandlers;
[Exposed=Window]
interface SVGGElement : SVGGraphicsElement {
};
[Exposed=Window]
interface SVGDefsElement : SVGGraphicsElement {
};
[Exposed=Window]
interface SVGDescElement : SVGElement {
};
[Exposed=Window]
interface SVGMetadataElement : SVGElement {
};
[Exposed=Window]
interface SVGTitleElement : SVGElement {
};
[Exposed=Window]
interface SVGSymbolElement : SVGGraphicsElement {
};
SVGSymbolElement includes SVGFitToViewBox;
[Exposed=Window]
interface SVGUseElement : SVGGraphicsElement {
[SameObject] readonly attribute SVGAnimatedLength x;
[SameObject] readonly attribute SVGAnimatedLength y;
[SameObject] readonly attribute SVGAnimatedLength width;
[SameObject] readonly attribute SVGAnimatedLength height;
[SameObject] readonly attribute SVGElement? instanceRoot;
[SameObject] readonly attribute SVGElement? animatedInstanceRoot;
};
SVGUseElement includes SVGURIReference;
[Exposed=Window]
interface SVGUseElementShadowRoot : ShadowRoot {
};
interface mixin SVGElementInstance {
[SameObject] readonly attribute SVGElement? correspondingElement;
[SameObject] readonly attribute SVGUseElement? correspondingUseElement;
};
[Constructor(Animation source, Animatable newTarget), Exposed=Window]
interface ShadowAnimation : Animation {
[SameObject] readonly attribute Animation sourceAnimation;
};
[Exposed=Window]
interface SVGSwitchElement : SVGGraphicsElement {
};
interface mixin GetSVGDocument {
Document getSVGDocument();
};
[Exposed=Window]
interface SVGStyleElement : SVGElement {
attribute DOMString type;
attribute DOMString media;
attribute DOMString title;
};
SVGStyleElement includes LinkStyle;
[Exposed=Window]
interface SVGTransform {
// Transform Types
const unsigned short SVG_TRANSFORM_UNKNOWN = 0;
const unsigned short SVG_TRANSFORM_MATRIX = 1;
const unsigned short SVG_TRANSFORM_TRANSLATE = 2;
const unsigned short SVG_TRANSFORM_SCALE = 3;
const unsigned short SVG_TRANSFORM_ROTATE = 4;
const unsigned short SVG_TRANSFORM_SKEWX = 5;
const unsigned short SVG_TRANSFORM_SKEWY = 6;
readonly attribute unsigned short type;
[SameObject] readonly attribute DOMMatrix matrix;
readonly attribute float angle;
void setMatrix(optional DOMMatrix2DInit matrix);
void setTranslate(float tx, float ty);
void setScale(float sx, float sy);
void setRotate(float angle, float cx, float cy);
void setSkewX(float angle);
void setSkewY(float angle);
};
[Exposed=Window]
interface SVGTransformList {
readonly attribute unsigned long length;
readonly attribute unsigned long numberOfItems;
void clear();
SVGTransform initialize(SVGTransform newItem);
getter SVGTransform getItem(unsigned long index);
SVGTransform insertItemBefore(SVGTransform newItem, unsigned long index);
SVGTransform replaceItem(SVGTransform newItem, unsigned long index);
SVGTransform removeItem(unsigned long index);
SVGTransform appendItem(SVGTransform newItem);
setter void (unsigned long index, SVGTransform newItem);
// Additional methods not common to other list interfaces.
SVGTransform createSVGTransformFromMatrix(optional DOMMatrix2DInit matrix);
SVGTransform? consolidate();
};
[Exposed=Window]
interface SVGAnimatedTransformList {
[SameObject] readonly attribute SVGTransformList baseVal;
[SameObject] readonly attribute SVGTransformList animVal;
};
[Exposed=Window]
interface SVGPreserveAspectRatio {
// Alignment Types
const unsigned short SVG_PRESERVEASPECTRATIO_UNKNOWN = 0;
const unsigned short SVG_PRESERVEASPECTRATIO_NONE = 1;
const unsigned short SVG_PRESERVEASPECTRATIO_XMINYMIN = 2;
const unsigned short SVG_PRESERVEASPECTRATIO_XMIDYMIN = 3;
const unsigned short SVG_PRESERVEASPECTRATIO_XMAXYMIN = 4;
const unsigned short SVG_PRESERVEASPECTRATIO_XMINYMID = 5;
const unsigned short SVG_PRESERVEASPECTRATIO_XMIDYMID = 6;
const unsigned short SVG_PRESERVEASPECTRATIO_XMAXYMID = 7;
const unsigned short SVG_PRESERVEASPECTRATIO_XMINYMAX = 8;
const unsigned short SVG_PRESERVEASPECTRATIO_XMIDYMAX = 9;
const unsigned short SVG_PRESERVEASPECTRATIO_XMAXYMAX = 10;
// Meet-or-slice Types
const unsigned short SVG_MEETORSLICE_UNKNOWN = 0;
const unsigned short SVG_MEETORSLICE_MEET = 1;
const unsigned short SVG_MEETORSLICE_SLICE = 2;
attribute unsigned short align;
attribute unsigned short meetOrSlice;
};
[Exposed=Window]
interface SVGAnimatedPreserveAspectRatio {
[SameObject] readonly attribute SVGPreserveAspectRatio baseVal;
[SameObject] readonly attribute SVGPreserveAspectRatio animVal;
};
[Exposed=Window]
interface SVGPathElement : SVGGeometryElement {
};
[Exposed=Window]
interface SVGRectElement : SVGGeometryElement {
[SameObject] readonly attribute SVGAnimatedLength x;
[SameObject] readonly attribute SVGAnimatedLength y;
[SameObject] readonly attribute SVGAnimatedLength width;
[SameObject] readonly attribute SVGAnimatedLength height;
[SameObject] readonly attribute SVGAnimatedLength rx;
[SameObject] readonly attribute SVGAnimatedLength ry;
};
[Exposed=Window]
interface SVGCircleElement : SVGGeometryElement {
[SameObject] readonly attribute SVGAnimatedLength cx;
[SameObject] readonly attribute SVGAnimatedLength cy;
[SameObject] readonly attribute SVGAnimatedLength r;
};
[Exposed=Window]
interface SVGEllipseElement : SVGGeometryElement {
[SameObject] readonly attribute SVGAnimatedLength cx;
[SameObject] readonly attribute SVGAnimatedLength cy;
[SameObject] readonly attribute SVGAnimatedLength rx;
[SameObject] readonly attribute SVGAnimatedLength ry;
};
[Exposed=Window]
interface SVGLineElement : SVGGeometryElement {
[SameObject] readonly attribute SVGAnimatedLength x1;
[SameObject] readonly attribute SVGAnimatedLength y1;
[SameObject] readonly attribute SVGAnimatedLength x2;
[SameObject] readonly attribute SVGAnimatedLength y2;
};
interface mixin SVGAnimatedPoints {
[SameObject] readonly attribute SVGPointList points;
[SameObject] readonly attribute SVGPointList animatedPoints;
};
[Exposed=Window]
interface SVGPointList {
readonly attribute unsigned long length;
readonly attribute unsigned long numberOfItems;
void clear();
DOMPoint initialize(DOMPoint newItem);
getter DOMPoint getItem(unsigned long index);
DOMPoint insertItemBefore(DOMPoint newItem, unsigned long index);
DOMPoint replaceItem(DOMPoint newItem, unsigned long index);
DOMPoint removeItem(unsigned long index);
DOMPoint appendItem(DOMPoint newItem);
setter void (unsigned long index, DOMPoint newItem);
};
[Exposed=Window]
interface SVGPolylineElement : SVGGeometryElement {
};
SVGPolylineElement includes SVGAnimatedPoints;
[Exposed=Window]
interface SVGPolygonElement : SVGGeometryElement {
};
SVGPolygonElement includes SVGAnimatedPoints;
[Exposed=Window]
interface SVGTextContentElement : SVGGraphicsElement {
// lengthAdjust Types
const unsigned short LENGTHADJUST_UNKNOWN = 0;
const unsigned short LENGTHADJUST_SPACING = 1;
const unsigned short LENGTHADJUST_SPACINGANDGLYPHS = 2;
[SameObject] readonly attribute SVGAnimatedLength textLength;
[SameObject] readonly attribute SVGAnimatedEnumeration lengthAdjust;
long getNumberOfChars();
float getComputedTextLength();
float getSubStringLength(unsigned long charnum, unsigned long nchars);
DOMPoint getStartPositionOfChar(unsigned long charnum);
DOMPoint getEndPositionOfChar(unsigned long charnum);
DOMRect getExtentOfChar(unsigned long charnum);
float getRotationOfChar(unsigned long charnum);
long getCharNumAtPosition(optional DOMPointInit point);
void selectSubString(unsigned long charnum, unsigned long nchars);
};
[Exposed=Window]
interface SVGTextPositioningElement : SVGTextContentElement {
[SameObject] readonly attribute SVGAnimatedLengthList x;
[SameObject] readonly attribute SVGAnimatedLengthList y;
[SameObject] readonly attribute SVGAnimatedLengthList dx;
[SameObject] readonly attribute SVGAnimatedLengthList dy;
[SameObject] readonly attribute SVGAnimatedNumberList rotate;
};
[Exposed=Window]
interface SVGTextElement : SVGTextPositioningElement {
};
[Exposed=Window]
interface SVGTSpanElement : SVGTextPositioningElement {
};
[Exposed=Window]
interface SVGTextPathElement : SVGTextContentElement {
// textPath Method Types
const unsigned short TEXTPATH_METHODTYPE_UNKNOWN = 0;
const unsigned short TEXTPATH_METHODTYPE_ALIGN = 1;
const unsigned short TEXTPATH_METHODTYPE_STRETCH = 2;
// textPath Spacing Types
const unsigned short TEXTPATH_SPACINGTYPE_UNKNOWN = 0;
const unsigned short TEXTPATH_SPACINGTYPE_AUTO = 1;
const unsigned short TEXTPATH_SPACINGTYPE_EXACT = 2;
[SameObject] readonly attribute SVGAnimatedLength startOffset;
[SameObject] readonly attribute SVGAnimatedEnumeration method;
[SameObject] readonly attribute SVGAnimatedEnumeration spacing;
};
SVGTextPathElement includes SVGURIReference;
[Exposed=Window]
interface SVGImageElement : SVGGraphicsElement {
[SameObject] readonly attribute SVGAnimatedLength x;
[SameObject] readonly attribute SVGAnimatedLength y;
[SameObject] readonly attribute SVGAnimatedLength width;
[SameObject] readonly attribute SVGAnimatedLength height;
[SameObject] readonly attribute SVGAnimatedPreserveAspectRatio preserveAspectRatio;
attribute DOMString? crossOrigin;
};
SVGImageElement includes SVGURIReference;
[Exposed=Window]
interface SVGForeignObjectElement : SVGGraphicsElement {
[SameObject] readonly attribute SVGAnimatedLength x;
[SameObject] readonly attribute SVGAnimatedLength y;
[SameObject] readonly attribute SVGAnimatedLength width;
[SameObject] readonly attribute SVGAnimatedLength height;
};
[Exposed=Window]
interface SVGMarkerElement : SVGElement {
// Marker Unit Types
const unsigned short SVG_MARKERUNITS_UNKNOWN = 0;
const unsigned short SVG_MARKERUNITS_USERSPACEONUSE = 1;
const unsigned short SVG_MARKERUNITS_STROKEWIDTH = 2;
// Marker Orientation Types
const unsigned short SVG_MARKER_ORIENT_UNKNOWN = 0;
const unsigned short SVG_MARKER_ORIENT_AUTO = 1;
const unsigned short SVG_MARKER_ORIENT_ANGLE = 2;
[SameObject] readonly attribute SVGAnimatedLength refX;
[SameObject] readonly attribute SVGAnimatedLength refY;
[SameObject] readonly attribute SVGAnimatedEnumeration markerUnits;
[SameObject] readonly attribute SVGAnimatedLength markerWidth;
[SameObject] readonly attribute SVGAnimatedLength markerHeight;
[SameObject] readonly attribute SVGAnimatedEnumeration orientType;
[SameObject] readonly attribute SVGAnimatedAngle orientAngle;
attribute DOMString orient;
void setOrientToAuto();
void setOrientToAngle(SVGAngle angle);
};
SVGMarkerElement includes SVGFitToViewBox;
[Exposed=Window]
interface SVGGradientElement : SVGElement {
// Spread Method Types
const unsigned short SVG_SPREADMETHOD_UNKNOWN = 0;
const unsigned short SVG_SPREADMETHOD_PAD = 1;
const unsigned short SVG_SPREADMETHOD_REFLECT = 2;
const unsigned short SVG_SPREADMETHOD_REPEAT = 3;
[SameObject] readonly attribute SVGAnimatedEnumeration gradientUnits;
[SameObject] readonly attribute SVGAnimatedTransformList gradientTransform;
[SameObject] readonly attribute SVGAnimatedEnumeration spreadMethod;
};
SVGGradientElement includes SVGURIReference;
[Exposed=Window]
interface SVGLinearGradientElement : SVGGradientElement {
[SameObject] readonly attribute SVGAnimatedLength x1;
[SameObject] readonly attribute SVGAnimatedLength y1;
[SameObject] readonly attribute SVGAnimatedLength x2;
[SameObject] readonly attribute SVGAnimatedLength y2;
};
[Exposed=Window]
interface SVGRadialGradientElement : SVGGradientElement {
[SameObject] readonly attribute SVGAnimatedLength cx;
[SameObject] readonly attribute SVGAnimatedLength cy;
[SameObject] readonly attribute SVGAnimatedLength r;
[SameObject] readonly attribute SVGAnimatedLength fx;
[SameObject] readonly attribute SVGAnimatedLength fy;
[SameObject] readonly attribute SVGAnimatedLength fr;
};
[Exposed=Window]
interface SVGStopElement : SVGElement {
[SameObject] readonly attribute SVGAnimatedNumber offset;
};
[Exposed=Window]
interface SVGPatternElement : SVGElement {
[SameObject] readonly attribute SVGAnimatedEnumeration patternUnits;
[SameObject] readonly attribute SVGAnimatedEnumeration patternContentUnits;
[SameObject] readonly attribute SVGAnimatedTransformList patternTransform;
[SameObject] readonly attribute SVGAnimatedLength x;
[SameObject] readonly attribute SVGAnimatedLength y;
[SameObject] readonly attribute SVGAnimatedLength width;
[SameObject] readonly attribute SVGAnimatedLength height;
};
SVGPatternElement includes SVGFitToViewBox;
SVGPatternElement includes SVGURIReference;
[Exposed=Window]
interface SVGScriptElement : SVGElement {
attribute DOMString type;
attribute DOMString? crossOrigin;
};
SVGScriptElement includes SVGURIReference;
[Exposed=Window]
interface SVGAElement : SVGGraphicsElement {
[SameObject] readonly attribute SVGAnimatedString target;
attribute DOMString download;
attribute USVString ping;
attribute DOMString rel;
[SameObject, PutForwards=value] readonly attribute DOMTokenList relList;
attribute DOMString hreflang;
attribute DOMString type;
attribute DOMString text;
attribute DOMString referrerPolicy;
};
SVGAElement includes SVGURIReference;
SVGAElement includes HTMLHyperlinkElementUtils;
[Exposed=Window]
interface SVGViewElement : SVGElement {};
SVGViewElement includes SVGFitToViewBox;
SVGViewElement includes SVGZoomAndPan;