@whitesev/utils 1.3.0 → 1.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -34,22 +34,88 @@ export declare interface AnyObject {
34
34
  toString(): string;
35
35
  }
36
36
  export declare interface Vue2Context extends AnyObject {
37
- _isVue: true;
37
+ $attrs: AnyObject;
38
+ $children: Vue2Context[];
39
+ $createElement: (...args: any[]) => any;
40
+ $el: HTMLElement;
41
+ $listeners: AnyObject;
38
42
  $options: AnyObject;
39
43
  $parent: Vue2Context;
44
+ $refs: AnyObject;
40
45
  $root: Vue2Context;
41
- $children: Vue2Context[];
42
- $vnode: AnyObject;
43
- $slots: AnyObject;
44
46
  $scopedSlots: AnyObject;
45
- $attrs: AnyObject;
46
- $listeners: AnyObject;
47
+ $slots: AnyObject;
47
48
  $store: AnyObject;
49
+ $vnode: AnyObject;
50
+ _data: AnyObject;
51
+ _directInactive: boolean;
52
+ _events: AnyObject;
53
+ _hasHookEvent: boolean;
54
+ _isBeingDestroyed: boolean;
55
+ _isDestroyed: boolean;
56
+ _isMounted: boolean;
57
+ _isVue: boolean;
58
+ $data: AnyObject;
59
+ $isServer: boolean;
60
+ $props: AnyObject;
61
+ $route: AnyObject & {
62
+ fullPath: string;
63
+ hash: string;
64
+ matched: AnyObject[];
65
+ meta: AnyObject;
66
+ name: string;
67
+ params: AnyObject;
68
+ path: string;
69
+ query: AnyObject;
70
+ };
71
+ $router: AnyObject & {
72
+ afterHooks: AnyObject[];
73
+ app: Vue2Context;
74
+ apps: Vue2Context[];
75
+ beforeHooks: ((...args: any[]) => any)[];
76
+ fallback: boolean;
77
+ history: AnyObject & {
78
+ base: string;
79
+ current: AnyObject;
80
+ listeners: AnyObject[];
81
+ router: Vue2Context["$router"];
82
+ /**
83
+ *
84
+ * @param delta 访问的距离。如果 delta < 0 则后退相应数量的记录,如果 > 0 则前进。
85
+ * @param triggerListeners 是否应该触发连接到该历史的监听器
86
+ * @returns
87
+ */
88
+ go: (delta: number, triggerListeners?: boolean) => void;
89
+ /**
90
+ *
91
+ * @param to 要设置的地址
92
+ * @param data 可选的 HistoryState 以关联该导航记录
93
+ * @returns
94
+ */
95
+ push: (to: string, data?: AnyObject) => void;
96
+ /**
97
+ *
98
+ * @param to 要设置的地址
99
+ * @param data 可选的 HistoryState 以关联该导航记录
100
+ * @returns
101
+ */
102
+ replace: (to: string, data?: AnyObject) => void;
103
+ };
104
+ matcher: AnyObject & {
105
+ addRoute: (...args: any[]) => any;
106
+ addRoutes: (...args: any[]) => any;
107
+ getRoutes: () => any;
108
+ match: (...args: any[]) => any;
109
+ };
110
+ mode: string;
111
+ resolveHooks: ((...args: any[]) => any)[];
112
+ currentRoute: AnyObject;
113
+ };
114
+ $ssrContext: AnyObject;
48
115
  $watch: (key: string | string[], handler: (this: any, newVal: any, oldVal: any) => void, options?: {
49
116
  immediate?: boolean;
50
117
  deep?: boolean;
51
118
  }) => void;
52
- $el: Element;
53
119
  }
54
120
  declare class Utils {
55
121
  /** 版本号 */
@@ -1456,6 +1522,7 @@ declare class Utils {
1456
1522
  * console.log($div); // div => HTMLDivELement
1457
1523
  * })
1458
1524
  */
1525
+ waitNode<K extends keyof HTMLElementTagNameMap>(selector: K, parent?: Node | Element | Document | HTMLElement): Promise<HTMLElementTagNameMap[K]>;
1459
1526
  waitNode<T extends Element>(selector: string, parent?: Node | Element | Document | HTMLElement): Promise<T>;
1460
1527
  /**
1461
1528
  * 等待元素出现
@@ -1469,6 +1536,7 @@ declare class Utils {
1469
1536
  * console.log($div); // div => HTMLDivELement[]
1470
1537
  * })
1471
1538
  */
