// MIT License - Copyright (c) 2025 wallstop // Full license text: https://github.com/wallstop/unity-helpers/blob/main/LICENSE namespace WallstopStudios.UnityHelpers.Core.DataStructure { using System; using System.Collections.Generic; using UnityEngine; /// /// Disposable abstraction for 3D spatial hashes so pooled resources are always released. /// /// Stored element type. public interface ISpatialHash3D : IDisposable { float CellSize { get; } int CellCount { get; } void Insert(Vector3 position, T item); bool Remove(Vector3 position, T item); List Query( Vector3 position, float radius, List results, bool distinct = true, bool exactDistance = true ); List QueryBox(Bounds bounds, List results, bool distinct = true); void Clear(); } }