import { SpiderHandle } from '../handle'; export declare type SpiderNavigatorUrlCallback = (h: SpiderHandle) => string | null; export declare type SpiderNavigatorIsDoneCallback = (h: SpiderHandle) => boolean; export interface SpiderNavigatorOpts { baseTarget: string; target: SpiderNavigatorUrlCallback | string; isDone?: SpiderNavigatorIsDoneCallback; } export interface SpiderNavigatorFetchResponse { rawData: string; rawResponse: any; } export declare abstract class SpiderNavigator { protected opts: SpiderNavigatorOpts; constructor(opts: SpiderNavigatorOpts); protected abstract fetch(target: string, h: SpiderHandle): Promise; getBaseTarget(): string; protected getNext(previousHandle: SpiderHandle): string | null; isDone(h: SpiderHandle): boolean; attemptFetch(previousHandle: SpiderHandle, iteration: number): Promise; pause(lengthInMs: number): Promise; } //# sourceMappingURL=navigator.d.ts.map