1539
+ waitNode<K extends keyof HTMLElementTagNameMap>(selectorList: K[], parent?: Node | Element | Document | HTMLElement): Promise<HTMLElementTagNameMap[K][]>;
1472
1540
  waitNode<T extends Element[]>(selectorList: string[], parent?: Node | Element | Document | HTMLElement): Promise<T>;
1473
1541
  /**
1474
1542
  * 等待元素出现
@@ -1480,6 +1548,7 @@ declare class Utils {
1480
1548
  * console.log($div); // $div => HTMLDivELement | null
1481
1549
  * })
1482
1550
  */
1551
+ waitNode<K extends keyof HTMLElementTagNameMap>(selector: K, parent: Node | Element | Document | HTMLElement, timeout: number): Promise<HTMLElementTagNameMap[K] | null>;
1483
1552
  waitNode<T extends Element>(selector: string, parent: Node | Element | Document | HTMLElement, timeout: number): Promise<T | null>;
1484
1553
  /**
1485
1554
  * 等待元素出现
@@ -1491,6 +1560,7 @@ declare class Utils {
1491
1560
  * console.log($div); // $div => HTMLDivELement[] | null
1492
1561
  * })
1493
1562
  */
1563
+ waitNode<K extends keyof HTMLElementTagNameMap>(selectorList: K[], parent: Node | Element | Document | HTMLElement, timeout: number): Promise<HTMLElementTagNameMap[K] | null>;
1494
1564
  waitNode<T extends Element[]>(selectorList: string[], parent: Node | Element | Document | HTMLElement, timeout: number): Promise<T | null>;
1495
1565
  /**
1496
1566
  * 等待元素出现
@@ -1501,6 +1571,7 @@ declare class Utils {
1501
1571
  * console.log($div); // $div => HTMLDivELement | null
1502
1572
  * })
1503
1573
  */
1574
+ waitNode<K extends keyof HTMLElementTagNameMap>(selector: K, timeout: number): Promise<HTMLElementTagNameMap[K] | null>;
1504
1575
  waitNode<T extends Element>(selector: string, timeout: number): Promise<T | null>;
1505
1576
  /**
1506
1577
  * 等待元素出现
@@ -1511,6 +1582,7 @@ declare class Utils {
1511
1582
  * console.log($div); // $div => HTMLDivELement[] | null
1512
1583
  * })
1513
1584
  */
1585
+ waitNode<K extends keyof HTMLElementTagNameMap>(selectorList: K[], timeout: number): Promise<HTMLElementTagNameMap[K] | null>;
1514
1586
  waitNode<T extends Element[]>(selectorList: string[], timeout: number): Promise<T | null>;
1515
1587
  /**
1516
1588
  * 等待任意元素出现
@@ -1524,6 +1596,7 @@ declare class Utils {
1524
1596
  * console.log($a); // $a => HTMLAnchorElement 这里是第一个
1525
1597
  * })
1526
1598
  */
1599
+ waitAnyNode<K extends keyof HTMLElementTagNameMap>(selectorList: K[], parent?: Node | Element | Document | HTMLElement): Promise<HTMLElementTagNameMap[K]>;
1527
1600
  waitAnyNode<T extends Element>(selectorList: string[], parent?: Node | Element | Document | HTMLElement): Promise<T>;
1528
1601
  /**
1529
1602
  * 等待任意元素出现
@@ -1535,6 +1608,7 @@ declare class Utils {
1535
1608
  * console.log($div); // $div => HTMLDivELement | null
1536
1609
  * })
1537
1610
  */
1611
+ waitAnyNode<K extends keyof HTMLElementTagNameMap>(selectorList: K[], parent: Node | Element | Document | HTMLElement, timeout: number): Promise<HTMLElementTagNameMap[K] | null>;
1538
1612
  waitAnyNode<T extends Element>(selectorList: string[], parent: Node | Element | Document | HTMLElement, timeout: number): Promise<T | null>;
1539
1613
  /**
1540
1614
  * 等待任意元素出现
@@ -1545,6 +1619,7 @@ declare class Utils {
1545
1619
  * console.log($div); // $div => HTMLDivELement | null
1546
1620
  * })
1547
1621
  */
