// // Copyright (c) 2017 Open Whisper Systems. All rights reserved. // #import NS_ASSUME_NONNULL_BEGIN @class OWSDeviceProvisioningCodeService; @class OWSDeviceProvisioningService; @interface OWSDeviceProvisioner : NSObject - (instancetype)init NS_UNAVAILABLE; - (instancetype)initWithMyPublicKey:(NSData *)myPublicKey myPrivateKey:(NSData *)myPrivateKey theirPublicKey:(NSData *)theirPublicKey theirEphemeralDeviceId:(NSString *)ephemeralDeviceId accountIdentifier:(NSString *)accountIdentifier profileKey:(NSData *)profileKey readReceiptsEnabled:(BOOL)areReadReceiptsEnabled provisioningCodeService:(OWSDeviceProvisioningCodeService *)provisioningCodeService provisioningService:(OWSDeviceProvisioningService *)provisioningService NS_DESIGNATED_INITIALIZER; - (instancetype)initWithMyPublicKey:(NSData *)myPublicKey myPrivateKey:(NSData *)myPrivateKey theirPublicKey:(NSData *)theirPublicKey theirEphemeralDeviceId:(NSString *)ephemeralDeviceId accountIdentifier:(NSString *)accountIdentifier profileKey:(NSData *)profileKey readReceiptsEnabled:(BOOL)areReadReceiptsEnabled; - (void)provisionWithSuccess:(void (^)(void))successCallback failure:(void (^)(NSError *))failureCallback; @end NS_ASSUME_NONNULL_END