import { BehaviorSubject } from "rxjs"; import { DataRadar } from "./DataRadar"; import { Stage } from "./Stage"; import { Report } from "./reporting/Report"; import { Level, SelectionMode } from "./types"; export type Props = { radar: DataRadar; rootItems?: (endPointT | containerT)[]; allItems?: (endPointT | containerT)[]; looping?: boolean; selectionMode?: SelectionMode; cascadingDepthLimit?: number; }; export declare class Explorer { #private; selection$: BehaviorSubject; looping: boolean; cascadingDepthLimit: number; constructor(props: Props); get currentStage(): Stage; get currentLevel(): Level; get path(): (endPointT | containerT)[]; isContainerData(data: endPointT | containerT): boolean; /** * Will completely recreate each Stages. * Use it when the WrappedData that you want to select might not be a child of this.currentStage */ hardSelectData(data: endPointT | containerT): Report; moveForward(amplitude?: number): number; moveBackward(amplitude?: number): number; getLevelSelectedData(level: Level): endPointT | containerT | null; getLevelItems(level: Level): (endPointT | containerT)[]; setLevelSelectedData(level: Level, data: endPointT | containerT): void; get levelsCount(): number; get selectionMode(): SelectionMode; set selectionMode(mode: SelectionMode); get currentEndpoint(): endPointT | containerT | null; set path(path: (endPointT | containerT)[]); }