1622
+ waitAnyNode<K extends keyof HTMLElementTagNameMap>(selectorList: K[], timeout: number): Promise<HTMLElementTagNameMap[K] | null>;
1548
1623
  waitAnyNode<T extends Element>(selectorList: string[], timeout: number): Promise<T | null>;
1549
1624
  /**
1550
1625
  * 等待元素数组出现
@@ -1558,6 +1633,7 @@ declare class Utils {
1558
1633
  * console.log($result); // $result => NodeListOf<HTMLDivElement>
1559
1634
  * })
1560
1635
  */
1636
+ waitNodeList<T extends keyof HTMLElementTagNameMap>(selector: T, parent?: Node | Element | Document | HTMLElement): Promise<NodeListOf<HTMLElementTagNameMap[T]>>;
1561
1637
  waitNodeList<T extends NodeListOf<Element>>(selector: string, parent?: Node | Element | Document | HTMLElement): Promise<T>;
1562
1638
  /**
1563
1639
  * 等待元素数组出现
@@ -1567,7 +1643,11 @@ declare class Utils {
1567
1643
  * Utils.waitNodeList(["div"]).then( $result =>{
1568
1644
  * console.log($result); // $result => NodeListOf<HTMLDivElement>[]
1569
1645
  * })
1646
+ * Utils.waitNodeList(["div"],document).then( $result =>{
1647
+ * console.log($result); // $result => NodeListOf<HTMLDivElement>[]
1648
+ * })
1570
1649
  */
1650
+ waitNodeList<K extends keyof HTMLElementTagNameMap>(selectorList: K[], parent?: Node | Element | Document | HTMLElement): Promise<NodeListOf<HTMLElementTagNameMap[K]>[]>;
1571
1651
  waitNodeList<T extends NodeListOf<Element>[]>(selectorList: string[], parent?: Node | Element | Document | HTMLElement): Promise<T>;
1572
1652
  /**
1573
1653
  * 等待元素数组出现
@@ -1580,16 +1660,18 @@ declare class Utils {
1580
1660
  * })
1581
1661
  */
1582
1662
  waitNodeList<T extends NodeListOf<Element>>(selector: string, parent: Node | Element | Document | HTMLElement, timeout: number): Promise<T | null>;
1663
+ waitNodeList<K extends keyof HTMLElementTagNameMap>(selector: K, parent: Node | Element | Document | HTMLElement, timeout: number): Promise<NodeListOf<HTMLElementTagNameMap[K]> | null>;
1583
1664
  /**
1584
1665
  * 等待元素数组出现
1585
1666
  * @param selectorList CSS选择器数组
1586
1667
  * @param parent 监听的父元素
1587
1668
  * @param timeout 超时时间,默认0
1588
1669
  * @example
1589
- * Utils.waitNodeList("div",document,10000).then( $result =>{
1670
+ * Utils.waitNodeList(["div"],document,10000).then( $result =>{
1590
1671
  * console.log($result); // $result => NodeListOf<HTMLDivElement>[] | null
1591
1672
  * })
1592
1673
  */
1674
+ waitNodeList<K extends keyof HTMLElementTagNameMap>(selectorList: K[], parent: Node | Element | Document | HTMLElement, timeout: number): Promise<NodeListOf<HTMLElementTagNameMap[K]>[] | null>;
1593
1675
  waitNodeList<T extends NodeListOf<Element>[]>(selectorList: string[], parent: Node | Element | Document | HTMLElement, timeout: number): Promise<T | null>;
1594
1676
  /**
1595
1677
  * 等待元素数组出现
@@ -1600,16 +1682,18 @@ declare class Utils {
1600
1682
  * console.log($result); // $result => NodeListOf<HTMLDivElement> | null
1601
1683
  * })
1602
1684
  */
1685
+ waitNodeList<K extends keyof HTMLElementTagNameMap>(selector: K[], timeout: number): Promise<NodeListOf<HTMLElementTagNameMap[K]> | null>;
1603
1686
  waitNodeList<T extends NodeListOf<Element>>(selector: string[], timeout: number): Promise<T | null>;
1604
1687
  /**
1605
1688
  * 等待元素数组出现
1606
1689
  * @param selectorList CSS选择器数组
1607
1690
  * @param timeout 超时时间,默认0
1608
1691
  * @example
1609
- * Utils.waitNodeList("div",10000).then( $result =>{
1692
+ * Utils.waitNodeList(["div"],10000).then( $result =>{
1610
1693
  * console.log($result); // $result => NodeListOf<HTMLDivElement>[] | null
1611
1694
  * })
1612
1695
  */
