using Microsoft.AspNetCore.Http;
using RSecurityBackend.Models.Generic;
using RSecurityBackend.Models.Image;
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using System.Threading.Tasks;
namespace RSecurityBackend.Services
{
///
/// Image File Service
///
public interface IImageFileService
{
///
/// add new picture
///
///
///
///
/// pass empty if you want a generic date based folder
///
Task> Add
(
IFormFile file, Stream stream, string originalFileNameForStreams, string imageFolderName
);
///
/// store added image
///
///
///
Task> Store(RImage image);
///
/// returns image info
///
///
///
Task> GetImage(Guid id);
///
/// returns image file stream
///
///
///
RServiceResult GetImagePath(RImage image);
///
/// delete image from database and file system
///
///
///
Task> DeleteImage(Guid id);
///
/// Image Storage Path
///
string ImageStoragePath { get; }
}
}