import { Attribute, Column } from '@sisense/sdk-data'; import { DrilldownSelection, ScatterDataPoint, StyledColumn } from '../../types'; import { ChartDataOptions, ChartType, DataPoint } from '../../types'; import { Hierarchy } from './hierarchy-model'; export declare function getDrilldownInitialDimension(chartType: ChartType, dataOptions: ChartDataOptions): Attribute | undefined; export declare function isDrilldownApplicableToChart(chartType: ChartType, dataOptions: ChartDataOptions): boolean; export declare function applyDrilldownDimension(chartType: ChartType, dataOptions: ChartDataOptions, drilldownDimension: Attribute): ChartDataOptions; export declare function prepareDrilldownSelectionPoints(points: (DataPoint | ScatterDataPoint)[], nativeEvent: MouseEvent, dataOptions: ChartDataOptions): DataPoint[]; /** * Collects the available drilldown paths based on the provided paths and currently selected attributes. * @param drilldownPaths - The available drilldown paths (attributes or hierarchies) * @param selectedAttributes - The currently selected attributes in the drilldown chain * @returns Filtered drilldown paths that are still available for selection * @internal */ export declare function getAvailableDrilldownPaths(drilldownPaths: (Attribute | Hierarchy)[], selectedAttributes: Attribute[]): (Attribute | Hierarchy)[]; /** * Collects the currently selected attributes in the drilldown chain. * @param initialDimension - The initial dimension * @param drilldownSelections - The drilldown selections * @returns The currently selected attributes in the drilldown chain */ export declare function getSelectedDrilldownAttributes(initialDimension: Attribute | Column | StyledColumn, drilldownSelections: DrilldownSelection[]): Attribute[];