Initial commit
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
using RobotNet10.MapEditor.Shared.DTOs.Requests;
|
||||
using RobotNet10.MapManager.Data;
|
||||
|
||||
namespace RobotNet10.MapManager.Services;
|
||||
|
||||
/// <summary>
|
||||
/// Service for managing layouts, versions, and levels
|
||||
/// </summary>
|
||||
public interface ILayoutService
|
||||
{
|
||||
// ==========================================
|
||||
// LAYOUT OPERATIONS
|
||||
// ==========================================
|
||||
|
||||
Task<Layout> CreateLayoutAsync(CreateLayoutRequest request);
|
||||
Task<List<Layout>> SearchLayoutsAsync(string? searchText);
|
||||
Task<Layout?> GetLayoutByIdAsync(Guid layoutId);
|
||||
Task<Layout?> GetLayoutByLayoutIdAsync(string layoutId);
|
||||
Task<Layout?> GetLayoutByNameAsync(string layoutName);
|
||||
Task<Layout> UpdateLayoutAsync(Guid layoutId, UpdateLayoutRequest request);
|
||||
Task<bool> DeleteLayoutAsync(Guid layoutId);
|
||||
Task<Layout> ActivateLayoutAsync(Guid layoutId);
|
||||
Task<Layout> DeactivateLayoutAsync(Guid layoutId);
|
||||
|
||||
// ==========================================
|
||||
// VERSION OPERATIONS
|
||||
// ==========================================
|
||||
|
||||
Task<LayoutVersion> CreateVersionAsync(Guid layoutId, CreateLayoutVersionRequest request);
|
||||
Task<List<LayoutVersion>> GetVersionsAsync(Guid layoutId);
|
||||
Task<LayoutVersion?> GetVersionAsync(Guid versionId);
|
||||
Task<LayoutVersion> UpdateVersionAsync(Guid versionId, UpdateLayoutRequest request);
|
||||
Task<bool> DeleteVersionAsync(Guid versionId);
|
||||
|
||||
// ==========================================
|
||||
// LEVEL OPERATIONS
|
||||
// ==========================================
|
||||
|
||||
Task<LayoutLevel> CreateLevelAsync(Guid versionId, CreateLayoutLevelRequest request);
|
||||
Task<List<LayoutLevel>> GetLevelsAsync(Guid versionId);
|
||||
Task<LayoutLevel?> GetLevelAsync(Guid levelId);
|
||||
Task<LayoutLevel> UpdateLevelAsync(Guid levelId, UpdateLayoutLevelRequest request);
|
||||
Task<bool> DeleteLevelAsync(Guid levelId);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user