UNPKG

jspcom

Version:

TypeScript and JavaScript page component object framework for Selenium

43 lines (42 loc) 1.8 kB
import 'reflect-metadata'; import { type Locator, type WebDriver, type WebElement } from 'selenium-webdriver'; import type { ShadowRootPromise } from 'selenium-webdriver/lib/webdriver.js'; import { ComponentManager } from './componentManager.js'; export declare abstract class BaseComponent extends ComponentManager { parent: ComponentManager; driver: WebDriver; stalenessCache: WebElement | null; findFromParent: boolean; abstract locator: Locator | null; constructor(parent: ComponentManager, driver: WebDriver, ..._args: unknown[]); protected getReferenceNode(): Promise<WebElement | WebDriver>; getElement(): Promise<WebElement>; isPresent(): Promise<boolean>; switchToParentFrame(): Promise<void>; cacheElementForStalenessCheck(): Promise<void>; cacheHasGoneStale(): Promise<boolean>; private isCacheStale; clear(): Promise<void>; click(): Promise<void>; findElement(locator: Locator): Promise<WebElement>; findElements(locator: Locator): Promise<WebElement[]>; getAttribute(attributeName: string): Promise<string | null>; getCssValue(cssStyleProperty: string): Promise<string>; getId(): Promise<string>; getRect(): Promise<{ height: number; width: number; x: number; y: number; }>; getTagName(): Promise<string>; getText(): Promise<string>; isDisplayed(): Promise<boolean>; isEnabled(): Promise<boolean>; isSelected(): Promise<boolean>; sendKeys(...args: Parameters<WebElement['sendKeys']>): Promise<void>; submit(): Promise<void>; takeScreenshot(scroll?: boolean): Promise<string>; getShadowRoot(): Promise<ShadowRootPromise>; } export declare function Component(...args: unknown[]): (target: ComponentManager, propertyKey: string) => void;