/** * Selection Utilities * Helper functions for multi-entity selection operations */ import * as THREE from 'three'; import { ECSContext } from '../../ecs'; /** * Compute the centroid (average position) of selected entities * Used for placing the transform gizmo at the center of selection */ export declare function computeSelectionCentroid(ctx: ECSContext, eids: number[]): THREE.Vector3 | null; /** * Compute the bounding box that contains all selected entities * Useful for visualization and bulk operations */ export declare function computeSelectionBounds(ctx: ECSContext, eids: number[]): THREE.Box3 | null; /** * Compute the intersection of components across multiple entities * Returns component names that ALL entities have in common * Used for the unified inspector to show shared fields */ export declare function computeComponentIntersection(componentSets: Set[]): string[]; /** * Check if two values are deeply equal * Used to determine if field values are the same across multiple entities */ export declare function deepEqual(a: any, b: any): boolean; /** * Sentinel value to indicate mixed field values across entities */ export declare const MIXED_VALUE_SENTINEL: unique symbol; //# sourceMappingURL=selectionUtils.d.ts.map