// // Copyright (c) 2020-2021 MobileCoin. All rights reserved. // import Foundation import GRPC import LibMobileCoin protocol AuthHttpCallableClient: AttestableHttpClient, AuthHttpCallable { func auth(_ request: Attest_AuthMessage, callOptions: HTTPCallOptions?) -> HTTPUnaryCall } extension AuthHttpCallableClient { var authCallable: AuthHttpCallable { self } } extension AuthHttpCallableClient { func auth( _ request: Attest_AuthMessage, callOptions: HTTPCallOptions?, completion: @escaping (HttpCallResult) -> Void ) { let clientCall = auth(request, callOptions: callOptions) requester.makeRequest(call: clientCall, completion: completion) } }