1696
+ waitNodeList<K extends keyof HTMLElementTagNameMap>(selectorList: K[], timeout: number): Promise<NodeListOf<HTMLElementTagNameMap[K]>[] | null>;
1613
1697
  waitNodeList<T extends NodeListOf<Element>>(selectorList: string[], timeout: number): Promise<T[] | null>;
1614
1698
  /**
1615
1699
  * 等待任意元素数组出现
@@ -1623,6 +1707,7 @@ declare class Utils {
1623
1707
  * console.log($result); // $result => NodeListOf<HTMLDivElement>
1624
1708
  * })
1625
1709
  */
1710
+ waitAnyNodeList<K extends keyof HTMLElementTagNameMap>(selectorList: K[], parent?: Node | Element | Document | HTMLElement): Promise<NodeListOf<HTMLElementTagNameMap[K]>>;
1626
1711
  waitAnyNodeList<T extends Element>(selectorList: string[], parent?: Node | Element | Document | HTMLElement): Promise<NodeListOf<T>>;
1627
1712
  /**
1628
1713
  * 等待任意元素数组出现
@@ -1634,6 +1719,7 @@ declare class Utils {
1634
1719
  * console.log($result); // $result => NodeListOf<HTMLDivElement> | null
1635
1720
  * })
1636
1721
  */
1722
+ waitAnyNodeList<K extends keyof HTMLElementTagNameMap>(selectorList: K[], parent: Node | Element | Document | HTMLElement, timeout: number): Promise<NodeListOf<HTMLElementTagNameMap[K]> | null>;
1637
1723
  waitAnyNodeList<T extends Element>(selectorList: string[], parent: Node | Element | Document | HTMLElement, timeout: number): Promise<NodeListOf<T> | null>;
1638
1724
  /**
1639
1725
  * 等待任意元素出现
@@ -1644,6 +1730,7 @@ declare class Utils {
1644
1730
  * console.log($result); // $result => NodeListOf<HTMLDivElement> | null
1645
1731
  * })
1646
1732
  */
1733
+ waitAnyNodeList<K extends keyof HTMLElementTagNameMap>(selectorList: K[], timeout: number): Promise<NodeListOf<HTMLElementTagNameMap[K]> | null>;
1647
1734
  waitAnyNodeList<T extends Element>(selectorList: string[], timeout: number): Promise<NodeListOf<T> | null>;
