import { VisitContext } from "breeze-client";
import { IncludeOptions, WhereOptions } from "sequelize";
import { SqVisitContext } from "./SequelizeQuery";
/** Result of processing a query expression into Sequelize */
export interface ExprResult {
    include: IncludeOptions[];
    lastInclude: IncludeOptions;
    where: WhereOptions;
}
/** Visit the nodes in a Breeze query, converting it to a Sequelize query */
declare const toSQVisitor: {
    passthruPredicate: () => any;
    unaryPredicate: (context: VisitContext) => any;
    binaryPredicate: (context: SqVisitContext) => ExprResult;
    andOrPredicate: (context: VisitContext) => any;
    anyAllPredicate: (context: SqVisitContext) => {
        include: IncludeOptions[];
    };
    litExpr: () => void;
    propExpr: (context: any) => void;
    fnExpr: (context: any) => void;
};
export { toSQVisitor };
