using StickyBoard.Core.Models; using StickyBoard.Core.Models.BoardsAndCards; using StickyBoard.Core.Repositories.Base; namespace StickyBoard.Core.Repositories.BoardsAndCards.Contracts; public interface IWorkspaceRepository : IRepository, ISyncRepository { Task> GetForUserAsync(Guid userId, CancellationToken ct); Task IsUserMemberAsync(Guid workspaceId, Guid userId, CancellationToken ct); Task GetUserRoleAsync(Guid workspaceId, Guid userId, CancellationToken ct); Task> SearchByNameAsync(string query, CancellationToken ct); Task> GetMemberIdsAsync(Guid workspaceId, CancellationToken ct); Task SoftDeleteCascadeAsync(Guid workspaceId, CancellationToken ct); }