@extra/proxy-router
Version:
A plugin for playwright & puppeteer to route proxies dynamically.
40 lines (39 loc) • 1.66 kB
TypeScript
import { PuppeteerExtraPlugin } from 'puppeteer-extra-plugin';
import { ProxyRouter, ProxyRouterOpts } from './router';
export declare type ExtraPluginProxyRouterOptions = ProxyRouterOpts & {
/**
* Optionally exempt hosts from going through a proxy, even our internal routing proxy.
*
* Examples:
* `.com` or `chromium.org` or `.domain.com`
*
* @see
* https://chromium.googlesource.com/chromium/src/+/HEAD/net/docs/proxy.md#proxy-bypass-rules
* https://www-archive.mozilla.org/quality/networking/docs/aboutno_proxy_for.html
*/
proxyBypassList?: string[];
};
export declare class ExtraPluginProxyRouter extends PuppeteerExtraPlugin {
/** The underlying proxy router instance */
router: ProxyRouter;
/** The name of the automation framework used */
framework: 'playwright' | 'puppeteer' | null;
noPuppeteerShim: boolean;
constructor(opts: Partial<ExtraPluginProxyRouterOptions>);
get name(): string;
get defaults(): ExtraPluginProxyRouterOptions;
/** Get or set proxies at runtime */
get proxies(): import("./router").Proxies;
set proxies(proxies: import("./router").Proxies);
/** Retrieve traffic statistics */
get stats(): import("./stats").ProxyRouterStats;
/** Get or set the `routeByHost` function at runtime */
get routeByHost(): import("./router").RouteByHostFn;
set routeByHost(fn: import("./router").RouteByHostFn);
private get proxyBypassListString();
onPluginRegistered(args?: {
framework: 'playwright';
}): Promise<void>;
beforeLaunch(options?: unknown): Promise<void>;
onDisconnected(): Promise<void>;
}