1648
1735
  /**
1649
1736
  * 等待对象上的属性出现
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@whitesev/utils",
3
- "version": "1.3.0",
3
+ "version": "1.3.2",
4
4
  "description": "一个常用的工具库",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/node/index.esm.js",
package/src/Utils.ts CHANGED
@@ -43,17 +43,87 @@ export declare interface AnyObject {
43
43
  }
44
44
 
45
45
  export declare interface Vue2Context extends AnyObject {
46
- _isVue: true;
46
+ $attrs: AnyObject;
47
+ $children: Vue2Context[];
48
+ $createElement: (...args: any[]) => any;
49
+ $el: HTMLElement;
50
+ $listeners: AnyObject;
47
51
  $options: AnyObject;
48
52
  $parent: Vue2Context;
53
+ $refs: AnyObject;
49
54
  $root: Vue2Context;
50
- $children: Vue2Context[];
51
- $vnode: AnyObject;
52
- $slots: AnyObject;
53
55
  $scopedSlots: AnyObject;
54
- $attrs: AnyObject;
55
- $listeners: AnyObject;
56
+ $slots: AnyObject;
56
57
  $store: AnyObject;
58
+ $vnode: AnyObject;
59
+
60
+ _data: AnyObject;
61
+ _directInactive: boolean;
62
+ _events: AnyObject;
63
+ _hasHookEvent: boolean;
64
+ _isBeingDestroyed: boolean;
65
+ _isDestroyed: boolean;
66
+ _isMounted: boolean;
67
+ _isVue: boolean;
68
+
69
+ $data: AnyObject;
70
+ $isServer: boolean;
71
+ $props: AnyObject;
72
+ $route: AnyObject & {
73
+ fullPath: string;
74
+ hash: string;
75
+ matched: AnyObject[];
76
+ meta: AnyObject;
77
+ name: string;
78
+ params: AnyObject;
79
+ path: string;
80
+ query: AnyObject;
81
+ };
82
+ $router: AnyObject & {
83
+ afterHooks: AnyObject[];
84
+ app: Vue2Context;
85
+ apps: Vue2Context[];
86
+ beforeHooks: ((...args: any[]) => any)[];
87
+ fallback: boolean;
88
+ history: AnyObject & {
89
+ base: string;
90
+ current: AnyObject;
91
+ listeners: AnyObject[];
92
+ router: Vue2Context["$router"];
93
+ /**
94
+ *
95
+ * @param delta 访问的距离。如果 delta < 0 则后退相应数量的记录,如果 > 0 则前进。
96
+ * @param triggerListeners 是否应该触发连接到该历史的监听器
97
+ * @returns
98
+ */
99
+ go: (delta: number, triggerListeners?: boolean) => void;
100
+ /**
101
+ *
102
+ * @param to 要设置的地址
103
+ * @param data 可选的 HistoryState 以关联该导航记录
104
+ * @returns
105
+ */
106
+ push: (to: string, data?: AnyObject) => void;
107
+ /**
108
+ *
109
+ * @param to 要设置的地址
110
+ * @param data 可选的 HistoryState 以关联该导航记录
111
+ * @returns
112
+ */
113
+ replace: (to: string, data?: AnyObject) => void;
114
+ };
115
+ matcher: AnyObject & {
116
+ addRoute: (...args: any[]) => any;
117
+ addRoutes: (...args: any[]) => any;
118
+ getRoutes: () => any;
119
+ match: (...args: any[]) => any;
120
+ };
121
+ mode: string;
122
+ resolveHooks: ((...args: any[]) => any)[];
123
+ currentRoute: AnyObject;
124
+ };
125
+ $ssrContext: AnyObject;
126
+
57
127
  $watch: (
58
128
  key: string | string[],
59
129
  handler: (this: any, newVal: any, oldVal: any) => void,
@@ -62,7 +132,6 @@ export declare interface Vue2Context extends AnyObject {
62
132
  deep?: boolean;
63
133
  }
64
134
  ) => void;
65
- $el: Element;
66
135
  }
67
136
 
68
137
  class Utils {
@@ -3929,6 +3998,10 @@ class Utils {
3929
3998
  * console.log($div); // div => HTMLDivELement
3930
3999
  * })
3931
4000
  */
4001
+ waitNode<K extends keyof HTMLElementTagNameMap>(
4002
+ selector: K,
4003
+ parent?: Node | Element | Document | HTMLElement
4004
+ ): Promise<HTMLElementTagNameMap[K]>;
3932
4005
  waitNode<T extends Element>(
3933
4006
  selector: string,
3934
4007
  parent?: Node | Element | Document | HTMLElement
@@ -3945,6 +4018,10 @@ class Utils {
3945
4018
  * console.log($div); // div => HTMLDivELement[]
3946
4019
  * })
3947
4020
  */
4021
+ waitNode<K extends keyof HTMLElementTagNameMap>(
4022
+ selectorList: K[],
4023
+ parent?: Node | Element | Document | HTMLElement
4024
+ ): Promise<HTMLElementTagNameMap[K][]>;
3948
4025
  waitNode<T extends Element[]>(
3949
4026
  selectorList: string[],
3950
4027
  parent?: Node | Element | Document | HTMLElement
@@ -3959,6 +4036,11 @@ class Utils {
3959
4036
  * console.log($div); // $div => HTMLDivELement | null
3960
4037
  * })
3961
4038
  */
4039
+ waitNode<K extends keyof HTMLElementTagNameMap>(
4040
+ selector: K,
4041
+ parent: Node | Element | Document | HTMLElement,
4042
+ timeout: number
4043
+ ): Promise<HTMLElementTagNameMap[K] | null>;
3962
4044
  waitNode<T extends Element>(
3963
4045
  selector: string,
3964
4046
  parent: Node | Element | Document | HTMLElement,
@@ -3974,6 +4056,11 @@ class Utils {
3974
4056
  * console.log($div); // $div => HTMLDivELement[] | null
3975
4057
  * })
3976
4058
  */
