@@ -3243,7 +3243,8 @@ interface Document extends Node, GlobalEventHandlers, NodeSelector, DocumentEven
3243
3243
* Retrieves a collection of objects based on the specified element name.
3244
3244
* @param name Specifies the name of an element.
3245
3245
*/
3246
- getElementsByTagName<K extends keyof ElementListTagNameMap>(tagname: K): ElementListTagNameMap[K];
3246
+ getElementsByTagName<K extends keyof HTMLElementTagNameMap>(tagname: K): NodeListOf<HTMLElementTagNameMap[K]>;
3247
+ getElementsByTagName<K extends keyof SVGElementTagNameMap>(tagname: K): NodeListOf<SVGElementTagNameMap[K]>;
3247
3248
getElementsByTagName(tagname: string): NodeListOf<Element>;
3248
3249
getElementsByTagNameNS(namespaceURI: "http://www.w3.org/1999/xhtml", localName: string): HTMLCollectionOf<HTMLElement>;
3249
3250
getElementsByTagNameNS(namespaceURI: "http://www.w3.org/2000/svg", localName: string): HTMLCollectionOf<SVGElement>;
@@ -3600,7 +3601,8 @@ interface Element extends Node, GlobalEventHandlers, ElementTraversal, NodeSelec
3600
3601
getAttributeNS(namespaceURI: string, localName: string): string;
3601
3602
getBoundingClientRect(): ClientRect;
3602
3603
getClientRects(): ClientRectList;
3603
- getElementsByTagName<K extends keyof ElementListTagNameMap>(name: K): ElementListTagNameMap[K];
3604
+ getElementsByTagName<K extends keyof HTMLElementTagNameMap>(name: K): NodeListOf<HTMLElementTagNameMap[K]>;
3605
+ getElementsByTagName<K extends keyof SVGElementTagNameMap>(name: K): NodeListOf<SVGElementTagNameMap[K]>;
3604
3606
getElementsByTagName(name: string): NodeListOf<Element>;
3605
3607
getElementsByTagNameNS(namespaceURI: "http://www.w3.org/1999/xhtml", localName: string): HTMLCollectionOf<HTMLElement>;
3606
3608
getElementsByTagNameNS(namespaceURI: "http://www.w3.org/2000/svg", localName: string): HTMLCollectionOf<SVGElement>;
@@ -3629,7 +3631,8 @@ interface Element extends Node, GlobalEventHandlers, ElementTraversal, NodeSelec
3629
3631
webkitRequestFullScreen(): void;
3630
3632
getElementsByClassName(classNames: string): NodeListOf<Element>;
3631
3633
matches(selector: string): boolean;
3632
- closest<K extends keyof ElementTagNameMap>(selector: K): ElementTagNameMap[K] | null;
3634
+ closest<K extends keyof HTMLElementTagNameMap>(selector: K): HTMLElementTagNameMap[K] | null;
3635
+ closest<K extends keyof SVGElementTagNameMap>(selector: K): SVGElementTagNameMap[K] | null;
3633
3636
closest(selector: string): Element | null;
3634
3637
scrollIntoView(arg?: boolean | ScrollIntoViewOptions): void;
3635
3638
scroll(options?: ScrollToOptions): void;
@@ -14131,9 +14134,11 @@ interface NavigatorUserMedia {
14131
14134
}
14132
14135
14133
14136
interface NodeSelector {
14134
- querySelector<K extends keyof ElementTagNameMap>(selectors: K): ElementTagNameMap[K] | null;
14137
+ querySelector<K extends keyof HTMLElementTagNameMap>(selectors: K): HTMLElementTagNameMap[K] | null;
14138
+ querySelector<K extends keyof SVGElementTagNameMap>(selectors: K): SVGElementTagNameMap[K] | null;
14135
14139
querySelector<E extends Element = Element>(selectors: string): E | null;
14136
- querySelectorAll<K extends keyof ElementListTagNameMap>(selectors: K): ElementListTagNameMap[K];
14140
+ querySelectorAll<K extends keyof HTMLElementTagNameMap>(selectors: K): NodeListOf<HTMLElementTagNameMap[K]>;
14141
+ querySelectorAll<K extends keyof SVGElementTagNameMap>(selectors: K): NodeListOf<SVGElementTagNameMap[K]>;
14137
14142
querySelectorAll<E extends Element = Element>(selectors: string): NodeListOf<E>;
14138
14143
}
14139
14144
@@ -15024,12 +15029,6 @@ interface SVGElementTagNameMap {
15024
15029
"view": SVGViewElement;
15025
15030
}
15026
15031
15027
- interface ElementTagNameMap extends HTMLElementTagNameMap, SVGElementTagNameMap { }
15028
-
15029
- type ElementListTagNameMap = {
15030
- [key in keyof ElementTagNameMap]: NodeListOf<ElementTagNameMap[key]>
15031
- };
15032
-
15033
15032
declare var Audio: { new(src?: string): HTMLAudioElement; };
15034
15033
declare var Image: { new(width?: number, height?: number): HTMLImageElement; };
15035
15034
declare var Option: { new(text?: string, value?: string, defaultSelected?: boolean, selected?: boolean): HTMLOptionElement; };
0 commit comments