import type { SugarElement } from '../node/SugarElement'; import * as PredicateFind from './PredicateFind'; const any = (predicate: (e: SugarElement) => boolean): boolean => PredicateFind.first(predicate).isSome(); const ancestor = (scope: SugarElement, predicate: (e: SugarElement) => boolean, isRoot?: (e: SugarElement) => boolean): boolean => PredicateFind.ancestor(scope, predicate, isRoot).isSome(); const closest = (scope: SugarElement, predicate: (e: SugarElement) => boolean, isRoot?: (e: SugarElement) => boolean): boolean => PredicateFind.closest(scope, predicate, isRoot).isSome(); const sibling = (scope: SugarElement, predicate: (e: SugarElement) => boolean): boolean => PredicateFind.sibling(scope, predicate).isSome(); const child = (scope: SugarElement, predicate: (e: SugarElement) => boolean): boolean => PredicateFind.child(scope, predicate).isSome(); const descendant = (scope: SugarElement, predicate: (e: SugarElement) => boolean): boolean => PredicateFind.descendant(scope, predicate).isSome(); export { any, ancestor, closest, sibling, child, descendant };