import type { Expr } from "../../../types";
import type { Order } from "../../sub-clauses/OrderBy";
import { OrderBy } from "../../sub-clauses/OrderBy";
import { Mixin } from "../Mixin";
export declare abstract class WithOrder extends Mixin {
    protected orderByStatement: OrderBy | undefined;
    /** Add an `ORDER BY` subclause. Note that `ASC` is the default sorting order
     * @see {@link https://neo4j.com/docs/cypher-manual/current/clauses/order-by/ | Cypher Documentation}
     */
    orderBy(...exprs: Array<[Expr, Order] | Expr | [Expr]>): this;
    /** Add a `SKIP` subclause.
     * @see {@link https://neo4j.com/docs/cypher-manual/current/clauses/skip/ | Cypher Documentation}
     */
    skip(value: number | Expr): this;
    /** Add a `OFFSET` subclause. An alias to `SKIP`
     * @see {@link https://neo4j.com/docs/cypher-manual/current/clauses/skip/#offset-synonym | Cypher Documentation}
     * @since Neo4j 5.24
     */
    offset(value: number | Expr): this;
    /** Add a `LIMIT` subclause.
     * @see {@link https://neo4j.com/docs/cypher-manual/current/clauses/limit/ | Cypher Documentation}
     */
    limit(value: number | Expr): this;
    private getOrCreateOrderBy;
}
