import { EventBus, IEvent } from "@nova-ui/bits";
import { IBroker, IBrokerUserConfig, IBrokerValue } from "./types";
import { PizzagnaService } from "../../pizzagna/services/pizzagna.service";
import { IConfigurable, IProperties } from "../../types";
import * as i0 from "@angular/core";
export declare class KpiScaleSyncBroker implements IConfigurable {
    private eventBus;
    private pizzagnaService;
    protected properties: IProperties;
    protected componentId: string;
    private valuesObject;
    private brokers;
    private builder;
    private destroySubscriptions$;
    private tileNodes;
    constructor(eventBus: EventBus<IEvent>, pizzagnaService: PizzagnaService);
    updateConfiguration(properties: IProperties): void;
    configure(): KpiScaleSyncBrokerBuilder;
    getBrokers(): readonly IBroker[];
    subscribeToBrokers(): void;
    setComponent(component: any, componentId: string): void;
    destroy(): void;
    private processAndEmitSyncedValue;
    private configureValueModel;
    private createPropertiesAndSubscribeToBrokers;
    private getMin;
    private getMax;
    static ɵfac: i0.ɵɵFactoryDeclaration<KpiScaleSyncBroker, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<KpiScaleSyncBroker>;
}
declare class KpiScaleSyncBrokerBuilder {
    private brokers;
    readonly valuesObject: Record<string, Array<Partial<IBrokerValue>>>;
    constructor(brokers: IBroker[]);
    addBroker(broker: IBrokerUserConfig): KpiScaleSyncBrokerBuilder;
    private getDefaultBrokerObject;
}
export {};
