Spaces:
Running
Running
File size: 1,221 Bytes
b9c7f0e 7039b6a b9c7f0e | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | using FlowAPI.Application.DTOs.Graph;
namespace FlowAPI.Application.Interfaces
{
public interface IGraphService
{
Task<IEnumerable<GraphResponseDto>> GetAllByUserIdAsync(Guid userId);
Task<GraphResponseDto?> GetByIdAsync(Guid id, Guid currentUserId);
Task<FullGraphResponseDto?> GetFullByIdAsync(Guid id, Guid currentUserId);
Task<GraphResponseDto> CreateAsync(CreateGraphDto dto, Guid currentUserId);
Task<GraphResponseDto?> UpdateAsync(Guid id, UpdateGraphDto dto, Guid currentUserId);
Task<bool> DeleteAsync(Guid id, Guid currentUserId);
Task<bool> SaveFullGraphAsync(Guid id, FullGraphResponseDto dto, Guid currentUserId);
Task<GraphResponseDto?> ShareGraphAsync(Guid graphId, Guid ownerId, ShareGraphRequestDto dto);
Task<IEnumerable<SharedUserResponseDto>> GetSharedUsersAsync(Guid graphId, Guid ownerId);
Task<bool> RevokeShareAsync(Guid graphId, Guid ownerId, Guid shareId);
Task<FlowAPI.Domain.Entities.CustomTemplate> SaveAsTemplateAsync(Guid graphId, Guid userId, string title, string description);
Task<IEnumerable<FlowAPI.Domain.Entities.CustomTemplate>> GetCustomTemplatesAsync(Guid userId);
}
}
|