// // Generated by class-dump 3.5 (64 bit). // // class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2013 by Steve Nygard. // #pragma mark Blocks typedef void (^CDUnknownBlockType)(void); // return type and parameters are unknown #pragma mark Named Structures struct IMFileLocation_t { char *_field1; char *_field2; char *_field3; char *_field4; int _field5; }; typedef struct IMPreviewConstraints { CGFloat maxPxWidth; CGSize minThumbnailPxSize; CGFloat scale; BOOL isSticker; BOOL generateMetadata; } IMPreviewConstraints; extern IMPreviewConstraints IMPreviewConstraintsFromDictionary(NSDictionary *dictionary); extern NSDictionary *IMPreviewConstraintsDictionaryFromConstraint(IMPreviewConstraints constraint); extern BOOL IMPreviewConstraintsEqualToConstraints(IMPreviewConstraints constraints1, IMPreviewConstraints constraints2); extern IMPreviewConstraints IMPreviewConstraintsZero(void); struct _TidyDoc { int _field1; }; struct __va_list_tag { unsigned int _field1; unsigned int _field2; void *_field3; void *_field4; }; #pragma mark - // // File: Versions/A/IMSharedUtilities // UUID: 889CA3DD-770D-3AAB-85AE-7A6E5B8E4FAE // // Arch: x86_64 // Current version: 1.0.0 // Compatibility version: 1.0.0 // Source version: 1981.1.15.0.0 // // Objective-C Garbage Collection: Unsupported // @interface IMItem : NSObject { NSString *_handle; NSString *_service; NSString *_account; NSString *_unformattedID; NSString *_accountID; NSString *_roomName; NSDictionary *_senderInfo; NSString *_guid; NSDate *_time; NSString *_countryCode; long long _messageID; id _context; long long _type; NSString *_balloonBundleID; unsigned long long _sortID; NSString *_destinationCallerID; NSDate *_clientSendTime; NSString *_personCentric; long long _cloudKitSyncState; NSString *_cloudKitRecordID; NSData *_cloudKitServerChangeTokenBlob; NSString *_cloudKitRecordChangeTag; NSString *_parentChatID; long long _srCloudKitSyncState; NSString *_srCloudKitRecordID; NSString *_srCloudKitRecordChangeTag; } + (BOOL)supportsSecureCoding; + (Class)classForMessageItemDictionary:(id)arg1; + (Class)classForIMItemType:(long long)arg1; @property(copy, nonatomic) NSString *srCloudKitRecordChangeTag; // @synthesize srCloudKitRecordChangeTag=_srCloudKitRecordChangeTag; @property(copy, nonatomic) NSString *srCloudKitRecordID; // @synthesize srCloudKitRecordID=_srCloudKitRecordID; @property(nonatomic) long long srCloudKitSyncState; // @synthesize srCloudKitSyncState=_srCloudKitSyncState; @property(copy, nonatomic) NSString *parentChatID; // @synthesize parentChatID=_parentChatID; @property(copy, nonatomic) NSString *cloudKitRecordChangeTag; // @synthesize cloudKitRecordChangeTag=_cloudKitRecordChangeTag; @property(copy, nonatomic) NSData *cloudKitServerChangeTokenBlob; // @synthesize cloudKitServerChangeTokenBlob=_cloudKitServerChangeTokenBlob; @property(copy, nonatomic) NSString *cloudKitRecordID; // @synthesize cloudKitRecordID=_cloudKitRecordID; @property(nonatomic) long long cloudKitSyncState; // @synthesize cloudKitSyncState=_cloudKitSyncState; @property(retain, nonatomic) NSString *personCentric; // @synthesize personCentric=_personCentric; @property(retain, nonatomic) NSDate *clientSendTime; // @synthesize clientSendTime=_clientSendTime; @property(retain, nonatomic) NSString *destinationCallerID; // @synthesize destinationCallerID=_destinationCallerID; @property(nonatomic) unsigned long long sortID; // @synthesize sortID=_sortID; @property(retain, nonatomic) NSString *balloonBundleID; // @synthesize balloonBundleID=_balloonBundleID; @property(nonatomic) long long type; // @synthesize type=_type; @property(retain, nonatomic) id context; // @synthesize context=_context; @property(nonatomic, setter=_setMessageID:) long long messageID; // @synthesize messageID=_messageID; @property(retain, nonatomic) NSString *countryCode; // @synthesize countryCode=_countryCode; @property(retain, nonatomic) NSDate *time; // @synthesize time=_time; @property(retain, nonatomic) NSString *guid; // @synthesize guid=_guid; @property(retain, nonatomic) NSDictionary *senderInfo; // @synthesize senderInfo=_senderInfo; @property(retain, nonatomic) NSString *roomName; // @synthesize roomName=_roomName; @property(retain, nonatomic) NSString *accountID; // @synthesize accountID=_accountID; @property(retain, nonatomic) NSString *unformattedID; // @synthesize unformattedID=_unformattedID; @property(retain, nonatomic) NSString *account; // @synthesize account=_account; @property(retain, nonatomic) NSString *service; // @synthesize service=_service; @property(retain, nonatomic) NSString *handle; // @synthesize handle=_handle; @property(readonly, nonatomic) BOOL isLastMessageCandidate; @property(readonly, nonatomic) BOOL isFirstMessageCandidate; - (unsigned long long)hash; - (BOOL)isOlderThanItem:(id)arg1; - (BOOL)isEqual:(id)arg1; @property(retain, nonatomic) NSString *personCentricID; @property(retain, nonatomic) NSString *sender; @property(readonly, nonatomic) BOOL isFromMe; - (id)dictionaryRepresentation; - (id)copyDictionaryRepresentation; - (id)initWithIMRemoteObjectSerializedDictionary:(id)arg1; - (void)encodeWithIMRemoteObjectSerializedDictionary:(id)arg1; - (void)encodeWithCoder:(id)arg1; - (id)initWithCoder:(id)arg1; - (id)copyWithZone:(struct _NSZone *)arg1; - (void)dealloc; - (id)initWithSenderInfo:(id)arg1 time:(id)arg2 guid:(id)arg3 messageID:(long long)arg4 account:(id)arg5 accountID:(id)arg6 service:(id)arg7 handle:(id)arg8 roomName:(id)arg9 unformattedID:(id)arg10 countryCode:(id)arg11 type:(long long)arg12; - (id)initWithSender:(id)arg1 time:(id)arg2 guid:(id)arg3 type:(long long)arg4; - (id)initWithDictionary:(id)arg1; - (id)description; - (struct _NSRange)associatedMessageRange; - (BOOL)isSticker; - (BOOL)isMessageEdit; - (BOOL)isBreadcrumb; - (BOOL)isMessageAcknowledgment; - (long long)associatedMessageType; - (id)associatedMessageGUID; - (BOOL)isAssociatedMessageItem; - (id)pluginSessionGUID; - (id)consumedSessionPayloads; @end @protocol IMEventListenerResponse @property(readonly, nonatomic) NSError *error; @property(readonly, nonatomic) NSDictionary *userInfo; @property(readonly, nonatomic, getter=didSucceed) BOOL success; @end @protocol IMKeyValueCollectionStorage - (void)removeObjectForKey:(id)arg1; - (id)objectForKey:(id)arg1; - (void)setObject:(id)arg1 forKey:(id)arg2; @end extern NSURL* IMAttachmentPreviewFileURL(NSURL *attachmentURL, NSString *extension, BOOL generateIntermediaryDirectories); @protocol IMPreviewGeneratorProtocol + (BOOL)shouldShadePreview; + (BOOL)shouldScaleUpPreview; + (BOOL)writesToDisk; + (double)maxUpScale; + (NSString *)previewExtension; + (NSURL *)generateAndPersistPreviewFromSourceURL:(NSURL *)arg1 withPreviewConstraints:(struct IMPreviewConstraints)arg2 error:(id *)arg3; + (struct CGImage *)newPreviewFromSourceURL:(NSURL *)arg1 withPreviewConstraints:(struct IMPreviewConstraints)arg2 error:(id *)arg3; @end @protocol IMRemoteObjectCoding - (id)initWithIMRemoteObjectSerializedDictionary:(NSDictionary *)arg1; - (void)encodeWithIMRemoteObjectSerializedDictionary:(NSMutableDictionary *)arg1; @end @protocol IMSingletonOverriding @optional - (BOOL)shouldInvokeSelector:(SEL)arg1 onSingleton:(id)arg2; - (void)didOverrideSingleton:(id)arg1; @end @protocol IMUTITypeInformation + (NSArray *)UTITypes; @end @interface IMTUConversationItem : IMItem { unsigned long long _flags; } @property(nonatomic) unsigned long long flags; // @synthesize flags=_flags; - (BOOL)isFromMe; - (id)conversationUUID; - (id)copyDictionaryRepresentation; - (void)encodeWithCoder:(id)arg1; - (id)initWithDictionary:(id)arg1; - (id)initWithCoder:(id)arg1; @end @interface IMMessageItem : IMItem { BOOL _blockingRichLinks; BOOL _updatingDataSourcePayload; BOOL _backwardsCompatibleVersion; BOOL _isSOS; unsigned int _error; NSString *_subject; NSString *_plainBody; NSArray *_fileTransferGUIDs; unsigned long long _flags; NSAttributedString *_body; NSData *_bodyData; long long _replaceID; NSDate *_timeRead; NSDate *_timeDelivered; NSDate *_timePlayed; long long _expireState; NSData *_payloadData; NSData *_contactsAvatarRecipeData; NSString *_expressiveSendStyleID; NSDate *_timeExpressiveSendPlayed; NSData *_typingIndicatorIcon; NSDictionary *_messageSummaryInfo; NSDictionary *_bizIntent; NSString *_locale; NSString *_notificationIDSTokenURI; } + (BOOL)messageContainsSurfDD:(id)arg1; + (BOOL)supportsSecureCoding; @property(nonatomic) BOOL isSOS; // @synthesize isSOS=_isSOS; @property(nonatomic) BOOL backwardsCompatibleVersion; // @synthesize backwardsCompatibleVersion=_backwardsCompatibleVersion; @property(nonatomic, getter=isUpdatingDataSourcePayload) BOOL updatingDataSourcePayload; // @synthesize updatingDataSourcePayload=_updatingDataSourcePayload; @property(retain, nonatomic) NSString *notificationIDSTokenURI; // @synthesize notificationIDSTokenURI=_notificationIDSTokenURI; @property(nonatomic) BOOL blockingRichLinks; // @synthesize blockingRichLinks=_blockingRichLinks; @property(retain, nonatomic) NSString *locale; // @synthesize locale=_locale; @property(retain, nonatomic) NSDictionary *bizIntent; // @synthesize bizIntent=_bizIntent; @property(retain, nonatomic) NSDictionary *messageSummaryInfo; // @synthesize messageSummaryInfo=_messageSummaryInfo; @property(retain, nonatomic) NSData *typingIndicatorIcon; // @synthesize typingIndicatorIcon=_typingIndicatorIcon; @property(retain, nonatomic) NSDate *timeExpressiveSendPlayed; // @synthesize timeExpressiveSendPlayed=_timeExpressiveSendPlayed; @property(retain, nonatomic) NSString *expressiveSendStyleID; // @synthesize expressiveSendStyleID=_expressiveSendStyleID; @property(retain, nonatomic) NSData *contactsAvatarRecipeData; // @synthesize contactsAvatarRecipeData=_contactsAvatarRecipeData; @property(retain, nonatomic) NSData *payloadData; // @synthesize payloadData=_payloadData; @property(nonatomic) long long expireState; // @synthesize expireState=_expireState; @property(retain, nonatomic) NSDate *timePlayed; // @synthesize timePlayed=_timePlayed; @property(retain, nonatomic) NSDate *timeDelivered; // @synthesize timeDelivered=_timeDelivered; @property(retain, nonatomic) NSDate *timeRead; // @synthesize timeRead=_timeRead; @property(nonatomic) long long replaceID; // @synthesize replaceID=_replaceID; @property(retain, nonatomic) NSData *bodyData; // @synthesize bodyData=_bodyData; @property(nonatomic) unsigned long long flags; // @synthesize flags=_flags; @property(retain, nonatomic) NSArray *fileTransferGUIDs; // @synthesize fileTransferGUIDs=_fileTransferGUIDs; @property(nonatomic) unsigned int errorCode; // @synthesize errorCode=_error; @property(retain, nonatomic) NSString *plainBody; // @synthesize plainBody=_plainBody; @property(retain, nonatomic) NSString *subject; // @synthesize subject=_subject; - (id)_localizedBackwardsCompatibleExpressiveSendText; - (BOOL)isLastMessageCandidate; - (BOOL)isFirstMessageCandidate; - (id)description; @property(readonly, copy, nonatomic) NSAttributedString *breadcrumbText; - (BOOL)isEqual:(id)arg1; @property(retain, nonatomic) NSAttributedString *body; // @synthesize body=_body; - (void)_clearBodyData; - (void)_regenerateBodyData; - (void)_regenerateBodyText; - (void)_generateBodyTextIfNeeded; - (void)_generateBodyDataIfNeeded; - (void)adjustIsEmptyFlag; - (void)_updateFlags:(unsigned long long)arg1; - (void)setWasDataDetected:(BOOL)arg1; @property(readonly, nonatomic) BOOL wasDataDetected; @property(nonatomic) BOOL hasDataDetectorResults; @property(nonatomic) BOOL isCorrupt; @property(readonly, nonatomic) BOOL isFromExternalSource; @property(readonly, nonatomic) BOOL wasDowngraded; @property(readonly, nonatomic) BOOL isSent; @property(readonly, nonatomic) BOOL isEmote; @property(readonly, nonatomic) BOOL isLocatingMessage; @property(readonly, nonatomic) BOOL isTypingMessage; @property(readonly, nonatomic) BOOL isPrepared; @property(readonly, nonatomic) BOOL isDelivered; - (BOOL)isFromMe; @property(readonly, nonatomic) BOOL isPlayed; @property(readonly, nonatomic) BOOL isExpirable; @property(readonly, nonatomic) BOOL isAudioMessage; @property(readonly, nonatomic) BOOL isRead; @property(readonly, nonatomic) BOOL isEmpty; @property(readonly, nonatomic) BOOL isFinished; @property(readonly, nonatomic) BOOL isAlert; - (id)sender; - (void)dealloc; - (id)initWithSenderInfo:(id)arg1 time:(id)arg2 timeRead:(id)arg3 timeDelivered:(id)arg4 timePlayed:(id)arg5 subject:(id)arg6 body:(id)arg7 bodyData:(id)arg8 attributes:(id)arg9 fileTransferGUIDs:(id)arg10 flags:(unsigned long long)arg11 guid:(id)arg12 messageID:(long long)arg13 account:(id)arg14 accountID:(id)arg15 service:(id)arg16 handle:(id)arg17 roomName:(id)arg18 unformattedID:(id)arg19 countryCode:(id)arg20 expireState:(long long)arg21 balloonBundleID:(id)arg22 payloadData:(id)arg23 expressiveSendStyleID:(id)arg24 timeExpressiveSendPlayed:(id)arg25 bizIntent:(id)arg26 locale:(id)arg27 errorType:(unsigned int)arg28 type:(long long)arg29; - (id)initWithSenderInfo:(id)arg1 time:(id)arg2 timeRead:(id)arg3 timeDelivered:(id)arg4 timePlayed:(id)arg5 subject:(id)arg6 body:(id)arg7 bodyData:(id)arg8 attributes:(id)arg9 fileTransferGUIDs:(id)arg10 flags:(unsigned long long)arg11 guid:(id)arg12 messageID:(long long)arg13 account:(id)arg14 accountID:(id)arg15 service:(id)arg16 handle:(id)arg17 roomName:(id)arg18 unformattedID:(id)arg19 countryCode:(id)arg20 expireState:(long long)arg21 balloonBundleID:(id)arg22 payloadData:(id)arg23 expressiveSendStyleID:(id)arg24 timeExpressiveSendPlayed:(id)arg25 bizIntent:(id)arg26 locale:(id)arg27 errorType:(unsigned int)arg28; - (id)initWithSenderInfo:(id)arg1 time:(id)arg2 guid:(id)arg3 messageID:(long long)arg4 account:(id)arg5 accountID:(id)arg6 service:(id)arg7 handle:(id)arg8 roomName:(id)arg9 unformattedID:(id)arg10 countryCode:(id)arg11; - (id)initWithSender:(id)arg1 time:(id)arg2 guid:(id)arg3 type:(long long)arg4; - (id)initWithSender:(id)arg1 time:(id)arg2 body:(id)arg3 attributes:(id)arg4 fileTransferGUIDs:(id)arg5 flags:(unsigned long long)arg6 error:(id)arg7 guid:(id)arg8 type:(long long)arg9; - (id)initWithSender:(id)arg1 time:(id)arg2 body:(id)arg3 attributes:(id)arg4 fileTransferGUIDs:(id)arg5 flags:(unsigned long long)arg6 error:(id)arg7 guid:(id)arg8; - (id)copyDictionaryRepresentation; - (id)initWithDictionary:(id)arg1; - (id)initWithDictionary:(id)arg1 hint:(id)arg2; - (void)encodeWithCoder:(id)arg1; - (id)initWithCoder:(id)arg1; - (void)enumerateAttachmentGUIDsWithBlock:(CDUnknownBlockType)arg1; - (id)copyForBackwardsCompatibility; - (id)copyWithFlags:(unsigned long long)arg1; - (id)copyWithZone:(struct _NSZone *)arg1; @end @interface FZMessage : IMMessageItem { } + (BOOL)supportsSecureCoding; - (id)initWithIMRemoteObjectSerializedDictionary:(id)arg1; - (void)encodeWithIMRemoteObjectSerializedDictionary:(id)arg1; - (void)encodeWithCoder:(id)arg1; - (id)initWithCoder:(id)arg1; - (id)copyWithZone:(struct _NSZone *)arg1; @end @interface IMDeviceConditions : NSObject { } + (id)sharedInstance; @property(readonly) BOOL isDeviceCharging; - (id)_batteryStatus; @property(readonly) BOOL isDeviceOnWifi; @end @interface IMCoreAutomationNotifications : NSObject { long long _chatsWrittenCount; long long _messagesWrittenCount; long long _attachmentsWrittenCount; } + (id)sharedInstance; @property(readonly) long long attachmentsWrittenCount; // @synthesize attachmentsWrittenCount=_attachmentsWrittenCount; @property(readonly) long long messagesWrittenCount; // @synthesize messagesWrittenCount=_messagesWrittenCount; @property(readonly) long long chatsWrittenCount; // @synthesize chatsWrittenCount=_chatsWrittenCount; - (void)addNewMessagesSyncedCount:(long long)arg1; - (void)addNewAttachmentsSyncedCount:(long long)arg1; - (void)addNewChatsSyncedCount:(long long)arg1; - (void)postCoreAutomationNotificationFinishedTapToDownload:(id)arg1 downloadedFromCloudKitSuccessfully:(BOOL)arg2; - (void)postCoreAutomationNotificationFinishedPurgingAttachments:(id)arg1 withErrorString:(id)arg2; - (void)postCoreAutomationNotificationWithDictionary:(id)arg1 withVerboseLogging:(BOOL)arg2; - (void)postCoreAutomationNotificationWithAction:(id)arg1; - (void)postCoreAutomationNotificationFinishedPeriodicSyncNotificationWithStartTime:(id)arg1 chatsDidsync:(BOOL)arg2 messagesDidSync:(BOOL)arg3 attachmentsDidSync:(BOOL)arg4; - (void)clearSyncCounts; - (id)init; @end @interface IMEventNotificationManager : NSObject @property long long busyCount; // @synthesize busyCount=_busyCount; @property(readonly, nonatomic) NSMutableArray *registeredNotificationQueues; // @synthesize registeredNotificationQueues=_registeredNotificationQueues; //@property(readonly, nonatomic) IMEventListenerList *eventListeners; // @synthesize eventListeners=_eventListeners; @property double eventTimeout; // @synthesize eventTimeout=_eventTimeout; //@property(readonly, nonatomic) IMAutomaticEventNotificationQueue *notificationQueue; // @synthesize notificationQueue=_notificationQueue; - (void)appendNotificationForEventHandler:(id)arg1 sender:(id)arg2 eventNotificationBlock:(CDUnknownBlockType)arg3; - (void)pushNotificationForEventHandler:(id)arg1 sender:(id)arg2 eventNotificationBlock:(CDUnknownBlockType)arg3; - (void)appendNotificationForEventHandler:(id)arg1 eventNotificationBlock:(CDUnknownBlockType)arg2; - (void)pushNotificationForEventHandler:(id)arg1 eventNotificationBlock:(CDUnknownBlockType)arg2; - (void)pauseEventNotifications:(BOOL)arg1; - (void)cancelAllEventNotifications; - (void)cancelEventNotificationsForEventHandler:(id)arg1; - (id)createEventListenerForNotificationName:(id)arg1 object:(id)arg2; - (void)registerEventListener:(id)arg1; - (void)eventListenerDidFinish:(id)arg1; - (void)registerNotificationQueue:(id)arg1; - (void)eventNotificationQueue:(id)arg1 didChangeBusyState:(BOOL)arg2; @property(readonly, getter=isBusy) BOOL busy; - (void)dealloc; - (id)init; // Remaining properties @property(readonly, copy) NSString *debugDescription; @property(readonly, copy) NSString *description; @property(readonly) unsigned long long hash; @property(readonly) Class superclass; @end @interface IMStickerPack : NSObject { NSMutableSet *_stickers; struct NSString *_GUID; NSString *_name; NSURL *_displayAssetURL; NSURL *_fileURL; NSString *_appBundleIdentifier; NSString *_appVersion; } @property(copy, nonatomic) NSString *appVersion; // @synthesize appVersion=_appVersion; @property(copy, nonatomic) NSString *appBundleIdentifier; // @synthesize appBundleIdentifier=_appBundleIdentifier; @property(copy, nonatomic) NSURL *fileURL; // @synthesize fileURL=_fileURL; @property(copy, nonatomic) NSURL *displayAssetURL; // @synthesize displayAssetURL=_displayAssetURL; @property(copy, nonatomic) NSString *name; // @synthesize name=_name; @property(copy, nonatomic) NSString *GUID; // @synthesize GUID=_GUID; - (id)initWithStickerPackProperties:(id)arg1 stickerPackBundleURL:(id)arg2 appBundleIdentifier:(id)arg3 appVersion:(id)arg4; - (id)_generatePackGUIDWithPackID:(id)arg1 appBundleID:(id)arg2 appVersion:(id)arg3; - (id)description; - (id)initWithDictionary:(id)arg1; - (id)dictionaryRepresentation; - (void)addSticker:(id)arg1; - (void)dealloc; @property(readonly, nonatomic) NSSet *stickers; - (id)initWithGUID:(struct NSString *)arg1 name:(id)arg2 displayAssetURL:(id)arg3 fileURL:(id)arg4 appBundleIdentifier:(id)arg5 appVersion:(id)arg6; @end @interface IMPreviewGeneratorManager : NSObject { NSDictionary *_UTITypes; NSDictionary *_dynamicTypes; } + (id)previewGeneratorClasses; + (id)sharedInstance; @property(copy, nonatomic) NSDictionary *dynamicTypes; // @synthesize dynamicTypes=_dynamicTypes; @property(copy, nonatomic) NSDictionary *UTITypes; // @synthesize UTITypes=_UTITypes; - (void)dealloc; - (Class)_classForUTIType:(id)arg1; - (Class)_previewGeneratorClassForSourceURL:(id)arg1; - (BOOL)movePreviewToDiskCache:(id)arg1 previewURL:(id)arg2 error:(id *)arg3; - (BOOL)persistPreviewToDiskCache:(struct CGImage *)arg1 previewURL:(id)arg2 error:(id *)arg3; - (struct CGImage *)newPreviewFromSourceURL:(id)arg1 withPreviewConstraints:(struct IMPreviewConstraints)arg2 error:(id *)arg3; - (BOOL)generateAndPersistPreviewFromSourceURL:(id)arg1 previewURL:(id)arg2 previewConstraints:(struct IMPreviewConstraints)arg3 error:(id *)arg4; - (id)init; @end @interface IMDeviceUtilities : NSObject { } + (BOOL)IMDeviceIsGreenTea; + (BOOL)IMDeviceIsChinaRegion; + (BOOL)IMSupportsASTC; @end @interface IMRecentItem : NSObject { NSNumber *_timestamp; NSString *_GUID; NSURL *_fileURL; NSData *_payloadData; NSDictionary *_messageItemInfo; NSString *_accessibilityString; } @property(retain, nonatomic) NSString *accessibilityString; // @synthesize accessibilityString=_accessibilityString; @property(retain, nonatomic) NSDictionary *messageItemInfo; // @synthesize messageItemInfo=_messageItemInfo; @property(retain, nonatomic) NSNumber *timestamp; // @synthesize timestamp=_timestamp; @property(retain, nonatomic) NSData *payloadData; // @synthesize payloadData=_payloadData; @property(retain, nonatomic) NSURL *fileURL; // @synthesize fileURL=_fileURL; @property(copy, nonatomic) NSString *GUID; // @synthesize GUID=_GUID; - (id)asJSONObject; - (unsigned long long)hash; - (BOOL)isEqual:(id)arg1; - (id)initWithGUID:(id)arg1 data:(id)arg2 messageItemInfo:(id)arg3; - (void)dealloc; @end @interface IMRecentItemsList : NSObject { NSObject *_diskWritingQueue; } + (id)sharedInstance; - (id)_guidForFileURL:(id)arg1; - (void)_updateRecentsCache:(id)arg1 forDomain:(id)arg2; - (id)_recentsCacheForDomain:(id)arg1; - (id)_buildLRUCacheUsingArray:(id)arg1 forDomain:(id)arg2; - (void)_removeRecentDataPayloadEntryFromDisk:(id)arg1 forDomain:(id)arg2; - (void)_saveRecentDataPayloadEntryToDisk:(id)arg1 forDomain:(id)arg2; - (void)_removeRecentDataPayloadEntry:(id)arg1 forDomain:(id)arg2; - (void)addRecentItemAtFileURL:(id)arg1 GUID:(id)arg2 infoDictionary:(id)arg3 forDomain:(id)arg4; - (void)_addRecentDataPayloadEntry:(id)arg1 toDomain:(id)arg2; - (void)fetchRecentItemsForDomain:(id)arg1 completion:(CDUnknownBlockType)arg2; - (void)fetchRecentStickersWithCompletion:(CDUnknownBlockType)arg1; - (void)addRecentItemWithData:(id)arg1 GUID:(id)arg2 infoDictionary:(id)arg3 forDomain:(id)arg4; - (void)deleteRecentsInFirstLaunch; - (void)deleteAllRecentItemsForDomain:(id)arg1; - (void)deleteRecentItemWithData:(id)arg1 GUID:(id)arg2 forDomain:(id)arg3; - (void)deleteRecentItemWithFileURL:(id)arg1 GUID:(id)arg2 forDomain:(id)arg3; - (void)dispatchCacheUpdateWithBlock:(CDUnknownBlockType)arg1; - (long long)cacheSizeForDomain:(id)arg1; - (void)dealloc; - (id)init; @end @interface IMTranscoderTelemetry : NSObject { unsigned char _signpostId; } - (void)emitSignpostTranscodeSkipSourceUTI:(id)arg1; - (void)emitSignpostTranscodeFinalForDestinationUTI:(id)arg1; - (void)emitSignpostTranscodeStepForDestinationUTI:(id)arg1; - (void)emitSignpostNoTranscodeFromUTI:(id)arg1; - (void)_emitSignpostTranscodeRange:(long long)arg1 begin:(BOOL)arg2; - (void)_emitSignpostPreviewGenerationRange:(long long)arg1 begin:(BOOL)arg2; - (void)emitPreviewGenerationEndFromUTI:(id)arg1; - (void)emitPreviewGenerationBeginFromUTI:(id)arg1; - (void)emitTranscodeEndFromUTI:(id)arg1; - (void)emitTranscodeBeginFromUTI:(id)arg1; - (long long)_telemetryImageTypeForUTI:(id)arg1; - (id)init; @end @interface IMLocationShareStatusChangeItem : IMItem { BOOL _actionable; BOOL _expired; long long _status; NSString *_otherCountryCode; NSString *_otherHandle; NSString *_otherUnformattedID; long long _direction; } + (BOOL)supportsSecureCoding; @property(nonatomic) long long direction; // @synthesize direction=_direction; @property(retain, nonatomic) NSString *otherUnformattedID; // @synthesize otherUnformattedID=_otherUnformattedID; @property(retain, nonatomic) NSString *otherHandle; // @synthesize otherHandle=_otherHandle; @property(retain, nonatomic) NSString *otherCountryCode; // @synthesize otherCountryCode=_otherCountryCode; @property(nonatomic) BOOL expired; // @synthesize expired=_expired; @property(nonatomic) BOOL actionable; // @synthesize actionable=_actionable; @property(nonatomic) long long status; // @synthesize status=_status; - (BOOL)isLastMessageCandidate; - (id)copyDictionaryRepresentation; - (id)initWithDictionary:(id)arg1; - (BOOL)isEqual:(id)arg1; - (void)encodeWithCoder:(id)arg1; - (id)initWithCoder:(id)arg1; - (id)copyWithZone:(struct _NSZone *)arg1; - (void)dealloc; @end @interface IMGroupTitleChangeItem : IMItem { NSString *_title; NSString *_otherCountryCode; NSString *_otherHandle; NSString *_otherUnformattedID; } + (BOOL)supportsSecureCoding; @property(retain, nonatomic) NSString *otherUnformattedID; // @synthesize otherUnformattedID=_otherUnformattedID; @property(retain, nonatomic) NSString *otherHandle; // @synthesize otherHandle=_otherHandle; @property(retain, nonatomic) NSString *otherCountryCode; // @synthesize otherCountryCode=_otherCountryCode; @property(retain, nonatomic) NSString *title; // @synthesize title=_title; - (id)copyDictionaryRepresentation; - (id)initWithDictionary:(id)arg1; - (BOOL)isEqual:(id)arg1; - (void)encodeWithCoder:(id)arg1; - (id)initWithCoder:(id)arg1; - (id)copyWithZone:(struct _NSZone *)arg1; - (void)dealloc; @end @interface IMCTSMSUtilities : NSObject { } + (BOOL)IMMessagesFilteringSettingForPreferedSubscription; + (void)IMSynchronizePreferredSubscriptionMMSCapabilityToWatch; + (void)IMSynchronizeMMSCapabilityToWatch:(BOOL)arg1; + (BOOL)MMSRestrictedModeEnabledForPhoneNumber:(id)arg1 simID:(id)arg2 reset:(BOOL)arg3; + (BOOL)IMMMSRestrictedModeEnabledForPhoneNumber:(id)arg1 simID:(id)arg2; + (BOOL)IMMMSEagerUploadDisabledInCarrierBundleForPhoneNumber:(id)arg1 simID:(id)arg2; + (BOOL)IMIsEagerUploadEnabledForPhoneNumber:(id)arg1 simID:(id)arg2; + (BOOL)IMShouldShowMMSEmailAddress:(id)arg1 simID:(id)arg2; + (id)IMMMSEmailAddressToMatchForPhoneNumber:(id)arg1 simID:(id)arg2; + (unsigned long long)IMiMessageMaxTransferVideoFileSizeForWifiForPhoneNumber:(unsigned long long *)arg1 cellSize:(unsigned long long *)arg2 serverConfigurationBag:(id)arg3 phoneNumber:(id)arg4 simID:(id)arg5; + (unsigned long long)IMiMessageMaxTransferAudioFileSizeForWifiForPhoneNumber:(unsigned long long *)arg1 cellSize:(unsigned long long *)arg2 serverConfigurationBag:(id)arg3 phoneNumber:(id)arg4 simID:(id)arg5; + (void)IMiMessageMaxTransferFileSizeForWifiForPhoneNumber:(unsigned long long *)arg1 cellSize:(unsigned long long *)arg2 serverConfigurationBag:(id)arg3 phoneNumber:(id)arg4 simID:(id)arg5; + (double)IMMMSMaximumDurationWithPreset:(id)arg1 phoneNumber:(id)arg2 simID:(id)arg3; + (double)IMMMSMaximumVideoDurationForPhoneNumber:(id)arg1 simID:(id)arg2; + (double)IMMMSMaximumAudioDurationForPhoneNumber:(id)arg1 simID:(id)arg2; + (BOOL)IMMMSSupportsH264VideoForPhoneNumber:(id)arg1 simID:(id)arg2; + (int)IMMMSMaxImageDimensionForPhoneNumber:(id)arg1 simID:(id)arg2; + (int)IMMMSMaxRecipientsForPhoneNumber:(id)arg1 simID:(id)arg2; + (BOOL)IMMMSGroupTextOnlyMessagesSendAsMMSForPhoneNumber:(id)arg1 simID:(id)arg2; + (int)IMMMSMaximumMessageByteCountForPhoneNumber:(id)arg1 simID:(id)arg2; + (int)IMMMSMaximumSlideCountForPhoneNumber:(id)arg1 simID:(id)arg2; + (BOOL)IMMMSSupportedAndConfiguredForPhoneNumber:(id)arg1 simID:(id)arg2; + (unsigned long long)IMReadAttachmentPreviewTranscodingQualitySizeCarrierValueForPhoneNumber:(id)arg1 simID:(id)arg2; + (BOOL)IMReadEnablePreviewTranscodingQualityCarrierValueForPhoneNumber:(id)arg1 simID:(id)arg2; + (BOOL)IMMMSEnabledForPhoneNumber:(id)arg1 simID:(id)arg2; + (id)IMPhoneNumbersEnabledForMultipleSubscriptionDevice; + (BOOL)IMReadMMSUserOverrideForPhoneNumber:(id)arg1 simID:(id)arg2; + (id)IMUniqueIdentifierForPhoneNumber:(id)arg1 simID:(id)arg2; @end @interface IMEventNotificationQueue : NSObject { BOOL _paused; BOOL _scheduled; BOOL _busy; } //@property(readonly, nonatomic) IMDoubleLinkedList *eventNotificationList; // @synthesize eventNotificationList=_eventNotificationList; //@property __weak id delegate; // @synthesize delegate=_delegate; - (BOOL)containsNotificationTarget:(id)arg1; @property(readonly) long long count; @property(getter=isPaused) BOOL paused; // @synthesize paused=_paused; @property(readonly, getter=isScheduled) BOOL scheduled; // @synthesize scheduled=_scheduled; - (void)_didChangePausedState:(BOOL)arg1; - (void)pushEventTarget:(id)arg1 sender:(id)arg2 eventNotificationBlock:(CDUnknownBlockType)arg3; - (void)appendEventTarget:(id)arg1 sender:(id)arg2 eventNotificationBlock:(CDUnknownBlockType)arg3; - (void)pushEventTarget:(id)arg1 eventNotificationBlock:(CDUnknownBlockType)arg2; - (void)appendEventTarget:(id)arg1 eventNotificationBlock:(CDUnknownBlockType)arg2; - (void)cancelAllEventNotifications; - (void)cancelEventNotificationsForNotificationTarget:(id)arg1; - (void)_didCancelNotifications; - (void)appendEventNotification:(id)arg1; - (void)pushEventNotification:(id)arg1; - (void)_didAddNotification:(id)arg1; - (void)_processQueue; - (void)_invokeNotifications; - (void)enumerateObjectsUsingBlock:(CDUnknownBlockType)arg1; - (void)_willProcessQueue; - (void)_didProcessQueue; - (void)_setBusy:(BOOL)arg1; - (void)_didChangeBusyState:(BOOL)arg1; @property(readonly, getter=isBusy) BOOL busy; // @synthesize busy=_busy; - (void)_invokeEvent:(id)arg1; - (void)_scheduleIfNeeded:(BOOL)arg1; - (void)_dispatchProcessQueue; - (id)init; @end @interface IMAutomaticEventNotificationQueue : IMEventNotificationQueue { } - (void)_didCancelNotifications; - (void)_didAddNotification:(id)arg1; - (void)_didProcessQueue; - (void)_invokeEvent:(id)arg1; @end @interface IMEventNotificationBroadcaster : IMEventNotificationQueue { } - (void)broadcastEventToListeners:(CDUnknownBlockType)arg1; - (void)_didProcessQueue; - (void)_willProcessQueue; @end @interface IMEventNotification : NSObject // IMDoubleLinkedListNode { id _target; id _sender; CDUnknownBlockType _eventNotificationWithSenderBlock; CDUnknownBlockType _eventNotificationBlock; } + (id)eventNotification:(id)arg1; + (id)eventNotification:(id)arg1 sender:(id)arg2 eventNotificationBlock:(CDUnknownBlockType)arg3; + (id)eventNotification:(id)arg1 eventNotificationBlock:(CDUnknownBlockType)arg2; @property(copy) CDUnknownBlockType eventNotificationBlock; // @synthesize eventNotificationBlock=_eventNotificationBlock; @property(copy) CDUnknownBlockType eventNotificationWithSenderBlock; // @synthesize eventNotificationWithSenderBlock=_eventNotificationWithSenderBlock; @property __weak id sender; // @synthesize sender=_sender; @property __weak id target; // @synthesize target=_target; - (void)cache; - (BOOL)wasCancelled; - (void)cancel; - (BOOL)invoke; @end @interface IMParticipantChangeItem : IMItem { long long _changeType; NSString *_otherCountryCode; NSString *_otherHandle; NSString *_otherUnformattedID; } + (BOOL)supportsSecureCoding; @property(retain, nonatomic) NSString *otherUnformattedID; // @synthesize otherUnformattedID=_otherUnformattedID; @property(retain, nonatomic) NSString *otherHandle; // @synthesize otherHandle=_otherHandle; @property(retain, nonatomic) NSString *otherCountryCode; // @synthesize otherCountryCode=_otherCountryCode; @property(nonatomic) long long changeType; // @synthesize changeType=_changeType; - (BOOL)isEqual:(id)arg1; - (id)copyDictionaryRepresentation; - (id)initWithDictionary:(id)arg1; - (void)encodeWithCoder:(id)arg1; - (id)initWithCoder:(id)arg1; - (id)copyWithZone:(struct _NSZone *)arg1; - (void)dealloc; @end @interface IMKeyValueCollectionUserDefaultsStorage : NSObject { NSString *_domain; } @property(readonly, copy, nonatomic) NSString *domain; // @synthesize domain=_domain; @property(readonly, copy) NSString *description; - (id)copyWithZone:(struct _NSZone *)arg1; - (void)removeObjectForKey:(id)arg1; - (void)setObject:(id)arg1 forKey:(id)arg2; - (id)objectForKey:(id)arg1; - (void)_actuallyWriteObject:(id)arg1 forKey:(id)arg2; - (id)_actuallyReadObjectForKey:(id)arg1; - (id)_decodeData:(id)arg1 forKey:(id)arg2; - (id)initWithDomain:(id)arg1; - (id)init; // Remaining properties @property(readonly, copy) NSString *debugDescription; @property(readonly) Class superclass; @end @interface IMImageUtilities : NSObject { } + (struct CGImage *)newThumbnailForTargetSize:(struct CGSize)arg1 imageSize:(struct CGSize)arg2 imageSource:(struct CGImageSource *)arg3 atIndex:(unsigned long long)arg4 mode:(long long)arg5 scale:(double)arg6; + (struct CGImage *)newThumbnailForTargetSize:(struct CGSize)arg1 imageSize:(struct CGSize)arg2 imageSource:(struct CGImageSource *)arg3 mode:(long long)arg4 scale:(double)arg5; + (BOOL)persistCPBitmapWithImage:(struct CGImage *)arg1 url:(id)arg2; + (void)sampleImageEdges:(char *)arg1 usingRect:(struct CGRect)arg2 forMostlyWhitePixels:(unsigned long long *)arg3 otherPixels:(unsigned long long *)arg4 bytesPerRow:(long long)arg5; + (struct CGSize)imageRefPxSize:(struct CGImage *)arg1; + (struct CGSize)imageSourcePxSize:(struct CGImageSource *)arg1; @end @interface IMOneTimeCodeUtilities : NSObject { } - (id)createOTCFromMessageBody:(id)arg1 sender:(id)arg2 guid:(id)arg3; - (BOOL)isValidOneTimeCode:(id)arg1; @end @interface IMEventListenerResponse : NSObject { BOOL _success; NSDictionary *_userInfo; NSError *_error; } @property(retain, nonatomic) NSError *error; // @synthesize error=_error; @property(retain, nonatomic) NSDictionary *userInfo; // @synthesize userInfo=_userInfo; @property(nonatomic, getter=didSucceed) BOOL success; // @synthesize success=_success; @property(readonly, copy) NSString *description; - (id)initWithSuccess:(BOOL)arg1 userInfo:(id)arg2 error:(id)arg3; // Remaining properties @property(readonly, copy) NSString *debugDescription; @property(readonly) Class superclass; @end @interface IMEventListener : NSObject { BOOL _willRepeat; double _timerStart; NSObject *_semaphore; double _timeListeningStarted; double _timeListeningStopped; double _timeLastEventReceived; double _timeout; unsigned long long _eventCount; id _target; CDUnknownBlockType _completionBlock; CDUnknownBlockType _willInvokeCompletion; CDUnknownBlockType _didInvokeCompletion; } + (id)eventListenerWithNotificationName:(id)arg1 object:(id)arg2; + (id)eventListener; + (id)allListeners; + (id)_mutableListenerDictionary; @property(nonatomic) BOOL willRepeat; // @synthesize willRepeat=_willRepeat; @property(copy) CDUnknownBlockType didInvokeCompletion; // @synthesize didInvokeCompletion=_didInvokeCompletion; @property(copy) CDUnknownBlockType willInvokeCompletion; // @synthesize willInvokeCompletion=_willInvokeCompletion; @property __weak id target; // @synthesize target=_target; @property(readonly) unsigned long long eventCount; // @synthesize eventCount=_eventCount; @property(readonly, nonatomic) NSObject *semaphore; // @synthesize semaphore=_semaphore; @property(nonatomic) double timerStart; // @synthesize timerStart=_timerStart; - (void)_didReceiveEvent:(BOOL)arg1 userInfo:(id)arg2 error:(id)arg3; @property double timeout; // @synthesize timeout=_timeout; - (void)reset; @property(copy) CDUnknownBlockType completionBlock; // @synthesize completionBlock=_completionBlock; @property(readonly) double elapsedWaitingTime; @property(readonly) double timeLastEventReceived; // @synthesize timeLastEventReceived=_timeLastEventReceived; @property(readonly) double timeListeningStopped; // @synthesize timeListeningStopped=_timeListeningStopped; @property(readonly) double timeListeningStarted; // @synthesize timeListeningStarted=_timeListeningStarted; - (void)startListening; - (void)stopListening; @property(readonly, getter=isListening) BOOL listening; - (void)startListeningForEventTarget:(id)arg1 completion:(CDUnknownBlockType)arg2; - (void)startListeningForEventTarget:(id)arg1 sendStartingEvent:(CDUnknownBlockType)arg2 completion:(CDUnknownBlockType)arg3; - (void)waitForCompletion; - (void)_dispatchStartEventBlock:(CDUnknownBlockType)arg1; - (void)_startTimeoutTimerIfNeeded; - (void)_reset; - (void)willReset; - (void)_cancelTimeoutTimer; - (void)_stopListening; - (void)willStopListening; - (void)_startListening; - (void)willStartListening; - (void)_handleTimeout:(id)arg1; - (void)_invokeCompletion:(BOOL)arg1 userInfo:(id)arg2 error:(id)arg3; - (id)createResult:(BOOL)arg1 userInfo:(id)arg2 error:(id)arg3; - (void)_addToListeners; - (void)_removeFromListeners; @end @interface IMNotificationCenterEventListener : IMEventListener { NSString *_registeredNotificationName; NSString *_notificationName; id _notificationObject; } + (id)eventListenerForNotificationName:(id)arg1 object:(id)arg2; + (id)eventListenerForNotificationName:(id)arg1; @property(readonly) __weak id notificationObject; // @synthesize notificationObject=_notificationObject; @property(readonly, copy) NSString *notificationName; // @synthesize notificationName=_notificationName; @property(readonly, nonatomic) NSString *registeredNotificationName; // @synthesize registeredNotificationName=_registeredNotificationName; - (void)willReset; - (void)willStopListening; - (void)willStartListening; - (BOOL)isListening; - (void)dealloc; - (void)registerForNotificationName:(id)arg1 object:(id)arg2; - (void)registerForNotificationName:(id)arg1; - (void)_notification:(id)arg1; @property(readonly) BOOL isRegisteredForNotification; @end @interface IMEventListenerReference : NSObject { IMEventListener *_eventListener; } @property(readonly, nonatomic) __weak IMEventListener *eventListener; // @synthesize eventListener=_eventListener; - (id)initWithEventListener:(id)arg1; @end @interface IMEventListenerList : NSObject { NSMutableArray *_eventListeners; } - (void)enumerateObjectsUsingBlock:(CDUnknownBlockType)arg1; - (BOOL)containsObject:(id)arg1; - (void)removeObject:(id)arg1; - (void)addObject:(id)arg1; - (unsigned long long)count; - (id)init; @end @interface IMSticker : NSObject { NSURL *_fileURL; struct NSString *_stickerGUID; struct NSString *_stickerPackGUID; NSString *_accessibilityLabel; NSString *_moodCategory; NSString *_stickerName; NSData *_recipe; NSString *_ballonBundleID; NSDictionary *_attributionInfo; } @property(copy, nonatomic) NSDictionary *attributionInfo; // @synthesize attributionInfo=_attributionInfo; @property(copy, nonatomic) NSString *ballonBundleID; // @synthesize ballonBundleID=_ballonBundleID; @property(retain, nonatomic) NSData *recipe; // @synthesize recipe=_recipe; @property(copy, nonatomic) NSString *stickerName; // @synthesize stickerName=_stickerName; @property(copy, nonatomic) NSString *moodCategory; // @synthesize moodCategory=_moodCategory; @property(copy, nonatomic) NSString *accessibilityLabel; // @synthesize accessibilityLabel=_accessibilityLabel; @property(readonly, copy, nonatomic) NSString *stickerPackGUID; // @synthesize stickerPackGUID=_stickerPackGUID; @property(readonly, copy, nonatomic) NSString *stickerGUID; // @synthesize stickerGUID=_stickerGUID; @property(readonly, copy, nonatomic) NSURL *fileURL; // @synthesize fileURL=_fileURL; - (id)initWithStickerPropertyDictionary:(id)arg1 stickerPackID:(struct NSString *)arg2 stickerPackBundlePath:(id)arg3; - (unsigned long long)hash; - (BOOL)isEqual:(id)arg1; - (void)dealloc; - (id)description; - (id)initWithStickerID:(struct NSString *)arg1 stickerPackID:(struct NSString *)arg2 fileURL:(id)arg3 accessibilityLabel:(id)arg4 moodCategory:(id)arg5 stickerName:(id)arg6; - (id)init; @end @interface IMMessageActionItem : IMItem { long long _actionType; NSString *_otherCountryCode; NSString *_otherHandle; NSString *_otherUnformattedID; NSString *_originalMessageGUID; } + (BOOL)supportsSecureCoding; @property(retain, nonatomic) NSString *originalMessageGUID; // @synthesize originalMessageGUID=_originalMessageGUID; @property(retain, nonatomic) NSString *otherUnformattedID; // @synthesize otherUnformattedID=_otherUnformattedID; @property(retain, nonatomic) NSString *otherHandle; // @synthesize otherHandle=_otherHandle; @property(retain, nonatomic) NSString *otherCountryCode; // @synthesize otherCountryCode=_otherCountryCode; @property(nonatomic) long long actionType; // @synthesize actionType=_actionType; - (BOOL)isEqual:(id)arg1; - (id)copyDictionaryRepresentation; - (id)initWithDictionary:(id)arg1; - (void)encodeWithCoder:(id)arg1; - (id)initWithCoder:(id)arg1; - (id)copyWithZone:(struct _NSZone *)arg1; - (id)description; - (void)dealloc; @end @interface IMXMLParserContext : NSObject { NSData *_inContentAsData; } @property(readonly, retain) NSData *inContentAsData; // @synthesize inContentAsData=_inContentAsData; @property(readonly, retain) NSArray *resultsForLogging; @property(readonly, retain) NSString *name; - (id)inContent; - (void)reset; - (void)dealloc; - (id)initWithContentAsData:(id)arg1; - (id)initWithContent:(id)arg1; @end @interface IMXMLParserFrame : NSObject { } - (void)parser:(id)arg1 context:(id)arg2 foundIgnorableWhitespace:(id)arg3; - (void)parser:(id)arg1 context:(id)arg2 foundCharacters:(id)arg3; - (void)parser:(id)arg1 context:(id)arg2 didEndElement:(id)arg3 namespaceURI:(id)arg4 qualifiedName:(id)arg5; - (void)parser:(id)arg1 context:(id)arg2 didStartElement:(id)arg3 namespaceURI:(id)arg4 qualifiedName:(id)arg5 attributes:(id)arg6; @end @interface IMSharedMessageSendingUtilities : NSObject { long long _serviceAvailability; } + (void)_setupAccountMonitor; + (id)sharedInstance; + (void)initialize; @property long long serviceAvailability; // @synthesize serviceAvailability=_serviceAvailability; - (BOOL)canSendPhotos:(int)arg1 videos:(int)arg2 audioClips:(int)arg3; - (long long)_maxMMSMessageByteCount; - (long long)_maxMMSAttachmentCount; - (BOOL)_isiMessageSupported; - (BOOL)isSupportedAttachmentUTI:(id)arg1; - (BOOL)isiMessageEnabled; - (BOOL)isMMSEnabled; - (BOOL)canSendText; - (id)_managedConfigAppWhitelist; - (void)_updateServiceAvailability; - (BOOL)_canSendText; - (BOOL)_hasSMSCapability; @end @interface IMXMLParser : NSObject { NSXMLParser *_parser; IMXMLParserContext *_context; IMXMLParserFrame *_topFrame; NSMutableArray *_otherFrames; struct _TidyDoc *_tidyDoc; struct __CFDictionary *_framespace; } + (id)sharedInstance; - (void)parser:(id)arg1 parseErrorOccurred:(id)arg2; - (void)parser:(id)arg1 foundIgnorableWhitespace:(id)arg2; - (void)parser:(id)arg1 foundCharacters:(id)arg2; - (void)parser:(id)arg1 didEndElement:(id)arg2 namespaceURI:(id)arg3 qualifiedName:(id)arg4; - (void)parser:(id)arg1 didStartElement:(id)arg2 namespaceURI:(id)arg3 qualifiedName:(id)arg4 attributes:(id)arg5; - (BOOL)parseContext:(id)arg1; - (id)_newDataByTidyingData:(id)arg1; - (void)_teardownTidy; - (void)_setupTidy; // Remaining properties @property(readonly, copy) NSString *debugDescription; @property(readonly, copy) NSString *description; @property(readonly) Class superclass; @end @interface IMToSuperParserContext : IMXMLParserContext { unsigned long long _underlineCount; unsigned long long _boldCount; unsigned long long _italicCount; unsigned long long _strikethroughCount; unsigned long long _messagePartNumber; NSMutableArray *_fontFamilyStack; NSMutableArray *_fontSizeStack; NSMutableArray *_linkStack; NSMutableArray *_backgroundColorStack; NSMutableArray *_foregroundColorStack; NSMutableDictionary *_currentAttributes; BOOL _didAddBodyAttributes; NSMutableAttributedString *_body; NSMutableArray *_fileTransferGUIDs; NSString *_backgroundColor; NSString *_foregroundColor; long long _baseWritingDirection; } @property long long baseWritingDirection; // @synthesize baseWritingDirection=_baseWritingDirection; @property(copy, nonatomic) NSString *foregroundColor; // @synthesize foregroundColor=_foregroundColor; @property(copy, nonatomic) NSString *backgroundColor; // @synthesize backgroundColor=_backgroundColor; @property(retain, nonatomic) NSArray *fileTransferGUIDs; // @synthesize fileTransferGUIDs=_fileTransferGUIDs; @property(readonly, nonatomic) NSAttributedString *body; - (void)appendBreadcrumbText:(id)arg1 withOptions:(unsigned int)arg2; - (void)appendInlineImageWithGUID:(id)arg1 filename:(id)arg2 width:(long long)arg3 height:(long long)arg4 emoji:(long long)arg5; - (void)appendInlineImageWithGUID:(id)arg1 filename:(id)arg2 width:(long long)arg3 height:(long long)arg4; - (void)appendFileTransferWithGUID:(id)arg1; - (void)appendString:(id)arg1; - (void)_incrementMessagePartNumber; - (void)popForegroundColor; - (void)pushForegroundColor:(id)arg1; - (void)popBackgroundColor; - (void)pushBackgroundColor:(id)arg1; - (void)popLink; - (void)pushLink:(id)arg1; - (void)popFontSize; - (void)pushFontSize:(id)arg1; - (void)popFontFamily; - (void)pushFontFamily:(id)arg1; - (void)_popValueFromStack:(id)arg1 attributeName:(id)arg2; - (void)_pushValue:(id)arg1 ontoStack:(id)arg2 attributeName:(id)arg3; - (void)decrementStrikethroughCount; - (void)incrementStrikethroughCount; - (void)decrementUnderlineCount; - (void)incrementUnderlineCount; - (void)decrementItalicCount; - (void)incrementItalicCount; - (void)decrementBoldCount; - (void)incrementBoldCount; - (void)_updateFontSize; - (void)_updateFontFamily; - (void)_clearIvars; - (void)_initIvars; - (id)resultsForLogging; - (id)name; - (void)reset; - (void)dealloc; @end @interface IMToSuperParserFrame : IMXMLParserFrame { } - (void)parser:(id)arg1 context:(id)arg2 foundIgnorableWhitespace:(id)arg3; - (void)parser:(id)arg1 context:(id)arg2 foundCharacters:(id)arg3; - (void)parser:(id)arg1 context:(id)arg2 didEndElement:(id)arg3 namespaceURI:(id)arg4 qualifiedName:(id)arg5; - (void)parser:(id)arg1 context:(id)arg2 didStartElement:(id)arg3 namespaceURI:(id)arg4 qualifiedName:(id)arg5 attributes:(id)arg6; @end @interface IMMessageNotificationTimer : NSObject { NSDate *_date; NSNumber *_numberDingsLeft; } @property(readonly, nonatomic) NSNumber *numberDingsLeft; // @synthesize numberDingsLeft=_numberDingsLeft; @property(retain, nonatomic) NSDate *date; // @synthesize date=_date; - (void)reduceNumberDingsLeft; @property(readonly, nonatomic) BOOL areDingsRemaining; - (void)dealloc; - (id)initWithDate:(id)arg1; @end @interface IMMessageNotificationTimeManager : NSObject { NSMutableDictionary *_chatsStartTimeDictionary; NSString *_latestIDSTokenURI; } + (id)sharedInstance; @property(retain, nonatomic) NSString *latestIDSTokenURI; // @synthesize latestIDSTokenURI=_latestIDSTokenURI; @property(retain, nonatomic) NSMutableDictionary *chatsStartTimeDictionary; // @synthesize chatsStartTimeDictionary=_chatsStartTimeDictionary; - (void)acquireAssertionToUnsuspendProcess; - (void)sendNotificationMessageIfNeededForIncomingMessageFromChatIdentifier:(id)arg1; - (void)setLatestNotificationIDSTokenURI:(id)arg1; - (BOOL)_shouldSendNotificationForChatIdentifier:(id)arg1; - (long long)_getToneTimeWindow; - (long long)_getTimeWindowOverride; - (BOOL)_isToneToggleSwitchOn; - (void)setDate:(id)arg1 forChatIdentifier:(id)arg2; - (void)tearDownSessionForChatIdentifier:(id)arg1; - (void)dealloc; - (id)init; @end @interface IMPreviewGenerator : NSObject { } + (struct CGRect)_scaledTargetRectForSize:(struct CGSize)arg1 andThumbnailSize:(struct CGSize)arg2; + (double)_scaleFactorForThumbnailWithSize:(struct CGSize)arg1 constraints:(struct IMPreviewConstraints)arg2 targetPxSize:(struct CGSize)arg3; + (struct CGImage *)newCroppedAndRescaledImageFromImage:(struct CGImage *)arg1 constraints:(struct IMPreviewConstraints)arg2 targetPxSize:(struct CGSize)arg3; + (id)generateAndPersistPreviewFromSourceURL:(id)arg1 withPreviewConstraints:(struct IMPreviewConstraints)arg2 error:(id *)arg3; + (struct CGImage *)newPreviewFromSourceURL:(id)arg1 withPreviewConstraints:(struct IMPreviewConstraints)arg2 error:(id *)arg3; + (double)maxUpScale; + (BOOL)shouldShadePreview; + (BOOL)shouldScaleUpPreview; + (BOOL)writesToDisk; + (id)previewExtension; + (id)UTITypes; @end @interface IMGroupBlacklistManager : NSObject { NSDate *_lastModifiedDate; } + (id)sharedInstance; + (id)groupsBlacklistFilename; @property(retain) NSDate *lastModifiedDate; // @synthesize lastModifiedDate=_lastModifiedDate; - (void)reloadIfNeeded; - (void)_updateLastModifiedDate:(id)arg1; - (void)loadFromFile:(id)arg1; - (void)loadData; - (void)save; - (BOOL)isFeatureDisabled; - (BOOL)isGroupInBlacklist:(id)arg1; - (void)blacklistGroupId:(id)arg1; - (BOOL)hasFileChanged; - (id)initFromFile:(id)arg1; - (id)init; @end @interface IMAttributedStringParserContext : NSObject { NSAttributedString *_inString; } @property(readonly, retain) NSAttributedString *inString; // @synthesize inString=_inString; - (id)parser:(id)arg1 preprocessedAttributesForAttributes:(id)arg2 range:(struct _NSRange)arg3; @property(readonly) BOOL shouldPreprocess; - (void)parserDidEnd:(id)arg1; - (void)parser:(id)arg1 foundAttributes:(id)arg2 inRange:(struct _NSRange)arg3; - (void)parserDidStart:(id)arg1; @property(readonly, retain) NSArray *resultsForLogging; @property(readonly, retain) NSString *name; - (void)dealloc; - (id)initWithAttributedString:(id)arg1; @end @interface IMAttributedStringParser : NSObject { IMAttributedStringParserContext *_context; } + (id)sharedInstance; - (void)parseContext:(id)arg1; - (void)_preprocessWithContext:(id)arg1 string:(id *)arg2; @end @interface IMAssociatedMessageItem : IMMessageItem { NSString *_associatedMessageGUID; long long _associatedMessageType; NSArray *_consumedSessionPayloads; struct _NSRange _associatedMessageRange; } + (BOOL)supportsSecureCoding; @property(retain, nonatomic) NSArray *consumedSessionPayloads; // @synthesize consumedSessionPayloads=_consumedSessionPayloads; @property(nonatomic) struct _NSRange associatedMessageRange; // @synthesize associatedMessageRange=_associatedMessageRange; @property(nonatomic) long long associatedMessageType; // @synthesize associatedMessageType=_associatedMessageType; @property(retain, nonatomic) NSString *associatedMessageGUID; // @synthesize associatedMessageGUID=_associatedMessageGUID; - (BOOL)isEqual:(id)arg1; - (BOOL)isSticker; - (BOOL)isMessageEdit; - (BOOL)isBreadcrumb; - (BOOL)isMessageAcknowledgment; - (BOOL)isLastMessageCandidate; - (BOOL)isFirstMessageCandidate; - (BOOL)isAssociatedMessageItem; - (id)description; - (id)copyForBackwardsCompatibility; - (id)copyWithZone:(struct _NSZone *)arg1; - (id)copyDictionaryRepresentation; - (void)encodeWithCoder:(id)arg1; - (id)initWithCoder:(id)arg1; - (void)dealloc; - (id)initWithMessageItem:(id)arg1; - (id)initWithSenderInfo:(id)arg1 time:(id)arg2 timeRead:(id)arg3 timeDelivered:(id)arg4 timePlayed:(id)arg5 subject:(id)arg6 body:(id)arg7 bodyData:(id)arg8 attributes:(id)arg9 fileTransferGUIDs:(id)arg10 flags:(unsigned long long)arg11 guid:(id)arg12 messageID:(long long)arg13 account:(id)arg14 accountID:(id)arg15 service:(id)arg16 handle:(id)arg17 roomName:(id)arg18 unformattedID:(id)arg19 countryCode:(id)arg20 expireState:(long long)arg21 balloonBundleID:(id)arg22 payloadData:(id)arg23 expressiveSendStyleID:(id)arg24 timeExpressiveSendPlayed:(id)arg25 errorType:(unsigned int)arg26 associatedMessageGUID:(id)arg27 associatedMessageType:(long long)arg28 associatedMessageRange:(struct _NSRange)arg29 bizIntent:(id)arg30 locale:(id)arg31 messageSummaryInfo:(id)arg32; - (id)initWithSender:(id)arg1 time:(id)arg2 body:(id)arg3 attributes:(id)arg4 fileTransferGUIDs:(id)arg5 flags:(unsigned long long)arg6 error:(id)arg7 guid:(id)arg8 associatedMessageGUID:(id)arg9 associatedMessageType:(long long)arg10 associatedMessageRange:(struct _NSRange)arg11 messageSummaryInfo:(id)arg12; - (id)initWithDictionary:(id)arg1 hint:(id)arg2; @end @interface IMKeyValueCollectionDictionaryStorage : NSObject { NSMutableDictionary *_dictionary; } @property(readonly, copy) NSString *description; - (id)copyWithZone:(struct _NSZone *)arg1; - (void)removeObjectForKey:(id)arg1; - (void)setObject:(id)arg1 forKey:(id)arg2; - (id)objectForKey:(id)arg1; - (id)init; - (id)initWithDictionary:(id)arg1; @property(readonly, copy, nonatomic) NSDictionary *dictionary; // Remaining properties @property(readonly, copy) NSString *debugDescription; @property(readonly) Class superclass; @end @interface IMKeyValueCollection : NSObject { long long _batchCount; id _keyValueStorage; id /* */ _delegate; NSMutableDictionary *_recordedChanges; } @property(readonly) NSMutableDictionary *recordedChanges; // @synthesize recordedChanges=_recordedChanges; @property(nonatomic) __weak id delegate; // @synthesize delegate=_delegate; @property(readonly, nonatomic) id keyValueStorage; // @synthesize keyValueStorage=_keyValueStorage; @property(readonly, copy) NSString *description; - (void)setString:(id)arg1 forKey:(id)arg2; - (id)stringForKey:(id)arg1; - (id)stringForKey:(id)arg1 withDefault:(id)arg2; - (void)setDouble:(double)arg1 forKey:(id)arg2; - (double)doubleForKey:(id)arg1; - (double)doubleForKey:(id)arg1 withDefault:(double)arg2; - (void)setUint64:(long long)arg1 forKey:(id)arg2; - (unsigned long long)uint64ForKey:(id)arg1; - (unsigned long long)uint64ForKey:(id)arg1 withDefault:(unsigned long long)arg2; - (void)setInt64:(long long)arg1 forKey:(id)arg2; - (long long)int64ForKey:(id)arg1; - (long long)int64ForKey:(id)arg1 withDefault:(long long)arg2; - (void)setInteger:(long long)arg1 forKey:(id)arg2; - (long long)integerForKey:(id)arg1; - (long long)integerForKey:(id)arg1 withDefault:(long long)arg2; - (void)setBool:(BOOL)arg1 forKey:(id)arg2; - (BOOL)boolForKey:(id)arg1; - (BOOL)boolForKey:(id)arg1 withDefault:(BOOL)arg2; - (void)_commitBatchWrite; - (void)_startBatchWrite; - (void)removeObjectForKey:(id)arg1; - (void)setObject:(id)arg1 forKey:(id)arg2; - (void)_recordChange:(id)arg1 forKey:(id)arg2; - (void)_setObject:(id)arg1 forKey:(id)arg2; - (id)objectForKey:(id)arg1 withDefault:(id)arg2; - (id)objectForKey:(id)arg1; - (void)_broadcastIfNeeded; - (void)_notifyListeners; - (id)initWithKeyValueStorage:(id)arg1; - (id)copyWithZone:(struct _NSZone *)arg1; - (id)init; - (id)errorArrayForKey:(id)arg1; - (void)addErrorToArray:(id)arg1 forKey:(id)arg2; - (id)errorForKey:(id)arg1; - (void)setError:(id)arg1 forKey:(id)arg2; // Remaining properties @property(readonly, copy) NSString *debugDescription; @property(readonly) Class superclass; @end @interface IMBroadcastingKeyValueCollection : IMKeyValueCollection { } - (void)_notifyListeners; @end @interface IMAnimatedImagePreviewGenerator : IMPreviewGenerator { } + (BOOL)writesToDisk; + (id)generateAndPersistPreviewFromSourceURL:(id)arg1 withPreviewConstraints:(struct IMPreviewConstraints)arg2 error:(id *)arg3; + (id)UTITypes; @end @interface IMMessageNotificationController : NSObject /* */ { // IDSService *_messageNotificationControllerIDSService; } + (id)sharedInstance; // @property(retain, nonatomic) IDSService *messageNotificationControllerIDSService; // @synthesize messageNotificationControllerIDSService=_messageNotificationControllerIDSService; - (void)_sendNotificationMessageRequest:(id)arg1 toTokenURI:(id)arg2; - (void)sendNotificationMessageToTokenURI:(id)arg1 withCommmand:(long long)arg2; - (void)sendNotificationMessageToUniqueID:(id)arg1 withCommmand:(long long)arg2; - (void)service:(id)arg1 account:(id)arg2 identifier:(id)arg3 didSendWithSuccess:(BOOL)arg4 error:(id)arg5; - (void)service:(id)arg1 account:(id)arg2 incomingMessage:(id)arg3 fromID:(id)arg4 context:(id)arg5; - (void)_executeCommandFromMessageRequest:(id)arg1; - (void)_playTone; - (id)_copyIDSIdentifierOrDefault:(id)arg1; - (BOOL)audioAccessoryDeviceWithTokenURIExists:(id)arg1; - (id)_copyIDForDevice:(id)arg1; - (BOOL)_deviceIsAudioAccessory:(id)arg1; - (BOOL)_isCurrentDeviceAudioAccessory; - (void)dealloc; - (id)init; // Remaining properties @property(readonly, copy) NSString *debugDescription; @property(readonly, copy) NSString *description; @property(readonly) unsigned long long hash; @property(readonly) Class superclass; @end @interface IMUnarchiverDecoder : NSObject { } + (id)decodeEncodedDataSecurely:(id)arg1 ofClass:(Class)arg2 includesWhitelistedClasses:(id)arg3; + (id)_decodeEncodedData:(id)arg1 ofClass:(Class)arg2 includesWhitelistedClasses:(id)arg3; @end @interface IMXMLReparser : NSObject { NSXMLParser *_parser; NSMutableString *_output; // IMXMLReparserContext *_context; NSError *_error; unsigned long long _depth; } - (void)parser:(id)arg1 parseErrorOccurred:(id)arg2; - (void)parser:(id)arg1 foundCharacters:(id)arg2; - (void)parser:(id)arg1 didEndElement:(id)arg2 namespaceURI:(id)arg3 qualifiedName:(id)arg4; - (void)parser:(id)arg1 didStartElement:(id)arg2 namespaceURI:(id)arg3 qualifiedName:(id)arg4 attributes:(id)arg5; - (BOOL)parseWithContext:(id)arg1; // Remaining properties @property(readonly, copy) NSString *debugDescription; @property(readonly, copy) NSString *description; @property(readonly) Class superclass; @end @interface IMXMLReparserContext : NSObject { NSString *_inContent; NSString *_outContent; NSDictionary *_attributesToMerge; NSError *_error; NSArray *_attributesToPreserve; } @property(readonly, copy, nonatomic) NSString *outContent; // @synthesize outContent=_outContent; @property(readonly, retain, nonatomic) NSError *error; // @synthesize error=_error; @property(readonly, retain, nonatomic) NSDictionary *attributesToMerge; // @synthesize attributesToMerge=_attributesToMerge; @property(readonly, retain, nonatomic) NSArray *attributesToPreserve; // @synthesize attributesToPreserve=_attributesToPreserve; @property(readonly, retain) NSString *_inContent; // @synthesize _inContent; - (void)_setOutContent:(id)arg1 error:(id)arg2; - (void)dealloc; - (id)initWithContent:(id)arg1 attributesToPreserve:(id)arg2 attributesToMerge:(id)arg3; @end @interface IMImagePreviewGenerator : IMPreviewGenerator { } + (struct CGImage *)newThumbnailFillToSize:(struct CGSize)arg1 imagePxSize:(struct CGSize)arg2 imageSource:(struct CGImageSource *)arg3 scale:(double)arg4; + (struct CGImage *)newPreviewFromSourceURL:(id)arg1 withPreviewConstraints:(struct IMPreviewConstraints)arg2 error:(id *)arg3; + (id)UTITypes; + (id)fetchUTITypes; @end @interface IMAKAppleIDAuthenticationController : NSObject { } + (id)IMAKUserInfoChangedSecurityLevelKey; + (id)IMAKUserInfoChangedAltDSIDKey; + (id)IMAKUserInfoChangedNotification; @end @interface IMFileTransfer : NSObject { BOOL _isIncoming; BOOL _isDirectory; BOOL _shouldAttemptToResume; BOOL _wasRegisteredAsStandalone; BOOL _shouldForceArchive; BOOL _needsWrapper; BOOL _isAuxImage; BOOL _isAuxVideo; BOOL _isSticker; BOOL _hideAttachment; BOOL _isLocation; BOOL _isContact; BOOL _appMessageFallbackImage; unsigned short _hfsFlags; unsigned int _hfsType; unsigned int _hfsCreator; double _lastUpdatedInterval; double _lastAveragedInterval; unsigned long long _lastAveragedBytes; NSString *_guid; NSString *_messageGUID; NSDate *_startDate; NSDate *_createdDate; long long _transferState; NSString *_filename; NSURL *_transferDataURL; NSString *_utiType; NSString *_mimeType; NSString *_accountID; NSString *_otherPerson; unsigned long long _currentBytes; unsigned long long _totalBytes; unsigned long long _averageTransferRate; long long _error; NSString *_errorDescription; NSDictionary *_localUserInfo; NSString *_transferredFilename; NSDictionary *_transcoderUserInfo; NSDictionary *_AuxTranscoderUserInfo; NSDictionary *_stickerUserInfo; NSArray *_attachmentSendContexts; long long _cloudKitSyncState; NSData *_cloudKitServerChangeTokenBlob; NSString *_cloudKitRecordID; long long _srCloudKitSyncState; NSData *_srCloudKitServerChangeTokenBlob; NSString *_srCloudKitRecordID; NSURL *_localURL; NSURL *_temporaryHighQualityLocalURL; NSDictionary *_attributionInfo; NSString *_originalGUID; } + (id)guidByStrippingAuxPrefix:(id)arg1; + (id)AuxGUIDFromFileTransferGUID:(id)arg1; + (BOOL)_doesLocalURLRequireArchiving:(id)arg1; @property(retain, nonatomic) NSString *originalGUID; // @synthesize originalGUID=_originalGUID; @property(nonatomic) BOOL appMessageFallbackImage; // @synthesize appMessageFallbackImage=_appMessageFallbackImage; @property(retain, nonatomic) NSDictionary *attributionInfo; // @synthesize attributionInfo=_attributionInfo; @property(retain, nonatomic) NSURL *temporaryHighQualityLocalURL; // @synthesize temporaryHighQualityLocalURL=_temporaryHighQualityLocalURL; @property(retain, nonatomic, setter=_setLocalURL:) NSURL *localURL; // @synthesize localURL=_localURL; @property(retain, nonatomic) NSString *srCloudKitRecordID; // @synthesize srCloudKitRecordID=_srCloudKitRecordID; @property(retain, nonatomic) NSData *srCloudKitServerChangeTokenBlob; // @synthesize srCloudKitServerChangeTokenBlob=_srCloudKitServerChangeTokenBlob; @property(nonatomic) long long srCloudKitSyncState; // @synthesize srCloudKitSyncState=_srCloudKitSyncState; @property(retain, nonatomic) NSString *cloudKitRecordID; // @synthesize cloudKitRecordID=_cloudKitRecordID; @property(retain, nonatomic) NSData *cloudKitServerChangeTokenBlob; // @synthesize cloudKitServerChangeTokenBlob=_cloudKitServerChangeTokenBlob; @property(nonatomic) long long cloudKitSyncState; // @synthesize cloudKitSyncState=_cloudKitSyncState; @property(nonatomic) BOOL isContact; // @synthesize isContact=_isContact; @property(nonatomic) BOOL isLocation; // @synthesize isLocation=_isLocation; @property(retain, nonatomic) NSArray *attachmentSendContexts; // @synthesize attachmentSendContexts=_attachmentSendContexts; @property(nonatomic) BOOL hideAttachment; // @synthesize hideAttachment=_hideAttachment; @property(retain, nonatomic) NSDictionary *stickerUserInfo; // @synthesize stickerUserInfo=_stickerUserInfo; @property(nonatomic) BOOL isSticker; // @synthesize isSticker=_isSticker; @property(retain, nonatomic) NSDictionary *AuxTranscoderUserInfo; // @synthesize AuxTranscoderUserInfo=_AuxTranscoderUserInfo; @property(nonatomic) BOOL isAuxVideo; // @synthesize isAuxVideo=_isAuxVideo; @property(nonatomic) BOOL isAuxImage; // @synthesize isAuxImage=_isAuxImage; @property(retain, nonatomic) NSDictionary *transcoderUserInfo; // @synthesize transcoderUserInfo=_transcoderUserInfo; @property(retain, nonatomic) NSString *transferredFilename; // @synthesize transferredFilename=_transferredFilename; @property(nonatomic, setter=_setNeedsWrapper:) BOOL _needsWrapper; // @synthesize _needsWrapper; @property(retain, nonatomic) NSDictionary *userInfo; // @synthesize userInfo=_localUserInfo; @property(nonatomic, setter=_setForceArchive:) BOOL shouldForceArchive; // @synthesize shouldForceArchive=_shouldForceArchive; @property(nonatomic, setter=setRegisteredAsStandalone:) BOOL wasRegisteredAsStandalone; // @synthesize wasRegisteredAsStandalone=_wasRegisteredAsStandalone; @property(retain, nonatomic, setter=_setErrorDescription:) NSString *errorDescription; // @synthesize errorDescription=_errorDescription; @property(nonatomic, setter=_setError:) long long error; // @synthesize error=_error; @property(nonatomic) BOOL shouldAttemptToResume; // @synthesize shouldAttemptToResume=_shouldAttemptToResume; @property(nonatomic) BOOL isDirectory; // @synthesize isDirectory=_isDirectory; @property(nonatomic) unsigned long long averageTransferRate; // @synthesize averageTransferRate=_averageTransferRate; @property(nonatomic) unsigned long long totalBytes; // @synthesize totalBytes=_totalBytes; @property(nonatomic) unsigned long long currentBytes; // @synthesize currentBytes=_currentBytes; @property(retain, nonatomic) NSString *otherPerson; // @synthesize otherPerson=_otherPerson; @property(retain, nonatomic) NSString *accountID; // @synthesize accountID=_accountID; @property(nonatomic) unsigned int hfsCreator; // @synthesize hfsCreator=_hfsCreator; @property(nonatomic) unsigned short hfsFlags; // @synthesize hfsFlags=_hfsFlags; @property(nonatomic) unsigned int hfsType; // @synthesize hfsType=_hfsType; @property(retain, nonatomic) NSString *type; // @synthesize type=_utiType; @property(retain, nonatomic, setter=_setTransferDataURL:) NSURL *transferDataURL; // @synthesize transferDataURL=_transferDataURL; @property(retain, nonatomic) NSString *filename; // @synthesize filename=_filename; @property(nonatomic) BOOL isIncoming; // @synthesize isIncoming=_isIncoming; @property(nonatomic, setter=_setTransferState:) long long transferState; // @synthesize transferState=_transferState; @property(retain, nonatomic) NSDate *createdDate; // @synthesize createdDate=_createdDate; @property(retain, nonatomic, setter=_setStartDate:) NSDate *startDate; // @synthesize startDate=_startDate; @property(retain, nonatomic) NSString *messageGUID; // @synthesize messageGUID=_messageGUID; @property(retain, nonatomic) NSString *guid; // @synthesize guid=_guid; @property(readonly, nonatomic) unsigned long long _lastAveragedBytes; // @synthesize _lastAveragedBytes; @property(nonatomic, setter=_setLastAveragedInterval:) double _lastAveragedInterval; // @synthesize _lastAveragedInterval; @property(nonatomic, setter=_setLastUpdatedInterval:) double _lastUpdatedInterval; // @synthesize _lastUpdatedInterval; - (id)_auxVideoPathIfItExists; - (id)description; @property(readonly, retain, nonatomic) NSString *mimeType; // @synthesize mimeType=_mimeType; @property(retain, nonatomic, setter=_setLocalPath:) NSString *localPath; @property(readonly, retain, nonatomic) NSString *permanentHighQualityLocalPath; @property(readonly, retain, nonatomic) NSString *temporaryHighQualityLocalPath; @property(readonly, nonatomic) BOOL isOpusAudioMessage; @property(readonly, nonatomic) BOOL isAutoloopVideo; @property(readonly, nonatomic) BOOL isRecipeBasedSticker; @property(readonly, nonatomic) BOOL existsAtLocalPath; @property(readonly, retain, nonatomic) NSString *displayName; @property(readonly, nonatomic) BOOL isFinished; @property(readonly, nonatomic) BOOL canBeAccepted; - (void)_calculateTypeInformation; - (id)_dictionaryRepresentation; - (BOOL)_updateWithDictionaryRepresentation:(id)arg1; - (void)_clear; - (void)_setDirectory:(BOOL)arg1 hfsType:(unsigned int)arg2 hfsCreator:(unsigned int)arg3 hfsFlags:(unsigned short)arg4; - (void)_setAveragedTransferRate:(unsigned long long)arg1 lastAveragedInterval:(double)arg2 lastAveragedBytes:(unsigned long long)arg3; - (void)_setCurrentBytes:(unsigned long long)arg1 totalBytes:(unsigned long long)arg2; - (void)_setAccount:(id)arg1 otherPerson:(id)arg2; - (id)_initWithGUID:(id)arg1 filename:(id)arg2 isDirectory:(BOOL)arg3 localURL:(id)arg4 account:(id)arg5 otherPerson:(id)arg6 totalBytes:(unsigned long long)arg7 hfsType:(unsigned int)arg8 hfsCreator:(unsigned int)arg9 hfsFlags:(unsigned short)arg10 isIncoming:(BOOL)arg11; - (id)init; - (void)dealloc; @end @interface NSArray (IMIDSUtilities) - (id)__im_canonicalIDSIDsFromAddresses; @end @interface NSDate (IMCoreAdditions) + (BOOL)useCourierTime; + (id)__im_dateWithCurrentServerTime; + (id)__im_dateWithNanosecondTimeIntervalSinceReferenceDate:(long long)arg1; - (long long)minutesDifferenceFromDate:(id)arg1; - (long long)hoursDifferenceFromDate:(id)arg1; - (long long)differenceFromDate:(id)arg1; - (BOOL)isToday; - (long long)__im_nanosecondTimeInterval; @end @interface NSObject (IMTesting) - (void)__im_performAsynchronousTest:(CDUnknownBlockType)arg1 name:(id)arg2 timeout:(double)arg3 finalizer:(CDUnknownBlockType)arg4; @end @interface NSProxy (NSProxyWorkaround) - (BOOL)__isSingletonProxy__im; @end @interface NSObject (IMSingleton) + (BOOL)isSingleton; + (BOOL)replaceSingletonWithSubclass:(id)arg1; + (BOOL)isSingletonOverridden; + (id)overriddenSingleton; + (void)replaceSingletonWithObject:(id)arg1; + (void)removeSingletonOverride; + (void)overrideSingletonWithObject:(id)arg1; + (id)singletonOverride; + (id)_createSingleton__im; - (BOOL)__isSingletonProxy__im; @end @interface NSDictionary (IMSharedUtilitiesAdditions) - (unsigned long long)unsignedLongLongValueForKey:(id)arg1 withDefault:(unsigned long long)arg2; - (long long)longLongValueForKey:(id)arg1 withDefault:(long long)arg2; - (unsigned long long)unsignedLongValueForKey:(id)arg1 withDefault:(unsigned long long)arg2; - (long long)longValueForKey:(id)arg1 withDefault:(long long)arg2; - (float)floatValueForKey:(id)arg1 withDefault:(float)arg2; - (double)doubleValueForKey:(id)arg1 withDefault:(double)arg2; - (unsigned long long)unsignedIntegerValueForKey:(id)arg1 withDefault:(unsigned long long)arg2; - (long long)integerValueForKey:(id)arg1 withDefault:(long long)arg2; - (BOOL)boolValueForKey:(id)arg1 withDefault:(BOOL)arg2; @end @interface NSObject (IMKeyValueCollectionUserDefaultsStorage) - (BOOL)isArchivable_im; @end @interface NSString (IMKeyValueCollectionUserDefaultsStorage) - (BOOL)isArchivable_im; @end @interface NSDate (IMKeyValueCollectionUserDefaultsStorage) - (BOOL)isArchivable_im; @end @interface NSNumber (IMKeyValueCollectionUserDefaultsStorage) - (BOOL)isArchivable_im; @end @interface NSData (IMKeyValueCollectionUserDefaultsStorage) - (BOOL)isArchivable_im; @end @interface NSArray (IMKeyValueCollectionUserDefaultsStorage) - (BOOL)isArchivable_im; @end @interface NSDictionary (IMKeyValueCollectionUserDefaultsStorage) - (BOOL)isArchivable_im; @end @interface NSString (IMSharedUtilities) - (id)__im_apfsCompatibleFilename; - (id)__im_filePathWithVariant:(id)arg1; @end @interface NSDictionary (IMAssocatedMessageItemInfo) + (id)dictionaryWithMessageSummaryInfoData:(id)arg1; + (id)dictionaryWithAssociatedMessageSummary:(id)arg1 contentType:(unsigned char)arg2 pluginBundleID:(id)arg3 pluginDisplayName:(id)arg4; @property(readonly, nonatomic) NSString *__im_associatedMessagePluginDisplayName; @property(readonly, nonatomic) NSString *__im_associatedMessagePluginBundleID; @property(readonly, nonatomic) NSNumber *__im_associatedMessageContentType; @property(readonly, nonatomic) NSString *__im_associatedMessageSummary; @end @interface NSData (IMAssociatedMessageItemInfo) + (id)dataWithMessageSummaryInfoDictionary:(id)arg1; @end @interface NSURL (IMCoreAdditions) - (BOOL)__im_conformsToDomain:(id)arg1 domainExtension:(id)arg2; @end @interface NSString (IMEngramUtilities) - (id)__im_engramDataRepresentation; @end @interface NSData (IMEngramUtilities) - (id)__im_engramStringRepresentation; @end @interface NSError (IMSharedUtilitiesAdditions) + (id)serializedErrorArrayFromErrorArray_im:(id)arg1; + (id)errorArrayFromSerializedErrorArray_im:(id)arg1; - (struct NSDictionary *)serializedError_im; - (id)initWithSerializedError_im:(struct NSDictionary *)arg1; @end extern NSString *IMAssociatedMessageDecodeGUID(NSString* guid);