import type { CypherEnvironment } from "../Environment";
import { Clause } from "./Clause";
/**
 * @see {@link https://neo4j.com/docs/cypher-manual/current/clauses/union/ | Cypher Documentation}
 * @group Clauses
 */
export declare class Union extends Clause {
    private readonly subqueries;
    private unionType;
    constructor(...subqueries: Clause[]);
    all(): this;
    /**
     * Adds the clause `DISTINCT` after `UNION`
     * @since Neo4j.19
     */
    distinct(): this;
    /**
     * If importWithCypher is provided, it will be added at the beginning of each subquery except first
     *  @internal
     */
    getCypher(env: CypherEnvironment, importWithCypher?: string): string;
}
