import { IRunner, IRunnerArgs, IRunnerOptions, Runner } from 'source-scraper-core';
import { DOMWindow, FromUrlOptions, JSDOM } from 'jsdom';
export interface IDomRunnerOptions extends IRunnerOptions {
    jsdomConfig?: FromUrlOptions;
}
export interface IDomRunnerArgs extends IRunnerArgs<IDomRunnerOptions> {
    document: Document;
    jsdom: JSDOM;
    window: DOMWindow;
}
export interface IDomRunner<T> extends IRunner<T, IDomRunnerOptions, IDomRunnerArgs> {
}
export declare class DomRunner<T> extends Runner<T, IDomRunnerOptions, IDomRunnerArgs> implements IDomRunner<T> {
    defaultOptions: IDomRunnerOptions;
    protected exec(url: string, scraper: (args: IDomRunnerArgs) => Promise<T>, options: IDomRunnerOptions): Promise<T>;
}
