@theintern/leadfoot
Version:
Leadfoot. A JavaScript client library that brings cross-platform consistency to the Selenium WebDriver API.
127 lines (126 loc) • 3.94 kB
TypeScript
/// <reference types="node" />
import { CancellablePromise } from '@theintern/common';
import { UrlObject } from 'url';
export { CancellablePromise };
export interface Capabilities {
_filled?: boolean;
applicationCacheEnabled?: boolean;
brokenActiveElement?: boolean;
brokenClick?: boolean;
brokenComputedStyles?: boolean;
brokenCookies?: boolean;
brokenCssTransformedSize?: boolean;
brokenDeleteCookie?: boolean;
brokenDeleteWindow?: boolean;
brokenDoubleClick?: boolean;
brokenElementDisplayedOffscreen?: boolean;
brokenElementDisplayedOpacity?: boolean;
brokenElementEnabled?: boolean;
brokenElementPosition?: boolean;
brokenElementProperty?: boolean;
brokenElementSerialization?: boolean;
brokenEmptyPost?: boolean;
brokenExecuteElementReturn?: boolean;
brokenExecuteForNonHttpUrl?: boolean;
brokenExecuteUndefinedReturn?: boolean;
brokenFileSendKeys?: boolean;
brokenFlickFinger?: boolean;
brokenHtmlMouseMove?: boolean;
brokenHtmlTagName?: boolean;
brokenLinkTextLocator?: boolean;
brokenLongTap?: boolean;
brokenMouseEvents?: boolean;
brokenMoveFinger?: boolean;
brokenNavigation?: boolean;
brokenNullGetSpecAttribute?: boolean;
brokenOptionSelect?: boolean;
brokenPageSource?: boolean;
brokenParentFrameSwitch?: boolean;
brokenRefresh?: boolean;
brokenSendKeys?: boolean;
brokenSessionList?: boolean;
brokenSubmitElement?: boolean;
brokenTouchScroll?: boolean;
brokenVisibleText?: boolean;
brokenWhitespaceNormalization?: boolean;
brokenWindowClose?: boolean;
brokenWindowPosition?: boolean;
brokenWindowSize?: boolean;
brokenWindowSwitch?: boolean;
brokenZeroTimeout?: boolean;
browserName?: string;
browserVersion?: string;
deviceName?: string;
dynamicViewport?: boolean;
fixSessionCapabilities?: 'no-detect' | boolean;
fixedLogTypes?: false | string[] | CancellablePromise<string[]>;
handlesAlerts?: boolean;
hasTouchScreen?: boolean;
initialBrowserUrl?: string;
locationContextEnabled?: boolean;
mouseEnabled?: boolean;
nativeEvents?: boolean;
noElementDisplayed?: boolean;
noElementEquals?: boolean;
noKeysCommand?: boolean;
platform?: string;
platformName?: string;
platformVersion?: string;
remoteFiles?: boolean;
returnsFromClickImmediately?: boolean;
rotatable?: boolean;
scriptedParentFrameCrashesBrowser?: boolean;
shortcutKey?: any;
supportsCssTransforms?: boolean;
supportsExecuteAsync?: boolean;
supportsGetTimeouts?: boolean;
supportsNavigationDataUris?: boolean;
supportsSessionCommands?: boolean;
takesScreenshot?: boolean;
touchEnabled?: boolean;
usesFlatKeysArray?: boolean;
usesHandleParameter?: boolean;
usesWebDriverElementAttribute?: boolean;
usesWebDriverElementValue?: boolean;
usesWebDriverActiveElement?: boolean;
usesWebDriverExecuteASync?: boolean;
usesWebDriverExecuteSync?: boolean;
usesWebDriverLocators?: boolean;
usesWebDriverTimeouts?: boolean;
usesWebDriverWindowHandleCommands?: boolean;
usesWebDriverWindowCommands?: boolean;
version?: string;
webStorageEnabled?: boolean;
[key: string]: any;
}
export interface Geolocation {
altitude?: number;
latitude?: number;
longitude?: number;
}
export interface LogEntry {
timestamp: number;
level: string;
message: string;
}
export interface WebDriverCookie {
name: string;
value: string;
path?: string;
domain?: string;
secure?: boolean;
expiry?: string | Date | number;
}
export interface LeadfootURL extends UrlObject {
username?: string;
password?: string;
accessKey?: string;
}
export interface LeadfootError extends Error {
response?: {
text: string;
};
}
export interface WebDriverResponse {
value: any;
}