/** * Read-only tree queries — the single authority for locating nodes/panels in a * layout tree. PURE TS (types only): the mutation layer and the react renderer * both consume these so the same traversal is never re-implemented per caller. */ import type { LayoutNode, TabGroupNode } from './types.js'; /** The tab-group node with `groupId`, or null. */ export declare function findGroupById(root: LayoutNode, groupId: string): TabGroupNode | null; /** The tab-group node that holds `panelId`, or null. */ export declare function findGroupContaining(root: LayoutNode, panelId: string): TabGroupNode | null; /** The id of the tab group currently holding `panelId`, or `undefined` if the * panel is not in the tree. Used to detect a drop back into the dragged panel's * own group and to guard a vanished split anchor. */ export declare function findPanelGroupId(root: LayoutNode, panelId: string): string | undefined; /** Total panels anywhere in the tree. Drives last-panel close suppression: a * group view knows only its own node, so the caller computes this global count. */ export declare function countPanels(node: LayoutNode): number; //# sourceMappingURL=tree-query.d.ts.map