import { type DataSource } from '@sisense/sdk-data';
import type { JaqlQueryPayload } from '@sisense/sdk-query-client';
import type { ExecuteQueryParams } from '../../../../domains/query-execution/types.js';
/**
 * Converts ExecuteQueryParams to JAQL payload
 *
 * This is a pure TypeScript function that works in Node.js environments
 * and converts query parameters to JAQL without requiring React hooks or browser APIs.
 *
 * Reuses the existing query preparation logic from executeQuery to avoid duplication.
 *
 * @param queryParams - Query parameters (execution-only fields are not reflected in JAQL beyond prepareQueryParams)
 * @param defaultDataSource - Default data source if not specified in queryParams
 * @param shouldSkipHighlightsWithoutAttributes - Whether to skip highlights without corresponding attributes
 * @returns The JAQL query payload
 * @internal
 */
export declare function translateQueryToJaql(queryParams: ExecuteQueryParams, defaultDataSource?: DataSource, shouldSkipHighlightsWithoutAttributes?: boolean): JaqlQueryPayload;
