import { IObjectData, PartitionNode } from "../../../../types"; import { Vector3 } from "../../../../../bundle/sdk"; /** * Renders and returns the HTML element for the room tree pane. * @returns {HTMLElement} The HTML element representing the room tree pane. */ export declare function renderRoomTreePane(): HTMLElement; /** * Displays the UI for the Room tree structure. * @param partitions - Details of the partitions to construct the tree. */ export declare function displayRoomTree(partitions: Array, objectData?: Array): void; /** * Creates and returns a DOM element representing a partition node in the room tree. * @param {PartitionNode} partition - The details of the room to be rendered. * @returns {HTMLElement} */ export declare function displayRoomPartition(partition: PartitionNode, objectData?: Array): HTMLUListElement; /** * Displays the partitions for a specific room. * @param {PartitionNode} partitions - The details of the room partitions to be rendered. * @param partitionId - The identifier of the room to which the partitions belong. * @returns {HTMLElement} */ export declare function displayChildPartitions(partitions: PartitionNode[], parentPartitionId: string, objectData?: Array): void; /**s * Displays the items within a specific partition. * @param partitionItems - The details of the partition items to be rendered. * @returns {HTMLElement} */ export declare function displayPartitionItems(partitionItems: any, partitionId?: string, object?: any, parentUuid?: string): string; export declare function updateParentVisibility(isPartition: boolean, currentBtn: HTMLElement): void; /** * Retrieves the stored room data. * @returns An array of room nodes. */ export declare function getRoomData(): PartitionNode[]; /** * Sets the current room data being edited based on the provided ID. * @param id - The unique identifier of the room to be edited. */ export declare function setCurrentEditRoomData(id: string): void; /** * Retrieves the current room data being edited. * @returns The current room node being edited. */ export declare function getCurrentEditRoomData(): PartitionNode; export declare function getSelectedPartitionId(): String; /** * Updates the visibility of a partition and its children if it's a parent partition. * @param isVisible - The visibility state to set (true/false). * @param currPartition - The current partition node to update. * @param isParentPartition - Indicates if the current partition is a parent (true) or a child (false). */ export declare function updatePartitionVisibilityUI(isVisible: boolean, currPartition: PartitionNode, isParentPartition: boolean, isUpdateAllChildren: boolean): Promise; /** * Updates the visibility of a specific polygon (floor or wall) within a partition. * @param isVisible - The visibility state to set (true/false). * @param currPartition - The current partition node containing the polygon data. * @param isFloor - Indicates if the target is a floor (true) or a wall (false). * @param polygonItemId - The ID of the specific polygon (floor or wall) to update. */ export declare function updatePolygonVisibilityData(isVisible: boolean, currPartition: PartitionNode, isFloor: boolean, polygonItemId: string): Promise; /** * Toggles the target element visibility state. * @param element - Target HTML element. * @param isVisible - Visibility state of the element. */ export declare function toggleVisibilityState(element: HTMLElement, isVisible: boolean): void; export declare function setFilteredDisplay(type: String): void; /** * Toggles the visibility button state of the target room. * @param parentId - ID of the room * @param isVisible - Visibility value */ export declare function updateRoomVisibilityUI(parentId: string, isVisible: boolean): void; /** * Highlights the selected child element and toggle expand indicator within a partition by toggling CSS classes. * @param partitionId - The unique identifier of the partition containing the child elements * @param name - The specific name/identifier of the child element to highlight */ export declare function highlightSelectedPartitionChild(partitionId: string, name: string): void; /** * Toggles the visibility of child elements within a partition wall by managing CSS classes. * @param partitionId - The unique identifier of the partition containing the child elements * @param name - The specific name/identifier of the child element whose container to toggle * @param expand - Optional boolean to explicitly set expansion state (true = show, false = hide). If undefined, toggles current state */ export declare function toggleExpandPartitionWallChild(partitionId: string, name: string, expand?: boolean): void; /** * Highlights the selected window element by toggling CSS classes and ensures its parent partition is expanded. * @param wallUuid - The unique identifier of the wall containing the window elements * @param index - The index or identifier of the specific window element to highlight */ export declare function highlightSelectedWindow(wallUuid: string, index: number | string): void; /** * Removes the highlight from all selected window items by removing the 'selected' CSS class. */ export declare function toggleHighlightedWindowItem(): void; /** * Toggles the highlighted state of partition items by adding 'selected' class to the matching partition and removing it from others. * @param partitionId - The partition ID to highlight (only the prefix before the first hyphen is used for matching) */ export declare function toggleHighlightedPartitionItem(partitionId: string): void; /** * Calculates the midpoint (centroid) of multiple 3D coordinates by averaging their x, y, and z values. * @param coords - An array of objects containing start Vector3 coordinates * @returns A Vector3 representing the calculated midpoint of all input coordinates */ export declare function calculateMidPoint(coords: Array<{ start: Vector3; }>): Vector3; /** * Toggles Room Tree container capability to receive click events * @param toggle - Boolean value that determines state of toggle to perform */ export declare function toggleRoomTreeClickDisability(toggle: boolean): void;