import { Scraper } from './Scraper';
export interface IBaseScrap<T> {
    data?: T;
    url: string;
    scraper: Scraper<T>;
    error?: Error;
}
export interface IScrap<T> extends IBaseScrap<T> {
    success: boolean;
}
export interface ISuccessScrap<T> extends IBaseScrap<T> {
    data: T;
}
export interface IFailureScrap<T> extends IBaseScrap<T> {
    error: Error;
}
export declare class Scrap<T> implements IScrap<T> {
    static success<T>(scrap: ISuccessScrap<T>): Scrap<T>;
    static failure<T>(scrap: IFailureScrap<T>): Scrap<T>;
    data?: T;
    url: string;
    scraper: Scraper<T>;
    success: boolean;
    error?: Error;
    protected constructor({ data, url, scraper, success, error }: IScrap<T>);
}
