import { EventEmitter } from '@angular/core'; import { ProjectSerializerService } from '@dvl-fw/angular'; import { RecordStream } from '@dvl-fw/core'; import { Store } from '@ngrx/store'; import { ModeType, ToggleSelectionPanelType, Vis, VisType } from '../../shared/types'; import { VisualizationTypeComponent } from '../visualization-type/visualization-type.component'; /** * Mav Selection main component declaration, responsible for displaying the vis-type, graphic-symbol and graphic-variable selection panels */ export declare class MainComponent { private store; private serializer; /** * Output event-emitter of new visualization added by the selection */ newVis: EventEmitter; /** * Output event-emitter of the state of the selection panel */ selectionPanelClosed: EventEmitter; /** * View child of this component which refers to VisualizationTypeComponent */ visType: VisualizationTypeComponent; /** * Mapping from graphic-symbol-option-id to RecordStream */ recordStreamMapping: Map; /** * Mode in which the selection panel is opened - add/edit */ mode: ModeType; /** * The active visualization in make-a-vis - currently selected tab */ activeVis: Vis; /** * State of the selection panel, if its open or closed */ panelState: boolean; /** * Step number in the selection panel - vis-type selection is step 0, * graphic-symbol selection is step 1, * and graphic-variable selection is step 2 */ step: number; /** * The state of the done button in the vis-type selection stage */ visSelectionButtonState: boolean; /** * The state of the done button in the graphic-variable selection stage */ gvSelectionButtonState: boolean; /** * Creates an instance of mav-selection main component. * @param store reference to Store * @param serializer reference to the Project Serializer Service */ constructor(store: Store, serializer: ProjectSerializerService); /** * Toggles selection panel * @param eventArgs provide selection panel state, the mode in which the panel was opened and the active visualization */ toggleSelectionPanel(eventArgs: ToggleSelectionPanelType): void; /** * Sets the button state of the done button vis-type selection stage * @param visSelected the vis-type that was selected */ setVisSelectionButtonState(visSelected: boolean): void; /** * Adds the selected vis-type visualization * @param type vis-type selected */ addVisualization(type: VisType): void; /** * Increments the step counter */ stepDone(): void; /** * Sets step to a specific value * @param target current step */ setStep(target: number): void; /** * Determines whether the panel for the current step is to be expanded * @param target step of the panel to be expanded * @returns boolean to indicate if it should be expanded */ isExpanded(target: number): boolean; /** * Determines whether the panel for the current step is to be disabled * @param target step of the panel to be disabled * @returns boolean to indicate if it should be disabled */ isDisabled(target: number): boolean; /** * Closes selection panel and emits the state of the selection panel, * the mode in which it was closed and the active visualization when it was closed */ closeSelectionPanel(): void; /** * Updates record stream mapping * @param recordStreamMapping from the graphic-symbol selection stage */ updateRecordStreamMapping(recordStreamMapping: Map): void; /** * Sets the state of the done button in the graphic variable selection stage * @param selectionMade boolean to indicate if a selection was made in the graphic-variable selection stage */ gvSelectionMade(selectionMade: boolean): void; /** * Dispatches the graphic-variable panel opened action in the store */ gvPanelOpened(): void; /** * Dispatches the graphic-variable panel closed action in the store */ gvPanelClosed(): void; }