using TEAMModelOS.SDK.Module.AzureBlob.Container; using Microsoft.AspNetCore.Http; using System.Collections.Generic; using System.Threading.Tasks; using System.IO; using Microsoft.WindowsAzure.Storage.Blob; namespace TEAMModelOS.SDK.Module.AzureBlob.Interfaces { public interface IAzureBlobDBRepository { Task> UploadFiles(IFormFile[] file ,string fileSpace="common" ,bool contentTypeDefault = false); Task UploadFile(IFormFile file, string fileSpace = "wordfiles", bool contentTypeDefault = true); Task UploadPath(string path, string fileSpace = "common", bool contentTypeDefault = false); Task UploadObject(string fileName, object obj, string fileSpace = "common", bool contentTypeDefault = true); Task UploadText(string fileName, string text, string fileSpace = "common", bool contentTypeDefault = true); Task UploadFileByFolder(Stream fileSteam, string folder, string fileName, string fileSpace = "pptx", bool contentTypeDefault = true); Task UploadTextByFolder(string text, string folder, string fileName, string fileSpace = "pptx", bool contentTypeDefault = true); AzureBlobModel UploadFileByFolderNAsyn(Stream fileSteam, string folder, string fileName, string fileSpace = "pptx", bool contentTypeDefault = true); string GetBlobSasUri(string blobName, string containerName=null, string policyName = null); string GetBlobSasUriRead(string containerName, string blobName, string policyName = null); (string, string) GetContainerSasUri(string containerName=null, string policyName = null); (string, string) GetContainerSasUriRead(string containerName, string policyName = null); Task CreateSharedAccessPolicyAsync(string policyName , string containerName = null); Task DeleteSharedAccessPolicyAsync(string policyName, string containerName = null); Task Deleteblob(string sasUri); } }