From 77298da2afae4624489273a3fd9dd95fd04bfd1f Mon Sep 17 00:00:00 2001 From: Fredrik Smedberg Date: Fri, 9 Dec 2016 16:36:23 +0100 Subject: [PATCH] Makes the type definitions compatible with WebdriverIO 4.4.0. Merged my changes (removed all callbacks) with WillLuce pull request #12416. --- webdriverio/index.d.ts | 467 ++++++++++++++++++++++++----------------- 1 file changed, 277 insertions(+), 190 deletions(-) diff --git a/webdriverio/index.d.ts b/webdriverio/index.d.ts index 44a0e6ea57..5734bc3990 100644 --- a/webdriverio/index.d.ts +++ b/webdriverio/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for webdriverio 4.0.4 +// Type definitions for webdriverio 4.4.0 // Project: http://www.webdriver.io/ // Definitions by: Nick Malaguti // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -30,96 +30,116 @@ declare namespace WebdriverIO { // Action export interface Client { - addValue(selector: string, value: string | number): Client; + addValue( + selector: string, + value: string | number + ): Client; + addValue(value: string | number): Client; addValue

( selector: string, value: string | number, - callback: (err: any) => P ): Client

; + addValue

(value: string | number): Client

; clearElement(selector: string): Client; - clearElement

( - selector: string, - callback: (err: any) => P - ): Client

; + clearElement(): Client; + clearElement

(selector: string): Client

; + clearElement

(): Client

; click(selector: string): Client; - click

( - selector: string, - callback: (err: any) => P - ): Client

; + click(): Client; + click

(selector: string): Client

; + click

(): Client

; doubleClick(selector: string): Client; - doubleClick

( - selector: string, - callback: (err: any) => P - ): Client

; + doubleClick(): Client; + doubleClick

(selector: string): Client

; + doubleClick

(): Client

; - dragAndDrop(sourceElem: string, destinationElem: string): Client; + dragAndDrop( + sourceElem: string, + destinationElem: string + ): Client; + dragAndDrop(destinationElem: string): Client; dragAndDrop

( sourceElem: string, - destinationElem: string, callback: (err: any) => P + destinationElem: string ): Client

; + dragAndDrop

(destinationElem: string): Client

; leftClick(selector: string): Client; - leftClick

( - selector: string, - callback: (err: any) => P - ): Client

; + leftClick(): Client; + leftClick

(selector: string): Client

; + leftClick

(): Client

; middleClick(selector: string): Client; - middleClick

( - selector: string, - callback: (err: any) => P - ): Client

; + middleClick(): Client; + middleClick

(selector: string): Client

; + middleClick

(): Client

; moveToObject(selector: string): Client; - moveToObject(selector: string, xoffset: number, yoffset: number): Client; - moveToObject

( + moveToObject(): Client; + moveToObject( selector: string, - callback: (err: any) => P - ): Client

; + xoffset: number, + yoffset: number + ): Client; + moveToObject( + xoffset: number, + yoffset: number + ): Client; + moveToObject

(selector: string): Client

; + moveToObject

(): Client

; moveToObject

( selector: string, xoffset: number, - yoffset: number, - callback: (err: any) => P + yoffset: number + ): Client

; + moveToObject

( + xoffset: number, + yoffset: number ): Client

; rightClick(selector: string): Client; - rightClick

( - selector: string, - callback: (err: any) => P - ): Client

; + rightClick(): Client; + rightClick

(selector: string): Client

; + rightClick

(): Client

; selectByAttribute(selector: string, attribute: string, value: string): Client; + selectByAttribute(attribute: string, value: string): Client; selectByAttribute

( selector: string, attribute: string, - value: string, - callback: (err: any) => P + value: string + ): Client

; + selectByAttribute

( + attribute: string, + value: string ): Client

; selectByIndex(selectElem: string, index: number): Client; + selectByIndex(index: number): Client; selectByIndex

( selectElem: string, - index: number, - callback: (err: any) => P + index: number ): Client

; + selectByIndex

