import { BuilderCompiled } from "../core/builder-compiled";
import { WhereBuilder } from "./where-builder";
import { ExpressionOrColumn, ValueType } from "../core/utils";
import { ProjectionCaseWhen } from "./projection-case-when";
export declare class ProjectionCase<TReturn, T> {
    private _alias;
    private _caseBuilder;
    constructor(expression?: ExpressionOrColumn<TReturn, T>, _alias?: string);
    when(value: WhereBuilder<T> | ValueType, whenCallback: (when: ProjectionCaseWhen<T>) => void): ProjectionCase<TReturn, T>;
    compile(): BuilderCompiled;
    private compileWhen;
}