4059
+ waitNode<K extends keyof HTMLElementTagNameMap>(
4060
+ selectorList: K[],
4061
+ parent: Node | Element | Document | HTMLElement,
4062
+ timeout: number
4063
+ ): Promise<HTMLElementTagNameMap[K] | null>;
3977
4064
  waitNode<T extends Element[]>(
3978
4065
  selectorList: string[],
3979
4066
  parent: Node | Element | Document | HTMLElement,
@@ -3988,6 +4075,10 @@ class Utils {
3988
4075
  * console.log($div); // $div => HTMLDivELement | null
3989
4076
  * })
3990
4077
  */
4078
+ waitNode<K extends keyof HTMLElementTagNameMap>(
4079
+ selector: K,
4080
+ timeout: number
4081
+ ): Promise<HTMLElementTagNameMap[K] | null>;
3991
4082
  waitNode<T extends Element>(
3992
4083
  selector: string,
3993
4084
  timeout: number
@@ -4001,6 +4092,10 @@ class Utils {
4001
4092
  * console.log($div); // $div => HTMLDivELement[] | null
4002
4093
  * })
4003
4094
  */
4095
+ waitNode<K extends keyof HTMLElementTagNameMap>(
4096
+ selectorList: K[],
4097
+ timeout: number
4098
+ ): Promise<HTMLElementTagNameMap[K] | null>;
4004
4099
  waitNode<T extends Element[]>(
4005
4100
  selectorList: string[],
4006
4101
  timeout: number
@@ -4112,6 +4207,10 @@ class Utils {
4112
4207
  * console.log($a); // $a => HTMLAnchorElement 这里是第一个
4113
4208
  * })
4114
4209
  */
4210
+ waitAnyNode<K extends keyof HTMLElementTagNameMap>(
4211
+ selectorList: K[],
4212
+ parent?: Node | Element | Document | HTMLElement
4213
+ ): Promise<HTMLElementTagNameMap[K]>;
4115
4214
  waitAnyNode<T extends Element>(
4116
4215
  selectorList: string[],
4117
4216
  parent?: Node | Element | Document | HTMLElement
@@ -4126,6 +4225,11 @@ class Utils {
4126
4225
  * console.log($div); // $div => HTMLDivELement | null
4127
4226
  * })
4128
4227
  */
4228
+ waitAnyNode<K extends keyof HTMLElementTagNameMap>(
4229
+ selectorList: K[],
4230
+ parent: Node | Element | Document | HTMLElement,
4231
+ timeout: number
4232
+ ): Promise<HTMLElementTagNameMap[K] | null>;
4129
4233
  waitAnyNode<T extends Element>(
4130
4234
  selectorList: string[],
4131
4235
  parent: Node | Element | Document | HTMLElement,
@@ -4140,6 +4244,10 @@ class Utils {
4140
4244
  * console.log($div); // $div => HTMLDivELement | null
4141
4245
  * })
4142
4246
  */
4247
+ waitAnyNode<K extends keyof HTMLElementTagNameMap>(
4248
+ selectorList: K[],
4249
+ timeout: number
4250
+ ): Promise<HTMLElementTagNameMap[K] | null>;
4143
4251
  waitAnyNode<T extends Element>(
4144
4252
  selectorList: string[],
4145
4253
  timeout: number
@@ -4210,6 +4318,10 @@ class Utils {
4210
4318
  * console.log($result); // $result => NodeListOf<HTMLDivElement>
4211
4319
  * })
4212
4320
  */
4321
+ waitNodeList<T extends keyof HTMLElementTagNameMap>(
4322
+ selector: T,
4323
+ parent?: Node | Element | Document | HTMLElement
4324
+ ): Promise<NodeListOf<HTMLElementTagNameMap[T]>>;
4213
4325
  waitNodeList<T extends NodeListOf<Element>>(
4214
4326
  selector: string,
4215
4327
  parent?: Node | Element | Document | HTMLElement
@@ -4226,6 +4338,10 @@ class Utils {
4226
4338
  * console.log($result); // $result => NodeListOf<HTMLDivElement>[]
4227
4339
  * })
4228
4340
  */
