@theintern/leadfoot
Version:
Leadfoot. A JavaScript client library that brings cross-platform consistency to the Selenium WebDriver API.
62 lines (61 loc) • 2.33 kB
TypeScript
declare abstract class Locator<E, L, V> {
abstract find(strategy: Strategy, value: string): E;
abstract findAll(strategy: Strategy, value: string): L;
abstract findDisplayed(strategy: Strategy, value: string): E;
abstract waitForDeleted(strategy: Strategy, value: string): V;
findByClassName(className: string): E;
findByCssSelector(selector: string): E;
findById(id: string): E;
findByName(name: string): E;
findByLinkText(text: string): E;
findByPartialLinkText(text: string): E;
findByTagName(tagName: string): E;
findByXpath(path: string): E;
findAllByClassName(className: string): L;
findAllByCssSelector(selector: string): L;
findAllByName(name: string): L;
findAllByLinkText(text: string): L;
findAllByPartialLinkText(text: string): L;
findAllByTagName(tagName: string): L;
findAllByXpath(path: string): L;
findDisplayedByClassName(className: string): E;
findDisplayedByCssSelector(selector: string): E;
findDisplayedById(id: string): E;
findDisplayedByName(name: string): E;
findDisplayedByLinkText(text: string): E;
findDisplayedByPartialLinkText(text: string): E;
findDisplayedByTagName(tagName: string): E;
findDisplayedByXpath(path: string): E;
waitForDeletedByClassName(className: string): V;
waitForDeletedByCssSelector(selector: string): V;
waitForDeletedById(id: string): V;
waitForDeletedByName(name: string): V;
waitForDeletedByLinkText(text: string): V;
waitForDeletedByPartialLinkText(text: string): V;
waitForDeletedByTagName(tagName: string): V;
waitForDeletedByXpath(path: string): V;
}
export default Locator;
export declare const w3cStrategies: {
'css selector': boolean;
'link text': boolean;
'partial link text': boolean;
xpath: boolean;
};
export declare type W3cStrategy = keyof typeof w3cStrategies;
export interface W3cLocator {
using: W3cStrategy;
value: string;
}
export declare const strategies: {
'class name': boolean;
id: boolean;
name: boolean;
'partial link text': boolean;
'tag name': boolean;
'css selector': boolean;
'link text': boolean;
xpath: boolean;
};
export declare type Strategy = keyof typeof strategies;
export declare function toW3cLocator(using: Strategy, value: string): W3cLocator;