/// import { EventEmitter } from "events"; import { Scheduler } from "./scheduler"; import { Options } from "./option"; import { Provider, ProviderFactory } from "./provider"; import { UserAgent, Proxy, Headers, Auth } from "./agent"; interface ICrawler extends EventEmitter { start(): Promise; stop(): Promise; } export declare enum Events { Data = "data", Error = "error" } export declare class Crawler extends EventEmitter implements ICrawler { options: Options; active: boolean; scheduler: Scheduler; provider: Provider; userAgent: UserAgent; proxy: Proxy; headers: Headers; auth: Auth; private readonly http; private readonly storage; private readonly persistence; constructor(ProviderClass: ProviderFactory, options?: Options); private request; /** * start crawl */ start(): Promise; /** * stop crawl */ stop(): Promise; } export {};