You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
session-ios/Signal/src/contact/OWSContactsManager.h

38 lines
1.1 KiB
Objective-C

#import <Contacts/Contacts.h>
#import <Foundation/Foundation.h>
#import <SignalServiceKit/ContactsManagerProtocol.h>
#import <SignalServiceKit/PhoneNumber.h>
#import "CollapsingFutures.h"
#import "Contact.h"
#import "ObservableValue.h"
/**
Get latest Signal contacts, and be notified when they change.
*/
#define SIGNAL_LIST_UPDATED @"Signal_AB_UPDATED"
@interface OWSContactsManager : NSObject <ContactsManagerProtocol>
@property CNContactStore * _Nullable contactStore;
@property NSCache<NSString *, UIImage *> * _Nonnull avatarCache;
- (ObservableValue * _Nonnull)getObservableContacts;
- (NSArray * _Nonnull)getContactsFromAddressBook:(ABAddressBookRef _Nonnull)addressBook;
- (Contact * _Nullable)latestContactForPhoneNumber:(PhoneNumber * _Nullable)phoneNumber;
- (void)verifyABPermission;
- (NSArray<Contact *> * _Nonnull)allContacts;
- (NSArray<Contact *> * _Nonnull)signalContacts;
- (void)doAfterEnvironmentInitSetup;
- (NSString * _Nonnull)displayNameForPhoneIdentifier:(NSString * _Nullable)identifier;
- (UIImage * _Nullable)imageForPhoneIdentifier:(NSString * _Nullable)identifier;
+ (NSComparator _Nonnull)contactComparator;
@end