(index: number): Client

; selectByValue(selectElem: string, value: string): Client; + selectByValue(value: string): Client; selectByValue

( selectElem: string, - value: string, - callback: (err: any) => P + value: string ): Client

; + selectByValue

(value: string): Client

; selectByVisibleText(selectElem: string, text: string): Client; + selectByVisibleText(text: string): Client; selectByVisibleText

( selectElem: string, - text: string, - callback: (err: any) => P + text: string ): Client

; + selectByVisibleText

(text: string): Client

; selectorExecute

( selectors: string | string[], @@ -134,17 +154,17 @@ declare namespace WebdriverIO { ): Client

; setValue(selector: string, values: number | string | Array): Client; + setValue(values: number | string | Array): Client; setValue

( selector: string, - values: number | string | Array, - callback: (err: any) => P + values: number | string | Array ): Client; + setValue

(values: number | string | Array): Client; submitForm(selector: string): Client; - submitForm

( - selector: string, - callback: (err: any) => P - ): Client; + submitForm(): Client; + submitForm

(selector: string): Client; + submitForm

(): Client; } // Appium @@ -187,13 +207,8 @@ declare namespace WebdriverIO { // Cookie export interface Client { deleteCookie(name?: string): Client; - deleteCookie

( - callback: (err: any) => P - ): Client

; - deleteCookie

( - name: string, - callback: (err: any) => P - ): Client

; + deleteCookie

(): Client

; + deleteCookie

(name: string): Client

; getCookie(): Client; getCookie(name: string): Client; @@ -206,10 +221,7 @@ declare namespace WebdriverIO { ): Client

; setCookie(cookie: Cookie): Client; - setCookie

( - cookie: Cookie, - callback: (err: any) => P - ): Client

; + setCookie

(cookie: Cookie): Client

