Signal-iOS/SignalServiceKit/MessageBackup/MessageBackupManager.swift
2024-05-01 15:37:53 -05:00

21 lines
767 B
Swift

//
// Copyright 2023 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
//
import Foundation
public protocol MessageBackupManager {
func validateBackup(localIdentifiers: LocalIdentifiers, fileUrl: URL) async throws
/// Outputs file url the backup proto is located at.
func createBackup(localIdentifiers: LocalIdentifiers) async throws -> Upload.BackupUploadMetadata
func uploadBackup(metadata: Upload.BackupUploadMetadata, localIdentifiers: LocalIdentifiers, auth: ChatServiceAuth) async throws -> Upload.Result<Upload.BackupUploadMetadata>
func downloadBackup(localIdentifiers: LocalIdentifiers, auth: ChatServiceAuth) async throws -> URL
func importBackup(localIdentifiers: LocalIdentifiers, fileUrl: URL) async throws
}