import { SloMapping, SloMappingSpec } from '../../../../model'; import { MicrocontrollerFactory } from '../../../../orchestrator'; import { ServiceLevelObjective } from '../../common'; import { SloControlLoop, SloControlLoopConfig, SloWatchEventsHandler } from '../slo-control-loop'; /** * The default SLO control loop implementation, which can be used for most orchestrators. */ export declare class DefaultSloControlLoop implements SloControlLoop { readonly microcontrollerFactory: MicrocontrollerFactory, ServiceLevelObjective>; private stopper; private loopConfig; private registeredSlos; private polarisRuntime; private _watchHandler; get isActive(): boolean; get watchHandler(): SloWatchEventsHandler; constructor(microcontrollerFactory: MicrocontrollerFactory, ServiceLevelObjective>); addSlo(key: string, sloMapping: SloMapping): Promise>; getSlo(key: string): ServiceLevelObjective; removeSlo(key: string): boolean; getAllSlos(): Record>; start(config: SloControlLoopConfig): void; stop(): void; private executeLoopIteration; }