import { type ReactNode } from 'react'; import type { RefObject } from 'react'; import type { ChartWidgetStyleOptions } from '../../../../types'; import type { ChartWidgetProps } from './types'; type UseChartWidgetNarrativeParams = { propsWithDrilldown: ChartWidgetProps; styleOptions: ChartWidgetStyleOptions | undefined; }; type UseChartWidgetNarrativeReturn = { /** Ref to pass to WidgetContainer — measures the content area for height constraints. */ contentAreaRef: RefObject; /** styleOptions extended with the narrative trigger button injected into the header toolbar when applicable. */ styleOptionsWithNarrative: ChartWidgetStyleOptions | undefined; /** Narrative element for the top slot; non-null only when displayLocation is `above` and narrative is visible. */ narrativeTopSlot: ReactNode; /** Narrative element for the bottom slot; non-null only when displayLocation is `below` and narrative is visible. */ narrativeBottomSlot: ReactNode; /** Narrative element used as widget content; non-null only when displayLocation is `alone` and narrative is visible. */ narrativeAloneContent: ReactNode; }; /** * Encapsulates all narrative-related logic for ChartWidget: * options resolution, visibility state, trigger-button toolbar injection, and height constraints. * * @internal */ export declare function useChartWidgetNarrative({ propsWithDrilldown, styleOptions, }: UseChartWidgetNarrativeParams): UseChartWidgetNarrativeReturn; export {};