4341
+ waitNodeList<K extends keyof HTMLElementTagNameMap>(
4342
+ selectorList: K[],
4343
+ parent?: Node | Element | Document | HTMLElement
4344
+ ): Promise<NodeListOf<HTMLElementTagNameMap[K]>[]>;
4229
4345
  waitNodeList<T extends NodeListOf<Element>[]>(
4230
4346
  selectorList: string[],
4231
4347
  parent?: Node | Element | Document | HTMLElement
@@ -4245,6 +4361,11 @@ class Utils {
4245
4361
  parent: Node | Element | Document | HTMLElement,
4246
4362
  timeout: number
4247
4363
  ): Promise<T | null>;
4364
+ waitNodeList<K extends keyof HTMLElementTagNameMap>(
4365
+ selector: K,
4366
+ parent: Node | Element | Document | HTMLElement,
4367
+ timeout: number
4368
+ ): Promise<NodeListOf<HTMLElementTagNameMap[K]> | null>;
4248
4369
  /**
4249
4370
  * 等待元素数组出现
4250
4371
  * @param selectorList CSS选择器数组
@@ -4255,6 +4376,11 @@ class Utils {
4255
4376
  * console.log($result); // $result => NodeListOf<HTMLDivElement>[] | null
4256
4377
  * })
4257
4378
  */
4379
+ waitNodeList<K extends keyof HTMLElementTagNameMap>(
4380
+ selectorList: K[],
4381
+ parent: Node | Element | Document | HTMLElement,
4382
+ timeout: number
4383
+ ): Promise<NodeListOf<HTMLElementTagNameMap[K]>[] | null>;
4258
4384
  waitNodeList<T extends NodeListOf<Element>[]>(
4259
4385
  selectorList: string[],
4260
4386
  parent: Node | Element | Document | HTMLElement,
@@ -4269,6 +4395,10 @@ class Utils {
4269
4395
  * console.log($result); // $result => NodeListOf<HTMLDivElement> | null
4270
4396
  * })
4271
4397
  */
4398
+ waitNodeList<K extends keyof HTMLElementTagNameMap>(
4399
+ selector: K[],
4400
+ timeout: number
4401
+ ): Promise<NodeListOf<HTMLElementTagNameMap[K]> | null>;
4272
4402
  waitNodeList<T extends NodeListOf<Element>>(
4273
4403
  selector: string[],
4274
4404
  timeout: number
@@ -4282,6 +4412,10 @@ class Utils {
4282
4412
  * console.log($result); // $result => NodeListOf<HTMLDivElement>[] | null
4283
4413
  * })
4284
4414
  */
4415
+ waitNodeList<K extends keyof HTMLElementTagNameMap>(
4416
+ selectorList: K[],
4417
+ timeout: number
4418
+ ): Promise<NodeListOf<HTMLElementTagNameMap[K]>[] | null>;
4285
4419
  waitNodeList<T extends NodeListOf<Element>>(
4286
4420
  selectorList: string[],
4287
4421
  timeout: number
@@ -4400,6 +4534,10 @@ class Utils {
4400
4534
  * console.log($result); // $result => NodeListOf<HTMLDivElement>
4401
4535
  * })
4402
4536
  */
4537
+ waitAnyNodeList<K extends keyof HTMLElementTagNameMap>(
4538
+ selectorList: K[],
4539
+ parent?: Node | Element | Document | HTMLElement
4540
+ ): Promise<NodeListOf<HTMLElementTagNameMap[K]>>;
4403
4541
  waitAnyNodeList<T extends Element>(
4404
4542
  selectorList: string[],
4405
4543
  parent?: Node | Element | Document | HTMLElement
@@ -4414,6 +4552,11 @@ class Utils {
4414
4552
  * console.log($result); // $result => NodeListOf<HTMLDivElement> | null
4415
4553
  * })
4416
4554
  */
4555
+ waitAnyNodeList<K extends keyof HTMLElementTagNameMap>(
4556
+ selectorList: K[],
4557
+ parent: Node | Element | Document | HTMLElement,
4558
+ timeout: number
4559
+ ): Promise<NodeListOf<HTMLElementTagNameMap[K]> | null>;
4417
4560
  waitAnyNodeList<T extends Element>(
4418
4561
  selectorList: string[],
4419
4562
  parent: Node | Element | Document | HTMLElement,
@@ -4428,6 +4571,10 @@ class Utils {
4428
4571
  * console.log($result); // $result => NodeListOf<HTMLDivElement> | null
4429
4572
  * })
4430
4573
  */
4574
+ waitAnyNodeList<K extends keyof HTMLElementTagNameMap>(
4575
+ selectorList: K[],
4576
+ timeout: number
4577
+ ): Promise<NodeListOf<HTMLElementTagNameMap[K]> | null>;
4431
4578
  waitAnyNodeList<T extends Element>(
4432
4579
  selectorList: string[],
4433
4580
  timeout: number