import { ChangeDetectorRef, EventEmitter, OnChanges, OnDestroy, SimpleChanges } from "@angular/core";
import { AbstractControl, FormGroup } from "@angular/forms";
import { Observable } from "rxjs";
import { EventBus, IEvent } from "@nova-ui/bits";
import { ITimeseriesWidgetData } from "../../../../../components/timeseries-widget/types";
import { PizzagnaService } from "../../../../../pizzagna/services/pizzagna.service";
import { IHasChangeDetector, IHasForm } from "../../../../../types";
import { ITimeseriesItemConfiguration } from "../types";
import * as i0 from "@angular/core";
export declare class TimeseriesSeriesCollectionConfigurationComponent implements IHasChangeDetector, IHasForm, OnDestroy, OnChanges {
    pizzagnaService: PizzagnaService;
    changeDetector: ChangeDetectorRef;
    private eventBus;
    static lateLoadKey: string;
    nodes: string[];
    componentId: string;
    series: ITimeseriesItemConfiguration[];
    availableSeries: ITimeseriesWidgetData[];
    allSeries: ITimeseriesWidgetData[];
    formReady: EventEmitter<any>;
    form: FormGroup;
    emptySeries$: Observable<boolean>;
    private readonly destroy$;
    constructor(pizzagnaService: PizzagnaService, changeDetector: ChangeDetectorRef, eventBus: EventBus<IEvent>);
    ngOnDestroy(): void;
    ngOnChanges(changes: SimpleChanges): void;
    onFormReady(form: AbstractControl): void;
    onItemsChange(series: ITimeseriesItemConfiguration[]): void;
    isPossibleToAddSeries(): boolean;
    addSeries(): void;
    private createSeriesConfigComponents;
    static ɵfac: i0.ɵɵFactoryDeclaration<TimeseriesSeriesCollectionConfigurationComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TimeseriesSeriesCollectionConfigurationComponent, "nui-timeseries-series-collection-configuration", never, { "nodes": { "alias": "nodes"; "required": false; }; "componentId": { "alias": "componentId"; "required": false; }; "series": { "alias": "series"; "required": false; }; "availableSeries": { "alias": "availableSeries"; "required": false; }; "allSeries": { "alias": "allSeries"; "required": false; }; }, { "formReady": "formReady"; }, never, never, false, never>;
}
