import { ChartJSON, DataOptionsJSON } from '@sisense/sdk-ui/analytics-composer'; import { QueryState } from '../../../services/nlq/nlq-service'; import { z } from 'zod/v4'; import { axesMappingSchema } from '../types'; /** * Axes whose data-options entry is a single item rather than an array. * These correspond to single-value slots in DataOptionsJSON / ChartDataOptions * (scatter, boxplot, geo charts). */ export declare const SINGLE_ITEM_AXES: Set; /** * Map LLM-returned axis index arrays to a data-options object by pulling items * from `pool` at those indices. Works for any pool item type that carries a * `column` property — `ColumnJSON` for chart creation, opaque CSDK items for updates. * * Preserves all style props on each item (sortType, trend, forecast, etc.). * Single-item axes are unwrapped; indicator value/secondary are limited to one entry. */ export declare function mapAxesToDataOptions(axesMapping: z.infer, pool: T[]): Record; /** * Assemble a ChartJSON from queryState (for filters/highlights), chart type, * and the already-mapped data options. */ export declare function assembleChartJSON(queryState: QueryState, chartType: string, dataOptions: DataOptionsJSON): ChartJSON;