import { CheckOptions } from 'linkinator';
export type BLC_MODE = 'extern' | 'intern' | 'all';
export interface BLC_Parameter_Interface {
    scan_source: string;
    write_to: string;
    date_format: string;
    mode: BLC_MODE;
    special_excludes: string[];
    checkOptions?: CheckOptions;
}
export declare class BLC_Parameter implements BLC_Parameter_Interface {
    scan_source: string;
    write_to: string;
    date_format: string;
    mode: BLC_MODE;
    special_excludes: string[];
    checkOptions: {
        path: string;
        concurrency: number;
        config: string;
        recurse: boolean;
        skip: string;
        format: string;
        silent: boolean;
        verbosity: string;
        timeout: number;
        directoryListing: boolean;
        retry: boolean;
        retryErrors: boolean;
        retryErrorsCount: number;
        retryErrorsJitter: number;
        userAgent: string;
    };
}
export declare class BLC_Result {
    url: string;
    state: string;
    status: number;
    scantime: string;
    parent: string;
}
export interface BLC_Scan_Summary_Interface {
    scan_source: string;
    mode: BLC_MODE;
    special_excludes: string[];
    lastrun: string;
    runtime: number;
    runtime_unit: string;
    found: number;
    dropped: number;
    finished: boolean;
    total: number;
    ok: number;
    broken: number;
    skipped: number;
    links_ok: BLC_Result[];
    links_broken: BLC_Result[];
    links_skipped: BLC_Result[];
}
export declare class BLC_Scan_Summary implements BLC_Scan_Summary_Interface {
    scan_source: string;
    mode: BLC_MODE;
    special_excludes: string[];
    lastrun: string;
    runtime: number;
    runtime_unit: string;
    found: number;
    dropped: number;
    finished: boolean;
    total: number;
    ok: number;
    broken: number;
    skipped: number;
    links_ok: BLC_Result[];
    links_broken: BLC_Result[];
    links_skipped: BLC_Result[];
}
export declare class Duration {
    beginn_time: number;
    duration_unit: string;
    start(): void;
    getDuration(): number;
    getDurationUnit(): string;
}
export declare class Broken_Link_Checker {
    private static count_push;
    private static isSpecialExclude;
    private static count_push_write;
    static run(params: BLC_Parameter | BLC_Parameter[]): Promise<void>;
    private static dice_parameters;
    private static run_job;
}
