import { ElementRef, OnChanges, OnDestroy, OnInit, SimpleChanges } from "@angular/core";
import moment from "moment/moment";
import { EventBus, IEvent, IEventDefinition } from "@nova-ui/bits";
import { TimeseriesZoomPlugin, TimeseriesZoomPluginsSyncService, ITimeseriesZoomPluginInspectionFrame } from "@nova-ui/charts";
import * as i0 from "@angular/core";
export declare const TIMESERIES_INSPECTION_MENU_ZOOM_IN: IEventDefinition<IEvent<ITimeseriesZoomPluginInspectionFrame>>;
export declare const TIMESERIES_INSPECTION_MENU_ZOOM_OUT: IEventDefinition<IEvent<ITimeseriesZoomPluginInspectionFrame>>;
export declare const TIMESERIES_INSPECTION_MENU_EXPLORE: IEventDefinition<IEvent<ITimeseriesZoomPluginExploreData>>;
export declare const TIMESERIES_INSPECTION_MENU_CLOSE: IEventDefinition<IEvent<void>>;
export declare const TIMESERIES_INSPECTION_MENU_SYNCHRONIZE: IEventDefinition<IEvent<void>>;
export declare const TIMESERIES_INSPECTION_MENU_CLEAR: IEventDefinition<IEvent<void>>;
export interface ITimeseriesZoomPluginExploreData {
    ids: string;
    startDate: moment.Moment;
    endDate: moment.Moment;
    openSidePanel: boolean;
    exploringEnabled: boolean;
}
export declare class TimeseriesInspectionMenuComponent implements OnInit, OnChanges, OnDestroy {
    element: ElementRef;
    private eventBus;
    private syncService;
    plugin: TimeseriesZoomPlugin;
    exploringEnabled: boolean;
    metricIds?: string;
    collectionId?: string;
    allowed?: boolean;
    private offset;
    private destroy$;
    constructor(element: ElementRef, eventBus: EventBus<IEvent>, syncService: TimeseriesZoomPluginsSyncService);
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    ngOnDestroy(): void;
    clearZoom(): void;
    isZoomInAllowed(): boolean;
    zoomIn(): void;
    zoomOut(): void;
    explore(openSidePanel?: boolean): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<TimeseriesInspectionMenuComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TimeseriesInspectionMenuComponent, "nui-timeseries-inspection-menu", never, { "plugin": { "alias": "plugin"; "required": false; }; "exploringEnabled": { "alias": "exploringEnabled"; "required": false; }; "metricIds": { "alias": "metricIds"; "required": false; }; "collectionId": { "alias": "collectionId"; "required": false; }; "allowed": { "alias": "allowed"; "required": false; }; }, {}, never, never, false, never>;
}