; } export interface Client { @@ -277,80 +289,133 @@ declare namespace WebdriverIO { // Property export interface Client { getAttribute(selector: string, attributeName: string): Client; + getAttribute(attributeName: string): Client; getAttribute

( selector: string, attributeName: string, callback: (err: any, attribute: string | string[]) => P ): Client

; + getAttribute

( + attributeName: string, + callback: (err: any, attribute: string | string[]) => P + ): Client

; getCssProperty(selector: string, cssProperty: string): Client; + getCssProperty(cssProperty: string): Client; getCssProperty

( selector: string, cssProperty: string, callback: (err: any, cssProperty: CssProperty | CssProperty[]) => P ): Client

; + getCssProperty

( + cssProperty: string, + callback: (err: any, cssProperty: CssProperty | CssProperty[]) => P + ): Client

; getElementSize(selector: string): Client; + getElementSize(): Client; getElementSize(selector: string, dimension: string): Client; + getElementSize(dimension: string): Client; getElementSize

( selector: string, callback: (err: any, size: Size | Size[]) => P ): Client

; + getElementSize

( + callback: (err: any, size: Size | Size[]) => P + ): Client

; getElementSize

( selector: string, dimension: string, callback: (err: any, elementSize: number | number[]) => P ): Client

; + getElementSize

( + dimension: string, + callback: (err: any, elementSize: number | number[]) => P + ): Client

; getHTML(selector: string, includeSelectorTag?: boolean): Client; + getHTML(includeSelectorTag?: boolean): Client; getHTML

( selector: string, callback: (err: any, html: string | string[]) => P ): Client

; + getHTML

( + callback: (err: any, html: string | string[]) => P + ): Client

; getHTML

( selector: string, includeSelectorTag: boolean, callback: (err: any, html: string | string[]) => P ): Client

; + getHTML

( + includeSelectorTag: boolean, + callback: (err: any, html: string | string[]) => P + ): Client

; - getLocation(selector: string): Client; + getLocation(selector: string): Client; + getLocation(): Client; getLocation(selector: string, axis: string): Client; + getLocation(axis: string): Client; getLocation

( selector: string, - callback: (err: any, location: Location) => P + callback: (err: any, size: Size) => P + ): Client

; + getLocation

( + callback: (err: any, size: Size) => P ): Client

; getLocation

( selector: string, axis: string, callback: (err: any, location: number) => P ): Client

; + getLocation

( + axis: string, + callback: (err: any, location: number) => P + ): Client

; - getLocationInView(selector: string): Client; + getLocationInView(selector: string): Client; + getLocationInView(): Client; getLocationInView(selector: string, axis: string): Client; + getLocationInView(axis: string): Client; getLocationInView

( selector: string, - callback: (err: any, location: Location | Location[]) => P + callback: (err: any, size: Size | Size[]) => P + ): Client

; + getLocationInView

( + callback: (err: any, size: Size | Size[]) => P ): Client

; getLocationInView

( selector: string, axis: string, callback: (err: any, location: number | number[]) => P ): Client

; + getLocationInView

( + axis: string, + callback: (err: any, location: number | number[]) => P + ): Client

; getSource(): Client; getSource

(callback: (err: any, source: string) => P): Client

; getTagName(selector: string): Client; + getTagName(): Client; getTagName

( selector: string, callback: (err: any, tagName: string | string[]) => P ): Client

; + getTagName

( + callback: (err: any, tagName: string | string[]) => P + ): Client

; getText(selector: string): Client; + getText(): Client; getText

( selector: string, callback: (err: any, text: string | string[]) => P ): Client

; + getText

( + callback: (err: any, text: string | string[]) => P + ): Client

; getTitle(): Client; getTitle

( @@ -363,10 +428,14 @@ declare namespace WebdriverIO { ): Client

; getValue(selector: string): Client; + getValue(): Client; getValue

( selector: string, callback: (err: any, value: string | string[]) => P ): Client

; + getValue

( + callback: (err: any, value: string | string[]) => P + ): Client

; } export interface LogEntry { @@ -395,7 +464,7 @@ declare namespace WebdriverIO { value: any; } - export interface GeoLocation { + export interface Location { latitude: number; longitude: number; altitude: number; @@ -413,94 +482,60 @@ declare namespace WebdriverIO { // Navigation export interface Client { back(): Client; - back

( - callback: (err: any) => P - ): Client

; + back

(): Client

; forward(): Client; - forward

( - callback: (err: any) => P - ): Client

; + forward

(): Client

; refresh(): Client; - refresh

( - callback: (err: any) => P - ): Client

; + refresh

(): Client

; url(): Client>; url(url: string): Client; url

( callback: (err: any, result: RawResult) => P ): Client

; - url

( - url: string, - callback: (err: any) => P - ): Client

; + url

(url: string): Client

; } // Advanced input export interface Client { // you probably want to use the click and drag and drop commands instead buttonDown(button?: string | Button): Client; - buttonDown

( - callback: (err: any) => P - ): Client

; - buttonDown

( - button: string | Button, - callback: (err: any) => P - ): Client

; + buttonDown

(): Client

; + buttonDown

(button: string | Button): Client

; // you probably want to use the click and drag and drop commands instead buttonPress(button?: string | Button): Client; - buttonPress

( - callback: (err: any) => P - ): Client

; - buttonPress

( - button: string | Button, - callback: (err: any) => P - ): Client

; + buttonPress

(): Client

; + buttonPress

(button: string | Button): Client

; // you probably want to use the click and drag and drop commands instead buttonUp(button?: string | Button): Client; - buttonUp

( - callback: (err: any) => P - ): Client

; + buttonUp

(): Client

; buttonUp(button?: string | Button): Client; - buttonUp

( - button: string | Button, - callback: (err: any) => P - ): Client

; + buttonUp

(button: string | Button): Client

; // you probably want to use the click and drag and drop commands instead doDoubleClick(): Client; - doDoubleClick

( - callback: (err: any) => P - ): Client

; + doDoubleClick

(): Client

; // you probably want to use addValue and setValue instead keys(value: string | string[]): Client; - keys

( - value: string | string[], - callback: (err: any) => P - ): Client

; + keys

(value: string | string[]): Client

; // you probably want to use the moveToObject command instead moveTo(id: ElementId, xoffset?: number, yoffset?: number): Client; moveTo(xoffset?: number, yoffset?: number): Client; + moveTo

(id: ElementId): Client

; moveTo

( id: ElementId, - callback: (err: any) => P + xoffset: number ): Client

; moveTo

( id: ElementId, xoffset: number, - callback: (err: any) => P - ): Client

; - moveTo

( - id: ElementId, - xoffset: number, - yoffset: number, - callback: (err: any) => P + yoffset: number ): Client

; // touchClick @@ -516,14 +551,10 @@ declare namespace WebdriverIO { // Useful Protocol export interface Client { alertAccept(): Client; - alertAccept

( - callback: (err: any) => P - ): Client

; + alertAccept

(): Client

; alertDismiss(): Client; - alertDismiss

( - callback: (err: any) => P - ): Client

; + alertDismiss

(): Client

; alertText(text?: string): Client; alertText

( @@ -535,24 +566,14 @@ declare namespace WebdriverIO { ): Client

; frame(id: any): Client; - frame

( - id: any, - callback: (err: any) => P - ): Client

; + frame

(id: any): Client

; frameParent(): Client; - frameParent

( - callback: (err: any) => P - ): Client

; + frameParent

(): Client

; init(capabilities?: DesiredCapabilities): Client; - init

( - callback: (err: any) => P - ): Client

; - init

( - capabilities: DesiredCapabilities, - callback: (err: any) => P - ): Client

; + init

(): Client

; + init

(capabilities: DesiredCapabilities): Client

; log(type: string): Client>; log

( @@ -623,16 +644,10 @@ declare namespace WebdriverIO { ): Client

; elementIdClear(id: ElementId): Client; - elementIdClear

( - id: ElementId, - callback: (err: any) => P - ): Client

; + elementIdClear

(id: ElementId): Client

; elementIdClick(id: ElementId): Client; - elementIdClick

( - id: ElementId, - callback: (err: any) => P - ): Client

; + elementIdClick

(id: ElementId): Client

; elementIdCssProperty(id: ElementId, propertyName: string): Client>; elementIdCssProperty

( @@ -746,10 +761,7 @@ declare namespace WebdriverIO { // use submitForm instead submit(id: ElementId): Client; - submit

( - id: ElementId, - callback: (err: any) => P - ): Client

; + submit

(id: ElementId): Client

; // title } @@ -757,34 +769,54 @@ declare namespace WebdriverIO { // State export interface Client { isEnabled(selector: string): Client; + isEnabled(): Client; isEnabled

( selector: string, callback: (err: any, isEnabled: boolean) => P ): Client

; + isEnabled

( + callback: (err: any, isEnabled: boolean) => P + ): Client

; isExisting(selector: string): Client; + isExisting(): Client; isExisting

( selector: string, callback: (err: any, isExisting: boolean) => P ): Client

; + isExisting

( + callback: (err: any, isExisting: boolean) => P + ): Client

; isSelected(selector: string): Client; + isSelected(): Client; isSelected

( selector: string, callback: (err: any, isSelected: boolean) => P ): Client

; + isSelected

( + callback: (err: any, isSelected: boolean) => P + ): Client

; isVisible(selector: string): Client; + isVisible(): Client; isVisible

( selector: string, callback: (err: any, isVisible: boolean) => P ): Client

; + isVisible

( + callback: (err: any, isVisible: boolean) => P + ): Client

; isVisibleWithinViewport(selector: string): Client; + isVisibleWithinViewport(): Client; isVisibleWithinViewport

( selector: string, callback: (err: any, isVisible: boolean) => P ): Client

; + isVisibleWithinViewport

( + callback: (err: any, isVisible: boolean) => P + ): Client

; } export interface CommandHistoryEntry { @@ -797,37 +829,30 @@ declare namespace WebdriverIO { addCommand(commandName: string, customMethod: Function, overwrite?: boolean): Client; addCommand

( commandName: string, - customMethod: Function, - callback: (err: any) => P + customMethod: Function ): Client

; addCommand

( commandName: string, customMethod: Function, - overwrite: boolean, - callback: (err: any) => P + overwrite: boolean ): Client

; chooseFile(selector: string, localPath: string): Client; + chooseFile(localPath: string): Client; chooseFile

( selector: string, - localPath: string, - callback: (err: any) => P + localPath: string ): Client

; + chooseFile

(localPath: string): Client

; debug(): Client; - debug

( - callback: (err: any) => P - ): Client

; + debug

(): Client

; end(): Client; - end

( - callback: (err: any) => P - ): Client

; + end

(): Client

; endAll(): Client; - endAll

( - callback: (err: any) => P - ): Client

; + endAll

(): Client

; getCommandHistory(): Client; getCommandHistory

( @@ -835,7 +860,7 @@ declare namespace WebdriverIO { ): Client

; pause(milliseconds: number): Client; - pause

(milliseconds: number, callback: (err: any) => P): Client

; + pause

(milliseconds: number): Client

; saveScreenshot(filename?: string): Client; saveScreenshot

( @@ -847,131 +872,203 @@ declare namespace WebdriverIO { ): Client

; scroll(selector: string): Client; + scroll(): Client; scroll(selector: string, xoffset: number, yoffset: number): Client; scroll(xoffset: number, yoffset: number): Client; - scroll

( - selector: string, - callback: (err: any) => P - ): Client

; + scroll

(selector: string): Client

; + scroll

(): Client

; scroll

( selector: string, xoffset: number, - yoffset: number, - callback: (err: any) => P + yoffset: number ): Client

; scroll

( xoffset: number, - yoffset: number, - callback: (err: any) => P + yoffset: number ): Client

; uploadFile(localPath: string): Client; - uploadFile

( - localPath: string, - callback: (err: any) => P - ): Client

; + uploadFile

(localPath: string): Client

; waitForEnabled(selector: string, milliseconds?: number, reverse?: boolean): Client; + waitForEnabled(milliseconds?: number, reverse?: boolean): Client; waitForEnabled

( selector: string, callback: (err: any, enabled: boolean) => P ): Client

; + waitForEnabled

( + callback: (err: any, enabled: boolean) => P + ): Client

; waitForEnabled

( selector: string, milliseconds: number, callback: (err: any, enabled: boolean) => P ): Client

; + waitForEnabled

( + milliseconds: number, + callback: (err: any, enabled: boolean) => P + ): Client

; waitForEnabled

( selector: string, milliseconds: number, reverse: boolean, callback: (err: any, enabled: boolean) => P ): Client

; + waitForEnabled

( + milliseconds: number, + reverse: boolean, + callback: (err: any, enabled: boolean) => P + ): Client

; waitForExist(selector: string, milliseconds?: number, reverse?: boolean): Client; + waitForExist(milliseconds?: number, reverse?: boolean): Client; waitForExist

( selector: string, callback: (err: any, enabled: boolean) => P ): Client

; + waitForExist

( + callback: (err: any, enabled: boolean) => P + ): Client

; waitForExist

( selector: string, milliseconds: number, callback: (err: any, enabled: boolean) => P ): Client

; + waitForExist

( + milliseconds: number, + callback: (err: any, enabled: boolean) => P + ): Client

; waitForExist

( selector: string, milliseconds: number, reverse: boolean, callback: (err: any, enabled: boolean) => P ): Client

; + waitForExist

( + milliseconds: number, + reverse: boolean, + callback: (err: any, enabled: boolean) => P + ): Client

; waitForSelected(selector: string, milliseconds?: number, reverse?: boolean): Client; + waitForSelected(milliseconds?: number, reverse?: boolean): Client; waitForSelected

( selector: string, callback: (err: any, enabled: boolean) => P ): Client

; + waitForSelected

( + callback: (err: any, enabled: boolean) => P + ): Client

; waitForSelected

( selector: string, milliseconds: number, callback: (err: any, enabled: boolean) => P ): Client

; + waitForSelected

( + milliseconds: number, + callback: (err: any, enabled: boolean) => P + ): Client

; waitForSelected

( selector: string, milliseconds: number, reverse: boolean, callback: (err: any, enabled: boolean) => P ): Client

; + waitForSelected

( + milliseconds: number, + reverse: boolean, + callback: (err: any, enabled: boolean) => P + ): Client

; waitForText(selector: string, milliseconds?: number, reverse?: boolean): Client; + waitForText(milliseconds?: number, reverse?: boolean): Client; waitForText

( selector: string, callback: (err: any, enabled: boolean) => P ): Client

; + waitForText

( + callback: (err: any, enabled: boolean) => P + ): Client

; waitForText

( selector: string, milliseconds: number, callback: (err: any, enabled: boolean) => P ): Client

; + waitForText

( + milliseconds: number, + callback: (err: any, enabled: boolean) => P + ): Client

; waitForText

( selector: string, milliseconds: number, reverse: boolean, callback: (err: any, enabled: boolean) => P ): Client

; + waitForText

( + milliseconds: number, + reverse: boolean, + callback: (err: any, enabled: boolean) => P + ): Client

; waitForValue(selector: string, milliseconds?: number, reverse?: boolean): Client; + waitForValue(milliseconds?: number, reverse?: boolean): Client; waitForValue

( selector: string, callback: (err: any, enabled: boolean) => P ): Client

; + waitForValue

( + callback: (err: any, enabled: boolean) => P + ): Client

; waitForValue

( selector: string, milliseconds: number, callback: (err: any, enabled: boolean) => P ): Client

; + waitForValue

( + milliseconds: number, + callback: (err: any, enabled: boolean) => P + ): Client

; waitForValue

( selector: string, milliseconds: number, reverse: boolean, callback: (err: any, enabled: boolean) => P ): Client

; + waitForValue

( + milliseconds: number, + reverse: boolean, + callback: (err: any, enabled: boolean) => P + ): Client

; waitForVisible(selector: string, milliseconds?: number, reverse?: boolean): Client; + waitForVisible(milliseconds?: number, reverse?: boolean): Client; waitForVisible

( selector: string, callback: (err: any, enabled: boolean) => P ): Client

; + waitForVisible

( + callback: (err: any, enabled: boolean) => P + ): Client

; waitForVisible

( selector: string, milliseconds: number, callback: (err: any, enabled: boolean) => P ): Client

; + waitForVisible

( + milliseconds: number, + callback: (err: any, enabled: boolean) => P + ): Client

; waitForVisible

( selector: string, milliseconds: number, reverse: boolean, callback: (err: any, enabled: boolean) => P ): Client

; + waitForVisible

( + milliseconds: number, + reverse: boolean, + callback: (err: any, enabled: boolean) => P + ): Client

; waitUntil( condition: () => boolean | Q.IPromise, @@ -991,13 +1088,8 @@ declare namespace WebdriverIO { // Window export interface Client { close(windowHandle?: string): Client; - close

( - callback: (err: any) => P - ): Client

; - close

( - windowHandle: string, - callback: (err: any) => P - ): Client

; + close

(): Client

; + close

(windowHandle: string): Client

; getCurrentTabId(): Client; getCurrentTabId

( @@ -1030,18 +1122,12 @@ declare namespace WebdriverIO { setViewportSize(size: Size, type: boolean): Client; setViewportSize

( size: Size, - type: boolean, - callback: (err: any) => P + type: boolean ): Client

; switchTab(windowHandle?: string): Client; - switchTab

( - callback: (err: any) => P - ): Client

; - switchTab

( - windowHandle: string, - callback: (err: any) => P - ): Client

; + switchTab

(): Client

; + switchTab

(windowHandle: string): Client

; } export interface Options { @@ -1085,3 +1171,4 @@ declare var browser: WebdriverIO.Client; declare module "webdriverio" { export = WebdriverIO; } +