Parent object type.
Target node.
Function that will be run for every parent of the target node, from immediate parent to the root.
Max depth, or 0 for infinite.
The found parent node and the path to get from the parent to the child, or undefined if not found.
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.