16 lines
683 B
C#
16 lines
683 B
C#
using CloudPrint.Client.Models;
|
|
|
|
namespace CloudPrint.Client.Services.Abstractions;
|
|
|
|
public interface IFileService
|
|
{
|
|
long MaxFileSizeBytes { get; }
|
|
IReadOnlyCollection<string> SupportedExtensions { get; }
|
|
|
|
bool IsSupported(string path);
|
|
FileValidationResult ValidateFile(string path, long? maxFileSizeBytes = null);
|
|
CloudPrintDocument CreateLocalDocument(string path);
|
|
CloudPrintDocument CopyToLibrary(string sourcePath, string libraryRoot, string categoryName, int categoryId = 0);
|
|
string PrepareForPrint(PrintJob job);
|
|
Task<FilePreparationResult> PrepareForPrintAsync(PrintJob job, string cacheRoot, CancellationToken cancellationToken = default);
|
|
} |