///
import { PNGProcessor } from '../interfaces/png-processor';
import { ScreenshotOptions, Screenshotter } from '../interfaces/screenshotter';
import { Webdriver } from '../interfaces/webdriver';
import { MugshotSelector } from './mugshot';
export interface WebdriverScreenshotterOptions {
pngProcessor?: PNGProcessor;
/**
* Disable any CSS animations that might cause test flakiness.
*/
disableAnimations?: boolean;
}
/**
* Take screenshots from a Webdriver compatible client.
*/
export declare class WebdriverScreenshotter implements Screenshotter {
private readonly client;
private readonly pngProcessor;
private readonly disableAnimations;
/**
* @param client
* @param __namedParameters {@link WebdriverScreenshotterOptions}
*/
constructor(client: Webdriver, { pngProcessor, disableAnimations, }?: WebdriverScreenshotterOptions);
/**
* Take screenshots of selectors by first taking a viewport screenshot and
* then cropping the element out.
*
* The element's bounding rectangle will be used to crop it out of the
* viewport screenshot.
*/
takeScreenshot(selectorOrOptions?: MugshotSelector | ScreenshotOptions, options?: ScreenshotOptions): Promise;
private crop;
private ignore;
}