import { AggregateArrayExpression, AggregateArrayExpressionPair, AggregateDateFromStringParam, AggregateDateParam, AggregateDocumentExpression, AggregateExpression, AggregateExpressionPair, AggregateExpressionRecord, AggregateFilterParam, AggregateIndexOfParam, AggregateNumberExpression, AggregateNumberExpressionPair, AggregateRangeParam, AggregateReduceParam, AggregateStrcasecmpParam, AggregateStringExpression, AggregateStringExpressionPair, AggregateZipParam, AggregateSubstrCPParam, CondCommandParam, DateToStringCommandParam, IndexOfArrayCommandParam, LetCommandParam, MapParam, SliceCommandParam, SubstrBytesCommandParam, SubstrCommandParam, SubtractCommandParam, SwitchCommandParam, AggregatedateFromPartsParam, AggregateLiteralParam } from '../typing';
import { AggregateCommand } from './AbstractCommand';
export declare class AggregateCommandImpl<T> extends AggregateCommand {
    constructor(name: string, value: T);
}
export declare class AbsAggregateCommand extends AggregateCommandImpl<AggregateNumberExpression> {
    constructor(value: AggregateNumberExpression);
}
export declare class AddAggregateCommand extends AggregateCommandImpl<AggregateNumberExpression[]> {
    constructor(value: AggregateNumberExpression[]);
}
export declare class AddToSetAggregateCommand extends AggregateCommandImpl<AggregateExpression> {
    constructor(value: AggregateExpression);
}
export declare class AndAggregateCommand extends AggregateCommandImpl<AggregateExpression[]> {
    constructor(value: AggregateExpression[]);
}
export declare class ArrayElemAtAggregateCommand extends AggregateCommandImpl<[AggregateArrayExpression, AggregateNumberExpression]> {
    constructor(value: [AggregateArrayExpression, AggregateNumberExpression]);
}
export declare class AvgAggregateCommand extends AggregateCommandImpl<AggregateExpression | AggregateExpression[]> {
    constructor(value: AggregateExpression | AggregateExpression[]);
}
export declare class CeilAggregateCommand extends AggregateCommandImpl<AggregateNumberExpression> {
    constructor(value: AggregateNumberExpression);
}
export declare class CMPAggregateCommand extends AggregateCommandImpl<AggregateExpressionPair> {
    constructor(value: AggregateExpressionPair);
}
export declare class ConcatAggregateCommand extends AggregateCommandImpl<AggregateStringExpression[]> {
    constructor(value: AggregateStringExpression[]);
}
export declare class CondAggregateCommand extends AggregateCommandImpl<CondCommandParam> {
    constructor(value: CondCommandParam);
}
export declare class CountAggregateCommand extends AggregateCommandImpl<{}> {
    constructor();
    stringify(): any;
}
export declare class DateToStringAggregateCommand extends AggregateCommandImpl<DateToStringCommandParam> {
    constructor(value: DateToStringCommandParam);
}
export declare class DivideAggregateCommand extends AggregateCommandImpl<AggregateNumberExpressionPair> {
    constructor(value: AggregateNumberExpressionPair);
}
export declare class EqAggregateCommand extends AggregateCommandImpl<AggregateExpressionPair> {
    constructor(value: AggregateExpressionPair);
}
export declare class ExpAggregateCommand extends AggregateCommandImpl<AggregateNumberExpression> {
    constructor(value: AggregateNumberExpression);
}
export declare class FirstAggregateCommand extends AggregateCommandImpl<AggregateExpression> {
    constructor(value: AggregateExpression);
}
export declare class FloorAggregateCommand extends AggregateCommandImpl<AggregateNumberExpression> {
    constructor(value: AggregateNumberExpression);
}
export declare class GtAggregateCommand extends AggregateCommandImpl<AggregateExpressionPair> {
    constructor(value: AggregateExpressionPair);
}
export declare class GteAggregateCommand extends AggregateCommandImpl<AggregateExpressionPair> {
    constructor(value: AggregateExpressionPair);
}
export declare class IfNullAggregateCommand extends AggregateCommandImpl<AggregateExpressionPair> {
    constructor(value: AggregateExpressionPair);
}
export declare class InAggregateCommand extends AggregateCommandImpl<[AggregateExpression, AggregateArrayExpression]> {
    constructor(value: [AggregateExpression, AggregateArrayExpression]);
}
export declare class IndexOfArrayAggregateCommand extends AggregateCommandImpl<IndexOfArrayCommandParam> {
    constructor(value: IndexOfArrayCommandParam);
}
export declare class IsArrayAggregateCommand extends AggregateCommandImpl<AggregateExpression> {
    constructor(value: AggregateExpression);
}
export declare class ISOWeekAggregateCommand extends AggregateCommandImpl<AggregateDateParam> {
    constructor(value: AggregateDateParam);
}
export declare class LastAggregateCommand extends AggregateCommandImpl<AggregateExpression> {
    constructor(value: AggregateExpression);
}
export declare class LetAggregateCommand extends AggregateCommandImpl<LetCommandParam> {
    constructor(value: LetCommandParam);
}
export declare class LnAggregateCommand extends AggregateCommandImpl<AggregateNumberExpression> {
    constructor(value: AggregateNumberExpression);
}
export declare class LogAggregateCommand extends AggregateCommandImpl<AggregateNumberExpressionPair> {
    constructor(value: AggregateNumberExpressionPair);
}
export declare class Log10AggregateCommand extends AggregateCommandImpl<AggregateNumberExpression> {
    constructor(value: AggregateNumberExpression);
}
export declare class LtAggregateCommand extends AggregateCommandImpl<AggregateExpressionPair> {
    constructor(value: AggregateExpressionPair);
}
export declare class LteAggregateCommand extends AggregateCommandImpl<AggregateExpressionPair> {
    constructor(value: AggregateExpressionPair);
}
export declare class MapAggregateCommand extends AggregateCommandImpl<MapParam> {
    constructor(value: MapParam);
}
export declare class MaxAggregateCommand extends AggregateCommandImpl<AggregateExpression | AggregateExpression[]> {
    constructor(value: AggregateExpression | AggregateExpression[]);
}
export declare class MergeObjectsAggregateCommand extends AggregateCommandImpl<AggregateDocumentExpression | AggregateDocumentExpression[]> {
    constructor(value: AggregateDocumentExpression | AggregateDocumentExpression[]);
}
export declare class MinAggregateCommand extends AggregateCommandImpl<AggregateExpression | AggregateExpression[]> {
    constructor(value: AggregateExpression | AggregateExpression[]);
}
export declare class ModAggregateCommand extends AggregateCommandImpl<AggregateNumberExpressionPair> {
    constructor(value: AggregateNumberExpressionPair);
}
export declare class MonthAggregateCommand extends AggregateCommandImpl<AggregateDateParam> {
    constructor(value: AggregateDateParam);
}
export declare class MultiplyAggregateCommand extends AggregateCommandImpl<AggregateNumberExpression[]> {
    constructor(value: AggregateNumberExpression[]);
}
export declare class NeqAggregateCommand extends AggregateCommandImpl<AggregateExpressionPair> {
    constructor(value: AggregateExpressionPair);
}
export declare class NotAggregateCommand extends AggregateCommandImpl<[AggregateExpression]> {
    constructor(value: AggregateExpression);
}
export declare class OrAggregateCommand extends AggregateCommandImpl<AggregateExpression[]> {
    constructor(value: AggregateExpression[]);
}
export declare class PowAggregateCommand extends AggregateCommandImpl<AggregateNumberExpressionPair> {
    constructor(value: AggregateNumberExpressionPair);
}
export declare class PushAggregateCommand extends AggregateCommandImpl<AggregateExpression | AggregateExpressionRecord> {
    constructor(value: AggregateExpression | AggregateExpressionRecord);
}
export declare class SizeAggregateCommand extends AggregateCommandImpl<AggregateArrayExpression> {
    constructor(value: AggregateArrayExpression);
}
export declare class SliceAggregateCommand extends AggregateCommandImpl<SliceCommandParam> {
    constructor(value: SliceCommandParam);
}
export declare class SplitAggregateCommand extends AggregateCommandImpl<AggregateStringExpressionPair> {
    constructor(value: AggregateStringExpressionPair);
}
export declare class SqrtAggregateCommand extends AggregateCommandImpl<AggregateNumberExpression> {
    constructor(value: AggregateNumberExpression);
}
export declare class SubstrAggregateCommand extends AggregateCommandImpl<SubstrCommandParam> {
    constructor(value: SubstrCommandParam);
}
export declare class SubstrBytesAggregateCommand extends AggregateCommandImpl<SubstrBytesCommandParam> {
    constructor(value: SubstrBytesCommandParam);
}
export declare class SubtractAggregateCommand extends AggregateCommandImpl<SubtractCommandParam> {
    constructor(value: SubtractCommandParam);
}
export declare class SumAggregateCommand extends AggregateCommandImpl<AggregateExpression | AggregateExpression[]> {
    constructor(value: AggregateExpression | AggregateExpression[]);
}
export declare class SwitchAggregateCommand extends AggregateCommandImpl<SwitchCommandParam> {
    constructor(value: SwitchCommandParam);
}
export declare class ToLowerAggregateCommand extends AggregateCommandImpl<AggregateStringExpression> {
    constructor(value: AggregateStringExpression);
}
export declare class ToUpperAggregateCommand extends AggregateCommandImpl<AggregateStringExpression> {
    constructor(value: AggregateStringExpression);
}
export declare class TruncAggregateCommand extends AggregateCommandImpl<AggregateNumberExpression | AggregateNumberExpressionPair> {
    constructor(value: AggregateNumberExpression | AggregateNumberExpressionPair);
}
export declare class WeekAggregateCommand extends AggregateCommandImpl<AggregateDateParam> {
    constructor(value: AggregateDateParam);
}
export declare class YearAggregateCommand extends AggregateCommandImpl<AggregateDateParam> {
    constructor(value: AggregateDateParam);
}
export declare class AllElementsTrueAggregateCommand extends AggregateCommandImpl<AggregateArrayExpression> {
    constructor(value: AggregateArrayExpression);
}
export declare class AnyElementTrueAggregateCommand extends AggregateCommandImpl<AggregateArrayExpression> {
    constructor(value: AggregateArrayExpression);
}
export declare class SetDifferenceAggregateCommand extends AggregateCommandImpl<AggregateArrayExpressionPair> {
    constructor(value: AggregateArrayExpressionPair);
}
export declare class SetEqualsAggregateCommand extends AggregateCommandImpl<AggregateArrayExpressionPair> {
    constructor(value: AggregateArrayExpressionPair);
}
export declare class SetIntersectionAggregateCommand extends AggregateCommandImpl<AggregateArrayExpressionPair> {
    constructor(value: AggregateArrayExpressionPair);
}
export declare class SetIsSubsetAggregateCommand extends AggregateCommandImpl<AggregateArrayExpressionPair> {
    constructor(value: AggregateArrayExpressionPair);
}
export declare class SetUnionAggregateCommand extends AggregateCommandImpl<AggregateArrayExpressionPair> {
    constructor(value: AggregateArrayExpressionPair);
}
export declare class LiteralAggregateCommand extends AggregateCommandImpl<AggregateLiteralParam> {
    constructor(value: AggregateLiteralParam);
}
export declare class ArrayToObjectAggregateCommand extends AggregateCommandImpl<AggregateArrayExpression[]> {
    constructor(value: AggregateArrayExpression[]);
}
export declare class ConcatArraysAggregateCommand extends AggregateCommandImpl<AggregateArrayExpression[]> {
    constructor(value: AggregateArrayExpression[]);
}
export declare class FilterAggregateCommand extends AggregateCommandImpl<AggregateFilterParam> {
    constructor(value: AggregateFilterParam);
}
export declare class ObjectToArrayAggregateCommand extends AggregateCommandImpl<AggregateDocumentExpression> {
    constructor(value: AggregateDocumentExpression);
}
export declare class RangeAggregateCommand extends AggregateCommandImpl<AggregateRangeParam> {
    constructor(value: AggregateRangeParam);
}
export declare class ReduceAggregateCommand extends AggregateCommandImpl<AggregateReduceParam> {
    constructor(value: AggregateReduceParam);
}
export declare class ReverseArrayAggregateCommand extends AggregateCommandImpl<AggregateArrayExpression> {
    constructor(value: AggregateArrayExpression);
}
export declare class ZipAggregateCommand extends AggregateCommandImpl<AggregateZipParam> {
    constructor(value: AggregateZipParam);
}
export declare class DateFromStringAggregateCommand extends AggregateCommandImpl<AggregateDateFromStringParam> {
    constructor(value: AggregateDateFromStringParam);
}
export declare class IndexOfBytesAggregateCommand extends AggregateCommandImpl<AggregateIndexOfParam> {
    constructor(value: AggregateIndexOfParam);
}
export declare class IndexOfCPAggregateCommand extends AggregateCommandImpl<AggregateIndexOfParam> {
    constructor(value: AggregateIndexOfParam);
}
export declare class StrLenBytesAggregateCommand extends AggregateCommandImpl<AggregateStringExpression> {
    constructor(value: AggregateStringExpression);
}
export declare class StrLenCPAggregateCommand extends AggregateCommandImpl<AggregateStringExpression> {
    constructor(value: AggregateStringExpression);
}
export declare class StrcasecmpAggregateCommand extends AggregateCommandImpl<AggregateStrcasecmpParam> {
    constructor(value: AggregateStrcasecmpParam);
}
export declare class SubstrCPAggregateCommand extends AggregateCommandImpl<AggregateSubstrCPParam> {
    constructor(value: AggregateSubstrCPParam);
}
export declare class StdDevPopAggregateCommand extends AggregateCommandImpl<AggregateExpression> {
    constructor(value: AggregateExpression);
}
export declare class StdDevSampAggregateCommand extends AggregateCommandImpl<AggregateExpression> {
    constructor(value: AggregateExpression);
}
export declare class DateFromPartsAggregateCommand extends AggregateCommandImpl<AggregatedateFromPartsParam> {
    constructor(value: AggregatedateFromPartsParam);
}
export declare class DayOfMonthAggregateCommand extends AggregateCommandImpl<AggregateDateParam> {
    constructor(value: AggregateDateParam);
}
export declare class DayOfWeekAggregateCommand extends AggregateCommandImpl<AggregateDateParam> {
    constructor(value: AggregateDateParam);
}
export declare class DayOfYearAggregateCommand extends AggregateCommandImpl<AggregateDateParam> {
    constructor(value: AggregateDateParam);
}
export declare class HourAggregateCommand extends AggregateCommandImpl<AggregateDateParam> {
    constructor(value: AggregateDateParam);
}
export declare class ISODayOfWeekAggregateCommand extends AggregateCommandImpl<AggregateDateParam> {
    constructor(value: AggregateDateParam);
}
export declare class ISOWeekYearAggregateCommand extends AggregateCommandImpl<AggregateDateParam> {
    constructor(value: AggregateDateParam);
}
export declare class MillisecondAggregateCommand extends AggregateCommandImpl<AggregateDateParam> {
    constructor(value: AggregateDateParam);
}
export declare class MinuteAggregateCommand extends AggregateCommandImpl<AggregateDateParam> {
    constructor(value: AggregateDateParam);
}
export declare class SecondAggregateCommand extends AggregateCommandImpl<AggregateDateParam> {
    constructor(value: AggregateDateParam);
}
