import { ExpressionFunction } from '../../parser/src/types';
import { BaseParameter } from './expressionFunctionUtils';
import { AggregatedScalarExpressionEvaluation } from './aggregatedScalarExpressionFunctions';
/**
 * List of all the Aggregation Functions available in AdaptableQL
 */
export type AggregatedBooleanFunctionName = 'WHERE' | 'COL' | 'GROUP_BY' | 'WEIGHT' | AggregationFunction | ComparisonFunction;
type AggregationFunction = 'SUM' | 'MIN' | 'MAX' | 'AVG' | 'COUNT';
type ComparisonFunction = 'EQ' | 'NEQ' | 'LT' | 'GT' | 'LTE' | 'GTE';
export interface BooleanAggregationParameter extends BaseParameter<'aggregationBoolean', AggregationFunction> {
    scalarAggregation: ScalarAggregationOperand;
    conditionValue: number;
    conditionFn: (aggregatedValue: number, conditionValue: number) => boolean;
}
export interface ScalarAggregationOperand extends BaseParameter<'aggregationScalar', AggregationFunction> {
    value: AggregatedScalarExpressionEvaluation;
}
export declare const aggregatedBooleanExpressionFunctions: Record<AggregatedBooleanFunctionName, ExpressionFunction>;
export declare const aggregatedBooleanExpressionFunctionNames: AggregatedBooleanFunctionName[];
export {};
