/**
 * Translation result and JSON helpers.
 *
 * @internal
 */
import { JSONValue } from '@sisense/sdk-data';
import type { NlqTranslationError, NlqTranslationResult } from '../../../types.js';
/**
 * Recursively strips [[delimiters]] from all strings in a JSON structure.
 * Transforms "DM.[[Commerce Sales]].[[Order Date]]" → "DM.Commerce Sales.Order Date"
 *
 * @param value - The JSON value to process
 * @returns The value with all [[delimiters]] stripped from strings
 * @internal
 */
export declare function stripDelimitersFromJson<T extends JSONValue>(value: T): T;
export declare function getSuccessData<T>(result: NlqTranslationResult<T>): T;
export declare function getErrors<T>(result: NlqTranslationResult<T>): string[];
/**
 * Helper function to collect structured errors from translation operations.
 *
 * Executes a translation function and collects any errors into the provided errors array.
 * Returns the translated data if successful, or null if errors occurred.
 *
 * @param translateFn - Function that returns a NlqTranslationResult
 * @param errors - Array to collect errors into
 * @param mapError - Optional mapper to transform errors before pushing (e.g., add axis context for chart dataOptions)
 * @returns The translated data if successful, or null if errors occurred
 * @internal
 */
export declare function collectTranslationErrors<T>(translateFn: () => NlqTranslationResult<T>, errors: NlqTranslationError[], mapError?: (e: NlqTranslationError) => NlqTranslationError): T | null;
