import { OrderSpecification, QueryNode, VariableAssignmentQueryNode } from '..'; /** * Traverses recursively through Unary/Binary operations, extracts all variable definitions and replaces them by their * variable nodes * @param {QueryNode} node * @param variableAssignmentsList: (will be modified) list to which to add the variable assignment nodes */ export declare function extractVariableAssignments(node: QueryNode, variableAssignmentsList: VariableAssignmentQueryNode[]): QueryNode; /** * Wraps a queryNode in a list of variable assignments (the logical counterpart to extractVariableAssignments) */ export declare function prependVariableAssignments(node: QueryNode, variableAssignmentsList: ReadonlyArray): QueryNode; export declare function extractVariableAssignmentsInOrderSpecification(orderSpecification: OrderSpecification, variableAssignmentsList: VariableAssignmentQueryNode[]): OrderSpecification;