import XCTestDynamicOverlay import XXClient public struct MessengerStartFileTransfer { public enum Error: Swift.Error, Equatable { case notConnected } public var run: () throws -> Void public func callAsFunction() throws -> Void { try run() } } extension MessengerStartFileTransfer { public static func live(_ env: MessengerEnvironment) -> MessengerStartFileTransfer { MessengerStartFileTransfer { guard let e2e = env.e2e() else { throw Error.notConnected } let fileTransfer = try env.initFileTransfer( params: InitFileTransfer.Params( e2eId: e2e.getId(), e2eFileTransferParamsJSON: env.getE2EFileTransferParams(), fileTransferParamsJSON: env.getFileTransferParams() ), callback: ReceiveFileCallback { result in // TODO: } ) env.fileTransfer.set(fileTransfer) } } } extension MessengerStartFileTransfer { public static let unimplemented = MessengerStartFileTransfer( run: XCTUnimplemented("\(Self.self)") ) }