chromeless
Version:
🖥 Chrome automation made simple. Runs locally or headless on AWS Lambda.
42 lines (41 loc) • 1.84 kB
TypeScript
import { Client, Command, ChromelessOptions, Headers, Cookie, CookieQuery, PdfOptions, ScreenshotOptions } from '../types';
export default class LocalRuntime {
private client;
private chromelessOptions;
private userAgentValue;
constructor(client: Client, chromelessOptions: ChromelessOptions);
run(command: Command): Promise<any>;
private goto(url, waitTimeout?);
private clearCache();
private clearStorage(origin, storageTypes);
private setUserAgent(useragent);
private waitTimeout(timeout);
private waitSelector(selector, waitTimeout?);
private click(selector);
private returnCode<T>(fn, ...args);
private scrollTo<T>(x, y);
private scrollToElement<T>(selector);
private mousedown(selector);
private mouseup(selector);
private setHtml(html);
private focus(selector);
type(text: string, selector?: string): Promise<void>;
cookies(nameOrQuery?: string | CookieQuery): Promise<Cookie[]>;
allCookies(): Promise<Cookie[]>;
setExtraHTTPHeaders(headers: Headers): Promise<void>;
setCookies(nameOrCookies: string | Cookie | Cookie[], value?: string): Promise<void>;
deleteCookies(name: string, url: string): Promise<void>;
clearCookies(): Promise<void>;
press(keyCode: number, count?: number, modifiers?: any): Promise<void>;
returnExists(selector: string): Promise<boolean>;
returnInputValue(selector: string): Promise<string>;
returnScreenshot(selector?: string, options?: ScreenshotOptions): Promise<string>;
returnHtml(): Promise<string>;
returnHtmlUrl(options?: {
filePath?: string;
}): Promise<string>;
returnPdf(options?: PdfOptions): Promise<string>;
clearInput(selector: string): Promise<void>;
setFileInput(selector: string, files: string[]): Promise<void>;
private log(msg);
}