import type { ContextMenuProps, DrilldownWidgetProps as DrilldownWidgetPropsPreact } from '@sisense/sdk-ui-preact'; import type { Component, PropType } from 'vue'; export type DrilldownWidgetConfig = { isBreadcrumbsDetached?: boolean; breadcrumbsComponent?: Component; contextMenuComponent?: (props: ContextMenuProps) => Component; }; /** * Props of the {@link @sisense/sdk-ui-vue!DrilldownWidget | `DrilldownWidget`} component. */ export interface DrilldownWidgetProps extends Omit { /** * {@inheritDoc @sisense/sdk-ui!DrilldownWidgetProps.config} * * @category Widget */ config?: DrilldownWidgetConfig; } /** * Vue component designed to add drilldown functionality to any type of chart * * It acts as a wrapper around a given chart component, enhancing it with drilldown capabilities * * The widget offers several features including: * - A context menu for initiating drilldown actions (can be provided as a custom component) * - Breadcrumbs that not only allow for drilldown selection slicing but also * provide an option to clear the selection (can be provided as a custom component) * - Filters specifically created for drilldown operation * - An option to navigate to the next drilldown dimension * * When an `initialDimension` is specified, the `drilldownDimension` will automatically inherit its value, * even before any points on the chart are selected. * This allows for complete control over the chart's dimensions to be handed over to the DrilldownWidget * @example * Here's how to use the `DrilldownWidget` component: * ```vue * * * * ``` * * @param props - DrilldownWidget properties * @returns DrilldownWidget wrapper component * @group Drilldown */ export declare const DrilldownWidgetTs: import("vue").DefineComponent<{ /** * {@inheritDoc @sisense/sdk-ui!DrilldownWidgetProps.config} * * @category Widget */ config: { type: PropType; required: false; default: () => {}; }; /** * {@inheritDoc @sisense/sdk-ui!DrilldownWidgetProps.drilldownPaths} * * @category Widget * */ drilldownPaths: { type: PropType<(import("@sisense/sdk-data").Attribute | import("@sisense/sdk-ui-preact").Hierarchy)[] | undefined>; required: false; default: () => never[]; }; /** * {@inheritDoc @sisense/sdk-ui!DrilldownWidgetProps.initialDimension} * * @category Widget */ initialDimension: { type: PropType; required: true; default: () => {}; }; }, void, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly; required: false; default: () => {}; }; /** * {@inheritDoc @sisense/sdk-ui!DrilldownWidgetProps.drilldownPaths} * * @category Widget * */ drilldownPaths: { type: PropType<(import("@sisense/sdk-data").Attribute | import("@sisense/sdk-ui-preact").Hierarchy)[] | undefined>; required: false; default: () => never[]; }; /** * {@inheritDoc @sisense/sdk-ui!DrilldownWidgetProps.initialDimension} * * @category Widget */ initialDimension: { type: PropType; required: true; default: () => {}; }; }>>, { config: DrilldownWidgetConfig; drilldownPaths: (import("@sisense/sdk-data").Attribute | import("@sisense/sdk-ui-preact").Hierarchy)[] | undefined; initialDimension: import("@sisense/sdk-data").Attribute; }, {}>;