import { OrderByArgsElement } from '../../orderBy';
import { ItemInfo } from '../../ItemInfo';
import { PrimitiveType } from '../..//models';
import { ReturningItem } from '../../ReturningItemInfo';
import { All } from '../../singletoneConstants';
import { Artifacts, BaseStep } from '../BaseStep';
import { LimitStep } from './LimitStep';
import { OffsetStep } from './OffsetStep';
import { ReturningStep } from '../ReturningStep';
export declare class OrderByStep extends BaseStep {
    private readonly orderByArgsElement;
    private readonly orderByItemInfos;
    constructor(prevStep: BaseStep, orderByArgsElement: OrderByArgsElement[]);
    getStepArtifacts(): Artifacts;
    getStepStatement(artifacts?: Artifacts): string;
    limit(n: null | number | All): LimitStep;
    limit$(n: null | number): LimitStep;
    offset(n: number): OffsetStep;
    offset$(n: number): OffsetStep;
    returning(...items: (ItemInfo | ReturningItem | PrimitiveType)[]): ReturningStep;
}
