import { Executor } from "../../executors/Executor";
import { OrmGenerics } from "../../types/ormGenerics";
import { iSerializedExpression, tSqlParams } from "./ExpressionSerializer";
export declare abstract class AggregateBuilder<G extends OrmGenerics> extends Executor<G> {
    protected selectAliases: Set<string>;
    protected assertValidIdentifier(_identifier: string, _context: string): void;
    protected isReferenceExpression(value: string): boolean;
    protected isKnownFunction(functionName: string): boolean;
    protected serializeExpression(expression: any, params?: tSqlParams, context?: string, contextColumn?: string): iSerializedExpression;
    buildAggregateField(field: string | any[], params?: tSqlParams): string;
}
