import { FoundParentPath } from "./FoundParentPath";
/**
 * Iterates through all the parents (from the nearest until the root)
 * until one of them matches the given predicate.
 * If the predicate is matched it will return the found node plus the
 * path to get from the parent to the child.
 * If none is found it will return undefined.
 *
 * @template T Parent object type.
 * @param child Target node.
 * @param predicate Function that will be run for every parent of the target node, from immediate parent to the root.
 * @param maxDepth Max depth, or 0 for infinite.
 * @returns The found parent node and the path to get from the parent to the child, or undefined if not found.
 */
export declare function findParentPath<T extends object>(child: object, predicate: (parentNode: object) => boolean, maxDepth?: number): FoundParentPath<T> | undefined;
