Skip to content
This repository was archived by the owner on Jul 29, 2024. It is now read-only.

Commit dbc8d5a

Browse files
Juras Norkusheathkit
Juras Norkus
authored andcommitted
chore(types): make ElementArrayFinder more generic (#3977)
1 parent 40bbeca commit dbc8d5a

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

lib/element.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -229,7 +229,7 @@ export class ElementArrayFinder extends WebdriverWebElement {
229229
* array
230230
* of element that satisfy the filter function.
231231
*/
232-
filter(filterFn: Function): ElementArrayFinder {
232+
filter(filterFn: (element: ElementFinder, index?: number) => any): ElementArrayFinder {
233233
let getWebElements = (): wdpromise.Promise<WebElement[]> => {
234234
return this.getWebElements().then((parentWebElements: WebElement[]) => {
235235
let list = parentWebElements.map((parentWebElement: WebElement, index: number) => {
@@ -500,7 +500,7 @@ export class ElementArrayFinder extends WebdriverWebElement {
500500
* @returns {Array.<ElementFinder>} Return a promise, which resolves to a list
501501
* of ElementFinders specified by the locator.
502502
*/
503-
asElementFinders_(): wdpromise.Promise<any> {
503+
asElementFinders_(): wdpromise.Promise<ElementFinder[]> {
504504
return this.getWebElements().then((arr: WebElement[]) => {
505505
return arr.map((webElem: WebElement) => {
506506
return ElementFinder.fromWebElement_(this.browser_, webElem, this.locator_);
@@ -538,9 +538,9 @@ export class ElementArrayFinder extends WebdriverWebElement {
538538
* @returns {!webdriver.promise.Promise} A promise which will resolve to
539539
* an array of ElementFinders represented by the ElementArrayFinder.
540540
*/
541-
then(
542-
fn?: (value: ElementFinder[]) => any | wdpromise.IThenable<any>,
543-
errorFn?: (error: any) => any): wdpromise.Promise<any> {
541+
then<T>(
542+
fn?: (value: ElementFinder[]) => T | wdpromise.IThenable<T>,
543+
errorFn?: (error: any) => any): wdpromise.Promise<T> {
544544
if (this.actionResults_) {
545545
return this.actionResults_.then(fn, errorFn);
546546
} else {
@@ -636,7 +636,7 @@ export class ElementArrayFinder extends WebdriverWebElement {
636636
* @returns {!webdriver.promise.Promise} A promise that resolves to an array
637637
* of values returned by the map function.
638638
*/
639-
map(mapFn: (elementFinder?: ElementFinder, index?: number) => any): wdpromise.Promise<any> {
639+
map<T>(mapFn: (elementFinder?: ElementFinder, index?: number) => T): wdpromise.Promise<T> {
640640
return this.asElementFinders_().then((arr: ElementFinder[]) => {
641641
let list = arr.map((elementFinder?: ElementFinder, index?: number) => {
642642
let mapResult = mapFn(elementFinder, index);

0 commit comments

Comments
 (0)