Signal-iOS/SignalServiceKit/src/Protocols/ProfileManagerProtocol.h

44 lines
1.4 KiB
Objective-C

//
// Copyright (c) 2019 Open Whisper Systems. All rights reserved.
//
@class OWSAES256Key;
@class SDSAnyReadTransaction;
@class SDSAnyWriteTransaction;
@class SignalServiceAddress;
@class TSThread;
NS_ASSUME_NONNULL_BEGIN
@protocol ProfileManagerProtocol <NSObject>
- (OWSAES256Key *)localProfileKey;
- (nullable NSData *)profileKeyDataForAddress:(SignalServiceAddress *)address
transaction:(SDSAnyReadTransaction *)transaction;
- (void)setProfileKeyData:(NSData *)profileKeyData
forAddress:(SignalServiceAddress *)address
transaction:(SDSAnyWriteTransaction *)transaction;
- (void)setProfileName:(nullable NSString *)profileName
forAddress:(SignalServiceAddress *)address
transaction:(SDSAnyWriteTransaction *)transaction;
- (BOOL)isUserInProfileWhitelist:(SignalServiceAddress *)address transaction:(SDSAnyReadTransaction *)transaction;
- (BOOL)isThreadInProfileWhitelist:(TSThread *)thread transaction:(SDSAnyReadTransaction *)transaction;
- (void)addUserToProfileWhitelist:(SignalServiceAddress *)address;
- (void)removeUserFromProfileWhitelist:(SignalServiceAddress *)address;
- (void)addGroupIdToProfileWhitelist:(NSData *)groupId;
- (void)fetchLocalUsersProfile;
- (void)fetchProfileForAddress:(SignalServiceAddress *)address;
- (void)warmCaches;
@end
NS_ASSUME_NONNULL_END