import { RelationConstraint, RelationJoin } from './relation'; export interface QuerySessionData { relationJoins?: RelationJoin[]; relationWhere?: Record; relationOrder?: Record; } export declare class QuerySession { readonly relationJoins: RelationJoin[]; readonly relationWhere: Record; readonly relationOrder: Record; private _seq; static create(sessionOrData?: QuerySession | QuerySessionData): QuerySession; protected constructor(data?: QuerySessionData); currentSeq(): number; nextSeq(): number; hasRelations(): boolean; hasRelationJoins(): boolean; hasRelationWhere(): boolean; hasRelationOrder(): boolean; addRelationJoin(join: RelationJoin): RelationJoin; setRelationWhere(key: string, constraint: RelationConstraint): void; setRelationOrder(key: string, constraint: RelationConstraint): void; }