import { CypherEnvironment } from "../Environment";
import type { Variable } from "../references/Variable";
import type { CypherCompilable, Expr } from "../types";
declare const customInspectSymbol: unique symbol;
export declare abstract class PatternElement implements CypherCompilable {
    protected variable: Variable | undefined;
    constructor(element: Variable | undefined);
    abstract getCypher(env: CypherEnvironment): string;
    protected serializeParameters(parameters: Record<string, Expr>, env: CypherEnvironment): string;
    /** Custom string for browsers and templating
     * @hidden
     */
    toString(): string;
    /** Custom log for console.log in Node
     * @hidden
     */
    [customInspectSymbol](): string;
}
export {};
