import { Attribute, JSONArray } from '@sisense/sdk-data';
import type { SortDirection } from '@sisense/sdk-data';
import { NlqTranslationResult } from '../../../types.js';
/** Runtime StyledColumn: wrapper with column and optional CategoryStyle (from chart dataOptions) */
type StyledColumn = {
    column: Attribute;
    sortType?: SortDirection;
    [key: string]: unknown;
};
/**
 * Translates CSDK Attribute or StyledColumn array to NLQ JSON format (string or StyledColumnJSON array).
 *
 * When an attribute has sort applied (via getSort() or StyledColumn.sortType), or when StyledColumn
 * has other style props (dateFormat, numberFormatConfig, etc.), outputs StyledColumnJSON with all
 * properties; otherwise outputs composeCode string.
 *
 * @param dimensions - Array of CSDK Attribute or StyledColumn objects
 * @returns NlqTranslationResult<JSONArray> - JSON array output for NLQ dimensions
 * @internal
 */
export declare function translateDimensionsToJSON(dimensions: (Attribute | StyledColumn)[]): NlqTranslationResult<JSONArray>;
export {};
