mobx-bonsai
Version:
A fast lightweight alternative to MobX-State-Tree + Y.js two-way binding
14 lines (13 loc) • 627 B
TypeScript
/**
* 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.
* If none is found it will return undefined.
*
* @template T Parent node 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
*/
export declare function findParent<T extends object>(child: object, predicate: (parentNode: object) => boolean, maxDepth?: number): T | undefined;