| /// <reference types="node" /> |
| import * as http from 'http'; |
| import { AngularWaitBarrier } from './angular_wait_barrier'; |
| import { HighlightDelayBarrier } from './highlight_delay_barrier'; |
| import { WebDriverLogger } from './webdriver_logger'; |
| export declare const BP_PREFIX = "bpproxy"; |
| /** |
| * The stability proxy is an http server responsible for intercepting |
| * JSON webdriver commands. It keeps track of whether the page under test |
| * needs to wait for page stability, and initiates a wait if so. |
| */ |
| export declare class BlockingProxy { |
| server: http.Server; |
| logger: WebDriverLogger; |
| waitBarrier: AngularWaitBarrier; |
| highlightBarrier: HighlightDelayBarrier; |
| private proxy; |
| constructor(seleniumAddress: string, highlightDelay?: number); |
| /** |
| * This command is for the proxy server, not to be forwarded to Selenium. |
| */ |
| static isProxyCommand(commandPath: string): boolean; |
| /** |
| * Turn on WebDriver logging. |
| * |
| * @param logDir The directory to create logs in. |
| */ |
| enableLogging(logDir: string): void; |
| /** |
| * Override the logger instance. Only used for testing. |
| */ |
| setLogger(logger: WebDriverLogger): void; |
| /** |
| * Change the parameters used by the wait function. |
| */ |
| setWaitParams(rootEl: any): void; |
| handleProxyCommand(message: any, data: any, response: any): void; |
| requestListener(originalRequest: http.IncomingMessage, response: http.ServerResponse): void; |
| listen(port: number): number; |
| quit(): Promise<{}>; |
| } |