import { EntryTable } from 'alinea/core/EntryRow';
import { Realm } from 'alinea/core/pages/Realm';
import { Table } from 'rado';
interface ResolveContextData {
    realm: Realm;
    location: Array<string>;
    locale: string | undefined;
    depth: number;
    expr: ExprContext;
}
declare enum ExprContext {
    InNone = 0,
    InSelect = 1,
    InCondition = 2,
    InAccess = 4
}
export declare class ResolveContext {
    private data;
    table: Table<EntryTable>;
    constructor(data: Partial<ResolveContextData>);
    linkContext(): ResolveContext;
    get depth(): number;
    get location(): string[];
    get realm(): Realm;
    get locale(): string | undefined;
    get expr(): ExprContext;
    get Table(): Table<EntryTable>;
    increaseDepth(): ResolveContext;
    decreaseDepth(): ResolveContext;
    get isInSelect(): number;
    get isInCondition(): number;
    get isInAccess(): number;
    get select(): ResolveContext;
    get condition(): ResolveContext;
    get access(): ResolveContext;
    get none(): ResolveContext;
}
export {};
