import type { Expr } from "../index";
import { HasLabel } from "../expressions/HasLabel";
import type { LabelExpr } from "../expressions/labels/label-expressions";
import { Label } from "./Label";
import type { NamedReference } from "./Variable";
import { Variable } from "./Variable";
/** Represents a node reference
 * @group Variables
 */
export declare class NodeRef extends Variable {
    constructor();
    hasLabels(...labels: string[]): HasLabel;
    hasLabel(label: string | LabelExpr): HasLabel;
    label(label: string | Expr): Label;
}
/** Represents a node reference with a given name
 * @group Variables
 */
export declare class NamedNode extends NodeRef implements NamedReference {
    readonly id: string;
    constructor(id: string);
    get name(): string;
}
