import { Dimension, Filter, FilterRelations, FilterRelationsModel, FilterRelationsModelNode, Measure } from '@sisense/sdk-data'; import { JtdTarget, TriggerMethod } from '../../../domains/dashboarding/hooks/jtd/jtd-types'; import { TabbersConfig } from '../../../domains/dashboarding/hooks/use-tabber'; import { Panel, WidgetDto } from '../../../domains/widgets/components/widget-by-id/types'; import { RestApi } from '../../../infra/api/rest-api'; import { type CascadingFilterDto, DashboardDto, type FilterDto, type LayoutDto } from '../../../infra/api/types/dashboard-dto'; import type { SpecificWidgetOptions, WidgetsOptions, WidgetsPanelColumnLayout } from './types'; export declare const translateLayout: (layout: LayoutDto) => WidgetsPanelColumnLayout; export declare function extractDashboardFilters(dashboardFilters: Array, filterRelationsModel?: FilterRelationsModel | FilterRelationsModelNode): Filter[] | FilterRelations; export declare const getJtdNavigateType: (widget: WidgetDto) => TriggerMethod; export declare const convertDimensionsToDimIndexes: (widget: WidgetDto, dimensionIds: string[]) => string[]; /** * Extract pivot targets configuration from widget DTO and build Map-based targets * @param widget - Widget DTO with drillToDashboardConfig * @returns Map of dimensions/measures to their targets or undefined if no targets found * @internal */ export declare function extractPivotTargetsConfigFromWidgetDto(widget: WidgetDto): Map | undefined; export declare function translateWidgetsOptions(widgets?: WidgetDto[]): WidgetsOptions; /** * Applies {@link SpecificWidgetOptions} to a {@link WidgetDto}. * Merges filtersOptions and jtdConfig into the DTO for persistence. * * @internal */ export declare function withSpecificWidgetOptions(widgetOptions?: SpecificWidgetOptions): (widgetDto: WidgetDto) => WidgetDto; export declare function translateTabbersOptions(widgets?: WidgetDto[]): TabbersConfig; /** * Replace all shared formulas, which defined by id references, in the dashboard with their actual values. * * @param dashboard - The dashboard DTO to replace shared formulas in * @param api - The REST API instance * @returns The dashboard DTO with shared formulas, defined by id references, replaced * @internal */ export declare function withSharedFormulas(dashboard: DashboardDto, api: RestApi): Promise; /** * Find dimension or measure by instanceId in widget panels and convert to proper type * @param panels - Widget metadata panels to search * @param pivotDimension - Instance ID to find, this is not a PivotDimId, it is the instanceId of the dimension or measure * @returns Dimension/Measure object with optional location info or undefined if not found * @internal */ export declare function findDimensionByInstanceId(panels: Panel[], pivotDimension: string): Dimension | Measure | { dimension: Dimension; location: 'row' | 'column' | 'value'; } | undefined;