///
import { EventEmitter } from 'events';
import * as chromeUtil from './util/chrome';
export interface chromeConstructorOpts {
flags?: chromeUtil.flags;
cdp?: chromeUtil.cdp;
remote?: chromeUtil.remote;
timeout?: number;
username?: string;
password?: string;
}
export interface domOpts {
wait?: boolean;
timeout?: number;
}
export declare class Chrome extends EventEmitter {
private cdp?;
private flags?;
private remote?;
private kill;
private defaultTimeout;
private styleSheetsLoaded;
private actionQueue;
constructor(opts?: chromeConstructorOpts);
private getChromeCDP();
private runScript(script, async?);
private simulateKeyPress(type?, key?, modifiers?);
private evalNow(expression, ...args);
private waitNow(waitParam, timeout?);
private focusNow(selector, opts?);
goto(url: string, opts?: {
coverage: boolean;
onload: boolean;
timeout?: number;
}): Chrome;
evaluate(expression: Function, ...args: any[]): Chrome;
reload(ignoreCache: boolean): Chrome;
screenshot(selector?: string, opts?: domOpts): Chrome;
pdf(filePath: string): Chrome;
size(width: number, height: number): Chrome;
exists(selector: string, opts?: domOpts): Chrome;
html(selector?: string, opts?: domOpts): Chrome;
scroll(x?: number, y?: number): Chrome;
clear(): Chrome;
text(selector?: string, opts?: domOpts): Chrome;
fetch(...args: any[]): Chrome;
save(filePath?: string): Chrome;
click(selector: string, opts?: domOpts): Chrome;
focus(selector: string, opts?: domOpts): Chrome;
header(headerObj: {
[headerName: string]: string;
}): Chrome;
type(selector: string, value: string, opts?: domOpts): Chrome;
check(selector: string, opts?: domOpts): Chrome;
uncheck(selector: string, opts?: domOpts): Chrome;
select(selector: string, option: string, opts?: domOpts): Chrome;
visible(selector: string, opts?: domOpts): Chrome;
wait(waitParam: number | string, timeout?: number): Chrome;
inject(src: string): Chrome;
pageload(): Chrome;
cookie(name?: string, value?: string): Chrome;
back(): Chrome;
forward(): Chrome;
attr(selector: string, attribute: string, opts?: domOpts): Chrome;
auth(username?: string, password?: string): Chrome;
coverage(src: string): Chrome;
then(handler: (any) => any): Promise;
end(): Chrome;
done(): void;
}