using RobotNet10.MapEditor.Shared.DTOs.Node; using RobotNet10.MapEditor.Shared.DTOs.Requests; using RobotNet10.MapManager.Data; namespace RobotNet10.MapManager.Services; /// /// Service for managing nodes /// public interface INodeService { /// /// Get all nodes for a layout level /// Task> GetNodesByLevelAsync(Guid layoutLevelId, bool includeVehicleProperties = true); /// /// Get node by ID /// Task GetByIdAsync(Guid nodeId, bool includeVehicleProperties = true); /// /// Update node /// Task UpdateAsync(Guid nodeId, UpdateNodeRequest request); /// /// Validate if coordinates are within bounds /// Task ValidateCoordinatesAsync(Guid layoutLevelId, double x, double y); /// /// Find nodes within proximity radius of given coordinates /// Task> FindNodesNearCoordinatesAsync(Guid layoutLevelId, double x, double y, double radius); }