// // Service.swift // APIService // // Created by Javier Cicchelli on 04/12/2022. // Copyright © 2022 Röck+Cöde. All rights reserved. // import Foundation public protocol Service { func getUser(credentials: Credentials) async throws -> Me func getItems(id: String, credentials: Credentials) async throws -> [Item] func getData(id: String, credentials: Credentials) async throws -> Data func createFolder(id: String, name: String, credentials: Credentials) async throws -> Item func uploadFile(id: String, file: File, credentials: Credentials) async throws -> Item func deleteItem(id: String, credentials: Credentials) async throws } // MARK: - Structs public struct Credentials { let username: String let password: String } public struct File { let name: String let data: Data }