import BaseService from '../common/BaseService';
export default class DealReplicationWorker extends BaseService {
    private readonly workerId;
    private readonly lotusCMD;
    private readonly boostCMD;
    constructor();
    start(): void;
    private readonly PollInterval;
    private readonly ImmediatePollInterval;
    private startPollWork;
    private pollWork;
    private pollReplicationWork;
    /**
     * Create providers list by criteria. Currently it is just a list of providers separated by comma.
     * TODO marking this function as async pending future Pando integration
     *
     * @param criteria
     * @returns
     */
    private static generateProvidersList;
    /**
     * Check if given provider is using lotus or boost
     *
     * @param provider
     * @returns true is lotus, false is boost
     */
    private isUsingLotus;
    private static calculatePriceWithSize;
    /**
     * TODO: assemble URL with builtin hosting service
     * @param model
     * @param carFile
     * @returns
     */
    private static assembleDownloadUrl;
    private checkUrlReachability;
    private createDealCmd;
    /**
     * Main function of deal making
     * @param replicationRequest
     */
    private replicate;
    private startHealthCheck;
    private healthCheck;
}
