namespace GreenHome.Application; public interface IDevicePostService { Task> GetPostsAsync(DevicePostFilter filter, CancellationToken cancellationToken); Task GetPostByIdAsync(int id, CancellationToken cancellationToken); Task CreatePostAsync(CreateDevicePostRequest request, CancellationToken cancellationToken); Task UpdatePostAsync(UpdateDevicePostRequest request, CancellationToken cancellationToken); Task DeletePostAsync(int id, CancellationToken cancellationToken); Task AddImageToPostAsync(int postId, string fileName, string filePath, string contentType, long fileSize, CancellationToken cancellationToken); Task DeleteImageAsync(int imageId, CancellationToken cancellationToken); Task CanUserAccessDeviceAsync(int userId, int deviceId, CancellationToken cancellationToken); }