diff --git a/Sources/ElixxirDAppsSDK/Channel/Functors/ChannelBroadcastAsymmetric.swift b/Sources/ElixxirDAppsSDK/Channel/Functors/ChannelBroadcastAsymmetric.swift index 9d92e00297cc99ce2b0b195180994cb0aa8666d0..b3b82e0186b552683e1f2c95d0866d7810d26847 100644 --- a/Sources/ElixxirDAppsSDK/Channel/Functors/ChannelBroadcastAsymmetric.swift +++ b/Sources/ElixxirDAppsSDK/Channel/Functors/ChannelBroadcastAsymmetric.swift @@ -2,19 +2,22 @@ import Bindings import XCTestDynamicOverlay public struct ChannelBroadcastAsymmetric { - public var run: (Data, Data) throws -> Data + public var run: (Data, Data) throws -> BroadcastReport public func callAsFunction( payload: Data, privateKey: Data - ) throws -> Data { + ) throws -> BroadcastReport { try run(payload, privateKey) } } extension ChannelBroadcastAsymmetric { public static func live(_ bindingsChannel: BindingsChannel) -> ChannelBroadcastAsymmetric { - ChannelBroadcastAsymmetric(run: bindingsChannel.broadcastAsymmetric(_:pk:)) + ChannelBroadcastAsymmetric { payload, privateKey in + let reportData = try bindingsChannel.broadcastAsymmetric(payload, pk: privateKey) + return try BroadcastReport.decode(reportData) + } } }