import type { ChartWidgetProps } from '../../../domains/widgets/components/chart-widget/types'; import type { CustomWidgetProps } from '../../../domains/widgets/components/custom-widget/types'; /** * Resolves the `widgetName` tracking field for a chart widget — the visualization subtype * (e.g. `'line'`, `'column'`, `'pie'`, `'streamgraph'`). * * @internal */ export declare const getChartWidgetName: (props: Pick) => string; /** * Resolves the `widgetName` tracking field for a pivot table widget. * * @internal */ export declare const getPivotWidgetName: () => string; /** * Resolves the `widgetName` tracking field for a text widget. * * @internal */ export declare const getTextWidgetName: () => string; /** * Resolves the `widgetName` tracking field for a custom widget — the registered plugin name * (e.g. `'my-org-bullet-chart'`). * * @internal */ export declare const getCustomWidgetName: (props: Pick) => string; /** * Resolves the `widgetName` tracking field for a filter widget — always `'filter'`. * * @internal */ export declare const getFilterWidgetName: () => string; /** * Reads the widget's user-facing title from props if present, otherwise `null`. * * Typed with a generic + intersection so callers preserve their concrete widget prop type * (`ChartWidgetProps`, `PivotTableWidgetProps`, …) while making the contract — "I read an * optional `title`" — explicit. The intersection sidesteps the weak-type heuristic that * would otherwise reject `TextWidgetProps`, which declares no `title`. * * @internal */ export declare const getWidgetTitle:

(props: P & { title?: string | undefined; }) => string | null;