cs-element
Version:
Advanced reactive data management library with state machines, blueprints, persistence, compression, networking, and multithreading support
28 lines • 1.22 kB
TypeScript
import { ICSElement } from '../types/interfaces';
export declare class ElementNavigation {
/**
* Обход всех элементов в глубину
*/
static traverseDepthFirst(root: ICSElement, callback: (element: ICSElement) => void | Promise<void>, includeThis?: boolean): Promise<void>;
/**
* Обход всех элементов в ширину
*/
static traverseBreadthFirst(root: ICSElement, callback: (element: ICSElement) => void | Promise<void>, includeThis?: boolean): Promise<void>;
/**
* Получить путь до элемента
*/
static getPath(element: ICSElement): string[];
/**
* Получить глубину элемента
*/
static getDepth(element: ICSElement): number;
/**
* Найти все элементы по условию
*/
static findElements(root: ICSElement, predicate: (element: ICSElement) => boolean): Promise<ICSElement[]>;
/**
* Найти первый элемент по условию
*/
static findElement(root: ICSElement, predicate: (element: ICSElement) => boolean): Promise<ICSElement | null>;
}
//# sourceMappingURL=ElementNavigation.d.ts.map