Skip to content

Commit 08e43d4

Browse files
authored
Merge pull request #529 from saschanaz/svg2
Add SVG basic types
2 parents bec8948 + 967a378 commit 08e43d4

7 files changed

+322
-65
lines changed

baselines/dom.generated.d.ts

Lines changed: 44 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1377,6 +1377,13 @@ interface RsaPssParams extends Algorithm {
13771377
saltLength: number;
13781378
}
13791379

1380+
interface SVGBoundingBoxOptions {
1381+
clipped?: boolean;
1382+
fill?: boolean;
1383+
markers?: boolean;
1384+
stroke?: boolean;
1385+
}
1386+
13801387
interface ScopedCredentialDescriptor {
13811388
id: Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array | DataView | ArrayBuffer | null;
13821389
transports?: Transport[];
@@ -4730,10 +4737,6 @@ declare var Element: {
47304737
new(): Element;
47314738
};
47324739

4733-
interface ElementCSSInlineStyle {
4734-
readonly style: CSSStyleDeclaration;
4735-
}
4736-
47374740
interface ElementContentEditable {
47384741
contentEditable: string;
47394742
inputMode: string;
@@ -11544,8 +11547,8 @@ declare var SVGAnimatedPreserveAspectRatio: {
1154411547
};
1154511548

1154611549
interface SVGAnimatedRect {
11547-
readonly animVal: SVGRect;
11548-
readonly baseVal: SVGRect;
11550+
readonly animVal: DOMRectReadOnly;
11551+
readonly baseVal: DOMRect;
1154911552
}
1155011553

1155111554
declare var SVGAnimatedRect: {
@@ -11657,27 +11660,13 @@ declare var SVGDescElement: {
1165711660
};
1165811661

1165911662
interface SVGElementEventMap extends ElementEventMap, GlobalEventHandlersEventMap, DocumentAndElementEventHandlersEventMap {
11660-
"click": MouseEvent;
11661-
"dblclick": MouseEvent;
11662-
"focusin": FocusEvent;
11663-
"focusout": FocusEvent;
11664-
"load": Event;
11665-
"mousedown": MouseEvent;
11666-
"mousemove": MouseEvent;
11667-
"mouseout": MouseEvent;
11668-
"mouseover": MouseEvent;
11669-
"mouseup": MouseEvent;
1167011663
}
1167111664

11672-
interface SVGElement extends Element, ElementCSSInlineStyle, GlobalEventHandlers, DocumentAndElementEventHandlers {
11665+
interface SVGElement extends Element, GlobalEventHandlers, DocumentAndElementEventHandlers, SVGElementInstance, HTMLOrSVGElement {
1167311666
/** @deprecated */
1167411667
readonly className: any;
11675-
onfocusin: ((this: SVGElement, ev: FocusEvent) => any) | null;
11676-
onfocusout: ((this: SVGElement, ev: FocusEvent) => any) | null;
1167711668
readonly ownerSVGElement: SVGSVGElement | null;
1167811669
readonly viewportElement: SVGElement | null;
11679-
/** @deprecated */
11680-
xmlbase: string;
1168111670
addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
1168211671
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
1168311672
removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
@@ -11690,14 +11679,8 @@ declare var SVGElement: {
1169011679
};
1169111680

1169211681
interface SVGElementInstance extends EventTarget {
11693-
readonly childNodes: SVGElementInstanceList;
1169411682
readonly correspondingElement: SVGElement;
1169511683
readonly correspondingUseElement: SVGUseElement;
11696-
readonly firstChild: SVGElementInstance;
11697-
readonly lastChild: SVGElementInstance;
11698-
readonly nextSibling: SVGElementInstance;
11699-
readonly parentNode: SVGElementInstance;
11700-
readonly previousSibling: SVGElementInstance;
1170111684
}
1170211685

1170311686
declare var SVGElementInstance: {
@@ -12255,6 +12238,23 @@ declare var SVGGElement: {
1225512238
new(): SVGGElement;
1225612239
};
1225712240

12241+
interface SVGGeometryElement extends SVGGraphicsElement {
12242+
readonly pathLength: SVGAnimatedNumber;
12243+
getPointAtLength(distance: number): DOMPoint;
12244+
getTotalLength(): number;
12245+
isPointInFill(point?: DOMPointInit): boolean;
12246+
isPointInStroke(point?: DOMPointInit): boolean;
12247+
addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGeometryElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
12248+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
12249+
removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGeometryElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
12250+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
12251+
}
12252+
12253+
declare var SVGGeometryElement: {
12254+
prototype: SVGGeometryElement;
12255+
new(): SVGGeometryElement;
12256+
};
12257+
1225812258
interface SVGGradientElement extends SVGElement, SVGUnitTypes, SVGURIReference {
1225912259
readonly gradientTransform: SVGAnimatedTransformList;
1226012260
readonly gradientUnits: SVGAnimatedEnumeration;
@@ -12279,16 +12279,10 @@ declare var SVGGradientElement: {
1227912279
};
1228012280

1228112281
interface SVGGraphicsElement extends SVGElement, SVGTests {
12282-
/** @deprecated */
12283-
readonly farthestViewportElement: SVGElement | null;
12284-
/** @deprecated */
12285-
readonly nearestViewportElement: SVGElement | null;
1228612282
readonly transform: SVGAnimatedTransformList;
12287-
getBBox(): SVGRect;
12288-
getCTM(): SVGMatrix | null;
12289-
getScreenCTM(): SVGMatrix | null;
12290-
/** @deprecated */
12291-
getTransformToElement(element: SVGElement): SVGMatrix;
12283+
getBBox(options?: SVGBoundingBoxOptions): DOMRect;
12284+
getCTM(): DOMMatrix | null;
12285+
getScreenCTM(): DOMMatrix | null;
1229212286
addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGraphicsElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
1229312287
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
1229412288
removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGraphicsElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
@@ -12354,6 +12348,7 @@ declare var SVGLength: {
1235412348
};
1235512349

1235612350
interface SVGLengthList {
12351+
readonly length: number;
1235712352
readonly numberOfItems: number;
1235812353
appendItem(newItem: SVGLength): SVGLength;
1235912354
clear(): void;
@@ -12362,6 +12357,7 @@ interface SVGLengthList {
1236212357
insertItemBefore(newItem: SVGLength, index: number): SVGLength;
1236312358
removeItem(index: number): SVGLength;
1236412359
replaceItem(newItem: SVGLength, index: number): SVGLength;
12360+
[index: number]: SVGLength;
1236512361
}
1236612362

1236712363
declare var SVGLengthList: {
@@ -12474,6 +12470,7 @@ declare var SVGNumber: {
1247412470
};
1247512471

1247612472
interface SVGNumberList {
12473+
readonly length: number;
1247712474
readonly numberOfItems: number;
1247812475
appendItem(newItem: SVGNumber): SVGNumber;
1247912476
clear(): void;
@@ -12482,6 +12479,7 @@ interface SVGNumberList {
1248212479
insertItemBefore(newItem: SVGNumber, index: number): SVGNumber;
1248312480
removeItem(index: number): SVGNumber;
1248412481
replaceItem(newItem: SVGNumber, index: number): SVGNumber;
12482+
[index: number]: SVGNumber;
1248512483
}
1248612484

1248712485
declare var SVGNumberList: {
@@ -13050,6 +13048,7 @@ declare var SVGStopElement: {
1305013048
};
1305113049

1305213050
interface SVGStringList {
13051+
readonly length: number;
1305313052
readonly numberOfItems: number;
1305413053
appendItem(newItem: string): string;
1305513054
clear(): void;
@@ -13058,6 +13057,7 @@ interface SVGStringList {
1305813057
insertItemBefore(newItem: string, index: number): string;
1305913058
removeItem(index: number): string;
1306013059
replaceItem(newItem: string, index: number): string;
13060+
[index: number]: string;
1306113061
}
1306213062

1306313063
declare var SVGStringList: {
@@ -13119,11 +13119,7 @@ declare var SVGTSpanElement: {
1311913119

1312013120
interface SVGTests {
1312113121
readonly requiredExtensions: SVGStringList;
13122-
/** @deprecated */
13123-
readonly requiredFeatures: SVGStringList;
1312413122
readonly systemLanguage: SVGStringList;
13125-
/** @deprecated */
13126-
hasExtension(extension: string): boolean;
1312713123
}
1312813124

1312913125
interface SVGTextContentElement extends SVGGraphicsElement {
@@ -13281,7 +13277,14 @@ interface SVGUnitTypes {
1328113277
readonly SVG_UNIT_TYPE_UNKNOWN: number;
1328213278
readonly SVG_UNIT_TYPE_USERSPACEONUSE: number;
1328313279
}
13284-
declare var SVGUnitTypes: SVGUnitTypes;
13280+
13281+
declare var SVGUnitTypes: {
13282+
prototype: SVGUnitTypes;
13283+
new(): SVGUnitTypes;
13284+
readonly SVG_UNIT_TYPE_OBJECTBOUNDINGBOX: number;
13285+
readonly SVG_UNIT_TYPE_UNKNOWN: number;
13286+
readonly SVG_UNIT_TYPE_USERSPACEONUSE: number;
13287+
};
1328513288

1328613289
interface SVGUseElement extends SVGGraphicsElement, SVGURIReference {
1328713290
readonly animatedInstanceRoot: SVGElementInstance | null;

baselines/dom.iterable.generated.d.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,18 @@ interface PluginArray {
148148
interface RTCStatsReport extends ReadonlyMap<string, any> {
149149
}
150150

151+
interface SVGLengthList {
152+
[Symbol.iterator](): IterableIterator<SVGLength>;
153+
}
154+
155+
interface SVGNumberList {
156+
[Symbol.iterator](): IterableIterator<SVGNumber>;
157+
}
158+
159+
interface SVGStringList {
160+
[Symbol.iterator](): IterableIterator<string>;
161+
}
162+
151163
interface SourceBufferList {
152164
[Symbol.iterator](): IterableIterator<SourceBuffer>;
153165
}

0 commit comments

Comments
 (0)