import { type SelectableValue } from '@grafana/data'; import { type QueryEditorFunctionExpression, type QueryEditorFunctionParameterExpression, type QueryEditorGroupByExpression, type QueryEditorPropertyExpression } from '../expressions'; import { type SQLExpression } from '../types'; export declare function createSelectClause(sqlColumns: NonNullable): string; export declare const haveColumns: (columns: SQLExpression["columns"]) => columns is NonNullable; /** * Creates a GroupByExpression for a specified field */ export declare function setGroupByField(field?: string): QueryEditorGroupByExpression; /** * Creates a PropertyExpression for a specified field */ export declare function setPropertyField(field?: string): QueryEditorPropertyExpression; export declare function createFunctionField(functionName?: string): QueryEditorFunctionExpression; /** * Retrieves the column value from a QueryEditorFunctionParameterExpression object. * * @param column - The QueryEditorFunctionParameterExpression object representing the column. * @returns The column value as a SelectableValue or null if the column is undefined or null. */ export declare function getColumnValue(column?: QueryEditorFunctionParameterExpression | QueryEditorFunctionExpression): SelectableValue | null;