mirror of
https://github.com/oxen-io/session-ios.git
synced 2023-12-13 21:30:14 +01:00
ccb4a88742
git remote add ssk ../SignalServiceKit git remote update git merge -s ours --allow-unrelated-histories --no-commit ssk/master git read-tree --prefix=SignalServiceKit -u ssk/master git commit
63 lines
2 KiB
Objective-C
63 lines
2 KiB
Objective-C
//
|
|
// Copyright (c) 2017 Open Whisper Systems. All rights reserved.
|
|
//
|
|
|
|
#import <AddressBook/AddressBook.h>
|
|
#import <Foundation/Foundation.h>
|
|
|
|
NS_ASSUME_NONNULL_BEGIN
|
|
|
|
/**
|
|
*
|
|
* Contact represents relevant information related to a contact from the user's
|
|
* contact list.
|
|
*
|
|
*/
|
|
|
|
@class CNContact;
|
|
@class PhoneNumber;
|
|
@class UIImage;
|
|
@class SignalRecipient;
|
|
@class YapDatabaseReadTransaction;
|
|
|
|
@interface Contact : NSObject
|
|
|
|
@property (nullable, readonly, nonatomic) NSString *firstName;
|
|
@property (nullable, readonly, nonatomic) NSString *lastName;
|
|
@property (readonly, nonatomic) NSString *fullName;
|
|
@property (readonly, nonatomic) NSString *comparableNameFirstLast;
|
|
@property (readonly, nonatomic) NSString *comparableNameLastFirst;
|
|
@property (readonly, nonatomic) NSArray<PhoneNumber *> *parsedPhoneNumbers;
|
|
@property (readonly, nonatomic) NSArray<NSString *> *userTextPhoneNumbers;
|
|
@property (readonly, nonatomic) NSArray<NSString *> *emails;
|
|
@property (readonly, nonatomic) NSString *uniqueId;
|
|
#if TARGET_OS_IOS
|
|
@property (nullable, readonly, nonatomic) UIImage *image;
|
|
@property (readonly, nonatomic) ABRecordID recordID;
|
|
@property (nullable, nonatomic, readonly) CNContact *cnContact;
|
|
#endif // TARGET_OS_IOS
|
|
|
|
- (BOOL)isSignalContact;
|
|
- (NSArray<SignalRecipient *> *)signalRecipientsWithTransaction:(YapDatabaseReadTransaction *)transaction;
|
|
// TODO: Remove this method.
|
|
- (NSArray<NSString *> *)textSecureIdentifiers;
|
|
|
|
#if TARGET_OS_IOS
|
|
|
|
- (instancetype)initWithContactWithFirstName:(nullable NSString *)firstName
|
|
andLastName:(nullable NSString *)lastName
|
|
andUserTextPhoneNumbers:(NSArray<NSString *> *)phoneNumbers
|
|
andImage:(nullable UIImage *)image
|
|
andContactID:(ABRecordID)record;
|
|
|
|
- (instancetype)initWithSystemContact:(CNContact *)contact;
|
|
|
|
- (NSString *)nameForPhoneNumber:(NSString *)recipientId;
|
|
|
|
#endif // TARGET_OS_IOS
|
|
|
|
+ (NSComparator)comparatorSortingNamesByFirstThenLast:(BOOL)firstNameOrdering;
|
|
|
|
@end
|
|
|
|
NS_ASSUME_NONNULL_END
|