import { type Binding } from '../../binding/models/Binding.js';
import { type PlanServiceNodeBindingRemovedResult } from '../../metadata/models/PlanServiceNodeBindingRemovedResult.js';
import { type PlanParams } from '../models/PlanParams.js';
import { type PlanServiceNode } from '../models/PlanServiceNode.js';
/**
 * Detach a binding to the root service node if it is context-free.
 * @param params The plan parameters.
 * @param serviceNode The service node to attach the binding to.
 * @param binding The binding to attach.
 * @returns True if the binding requires ancestor metadata, false otherwise.
 */
export declare function removeRootServiceNodeBindingIfContextFree(params: PlanParams, serviceNode: PlanServiceNode, binding: Binding<unknown>): PlanServiceNodeBindingRemovedResult;
//# sourceMappingURL=removeRootServiceNodeBindingIfContextFree.d.ts.map