/**
 * @class
 * @description This class connect to cdn the cdb balancer api and hepls to get data
 * @exports TestProfilesBusinessObject
 */
import Cdn from './../Loaders/Cdn';
import Loader from './../Loaders/Loader';
import { VideoSegment } from './../Storage/VideoSegment';
import PingTimeBean from './../Beans/PingTimeBean';
export default class TestProfilesBusinessObject {
    private static _instance;
    private loader;
    monitoring: Map<string, number>;
    pingsTime: Map<string, PingTimeBean>;
    private _isMonitoring;
    private _cdns;
    testCount: number;
    constructor(loader: Loader);
    private downloadedSegments;
    updateCdnList(cdns: Map<string, Cdn>): void;
    push(segment: VideoSegment): void;
    pop(oldSegment: VideoSegment | undefined): VideoSegment | undefined;
    monitor(cdns: Map<string, Cdn>): Promise<void>;
    stopMonitor(): void;
    private _afterHeadCheck;
    private testCdn;
    static getInstance(loader?: Loader): TestProfilesBusinessObject;
}
