/** * This is a base driver provider class. * It is responsible for setting up the account object, tearing * it down, and setting up the driver correctly. */ import { WebDriver } from 'selenium-webdriver'; import { Config } from '../config'; export declare abstract class DriverProvider { drivers_: WebDriver[]; config_: Config; private bpRunner; constructor(config: Config); /** * Get all existing drivers. * * @public * @return array of webdriver instances */ getExistingDrivers(): WebDriver[]; getBPUrl(): string; /** * Create a new driver. * * @public * @return a promise to a webdriver instance */ getNewDriver(): Promise; /** * Quit a driver. * * @public * @param webdriver instance */ quitDriver(driver: WebDriver): Promise; /** * Quits an array of drivers and returns a q promise instead of a webdriver one * * @param drivers {webdriver.WebDriver[]} The webdriver instances */ static quitDrivers(provider: DriverProvider, drivers: WebDriver[]): Promise; /** * Default update job method. * @return a promise */ updateJob(update: any): Promise; /** * Default setup environment method, common to all driver providers. */ setupEnv(): Promise; /** * Set up environment specific to a particular driver provider. Overridden * by each driver provider. */ protected abstract setupDriverEnv(): Promise; /** * Teardown and destroy the environment and do any associated cleanup. * Shuts down the drivers. * * @public * @return {Promise} A promise which will resolve when the environment is down. */ teardownEnv(): Promise; }