From 82f7e1df696e99f886bfd7b7616578fb5a4423c6 Mon Sep 17 00:00:00 2001 From: Javier Cicchelli Date: Sun, 8 Sep 2024 23:53:42 +0200 Subject: [PATCH] Defined the APIClient protocol in the package target. --- Sources/Internal/Protocols/APIClient.swift | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 Sources/Internal/Protocols/APIClient.swift diff --git a/Sources/Internal/Protocols/APIClient.swift b/Sources/Internal/Protocols/APIClient.swift new file mode 100644 index 0000000..568f862 --- /dev/null +++ b/Sources/Internal/Protocols/APIClient.swift @@ -0,0 +1,26 @@ +//===----------------------------------------------------------------------=== +// +// This source file is part of the AmiiboAPI open source project +// +// Copyright (c) 2024 Röck+Cöde VoF. and the AmiiboAPI project authors +// Licensed under the EUPL 1.2 or later. +// +// See LICENSE for license information +// See CONTRIBUTORS for the list of AmiiboAPI project authors +// +//===----------------------------------------------------------------------=== + +import Foundation + +public protocol APIClient { + + // MARK: Functions + + func getAmiibos(by filter: AmiiboFilter) async throws -> [Amiibo] + func getAmiiboSeries(by filter: AmiiboSeriesFilter) async throws -> [AmiiboSeries] + func getAmiiboTypes(by filter: AmiiboTypeFilter) async throws -> [AmiiboType] + func getGameCharacters(by filter: GameCharacterFilter) async throws -> [GameCharacter] + func getGameSeries(by filter: GameSeriesFilter) async throws -> [GameSeries] + func getLastUpdated() async throws -> Date + +}