import { Attribute, Column } from '@sisense/sdk-data'; import { type TFunction } from '@sisense/sdk-common'; import { StyledColumn, DrilldownSelection, DataPoint, MenuPosition, MenuItemSection } from '../../types.js'; import { Hierarchy } from '../../models'; import { OpenMenuFn } from '../../common/components/menu/types.js'; type UseDrilldownParams = { initialDimension: Column | StyledColumn; drilldownPaths?: (Attribute | Hierarchy)[]; drilldownSelections?: DrilldownSelection[]; /** * todo: make it optional when we will have a public `MenuProvider`. * Without provided function, it should open internal menu with the help of `useMenu` hook */ openMenu: OpenMenuFn; onDrilldownSelectionsChange?: (selections: DrilldownSelection[]) => void; }; export declare const useDrilldown: ({ initialDimension, drilldownPaths, drilldownSelections, openMenu, onDrilldownSelectionsChange, }: UseDrilldownParams) => { drilldownDimension: Attribute; drilldownFilters: import("@sisense/sdk-data").MembersFilter[]; breadcrumbs: import("react/jsx-runtime").JSX.Element; openDrilldownMenu: (position: MenuPosition, points: DataPoint[]) => void; }; /** @internal */ export declare function getSelectionTitleMenuItem(points: DataPoint[], drilldownDimension: Attribute): MenuItemSection; /** @internal */ export declare function getDrilldownMenuItems(availableDrilldownPaths: (Attribute | Hierarchy)[], drilldownDimension: Attribute, selectFn: (nextDimension: Attribute, hierarchy?: Hierarchy) => void, translate: TFunction): MenuItemSection; export {}; //# sourceMappingURL=use-drilldown.d.ts.map