15#import <Foundation/Foundation.h>
16#import "EMCommonDefs.h"
17#import "EMContactManagerDelegate.h"
19#import "EMCursorResult.h"
34#pragma mark - Delegate
50 delegateQueue:(dispatch_queue_t)aQueue;
63- (void)removeDelegate:(
id _Nonnull)aDelegate;
66#pragma mark - Contact Operations
122- (void)setContactRemark:(NSString* _Nonnull)userId remark:(NSString*_Nullable)remark completion:(
void (^_Nullable)(
EMContact* _Nullable contact,
EMError * _Nullable aError))aCompletionBlock;
142- (
EMContact* _Nullable)getContact:(NSString* _Nonnull)userId;
164- (void)addContact:(NSString *_Nonnull)aUsername
165 message:(NSString *_Nullable )aMessage
166 completion:(
void (^_Nullable )(NSString *_Nullable aUsername,
EMError *_Nullable aError))aCompletionBlock;
189- (
EMError *_Nullable )deleteContact:(NSString *_Nonnull)aUsername
190 isDeleteConversation:(BOOL)aIsDeleteConversation;
212- (void)deleteContact:(NSString *_Nonnull)aUsername
213 isDeleteConversation:(BOOL)aIsDeleteConversation
214 completion:(
void (^_Nullable )(NSString *_Nullable aUsername,
EMError *_Nullable aError))aCompletionBlock;
234- (void)approveFriendRequestFromUser:(NSString *_Nonnull)aUsername
235 completion:(
void (^_Nullable )(NSString *_Nullable aUsername,
EMError *_Nullable aError))aCompletionBlock;
255- (void)declineFriendRequestFromUser:(NSString *_Nonnull)aUsername
256 completion:(
void (^_Nullable )(NSString *aUsername,
EMError *_Nullable aError))aCompletionBlock;
259#pragma mark - Blacklist Operations
278- (void)getBlackListFromServerWithCompletion:(
void (^_Nullable )(NSArray<NSString *> *_Nullable aList,
EMError *_Nullable aError))aCompletionBlock;
308- (void)addUserToBlackList:(NSString *_Nonnull)aUsername
309 completion:(
void (^_Nullable)(NSString *_Nullable aUsername,
EMError *_Nullable aError))aCompletionBlock;
329- (void)saveBlackList:(NSArray<NSString *> *_Nonnull)aBlackList
330 completion:(
void (^_Nullable)(
EMError *_Nullable aError))aCompletionBlock;
350- (void)removeUserFromBlackList:(NSString *_Nonnull)aUsername
351 completion:(
void (^_Nullable )(NSString *_Nullable aUsername,
EMError *_Nullable aError))aCompletionBlock;
353#pragma mark - Other platform
373- (void)getSelfIdsOnOtherPlatformWithCompletion:(
void (^_Nullable)(NSArray<NSString *> *_Nullable aList,
EMError *_Nullable aError))aCompletionBlock;