@class NMSMessageCenter, NSString, NSDictionary, NSMapTable, SYDevice, NSObject; @protocol OS_dispatch_queue, OS_dispatch_semaphore; @interface SYMessengerSyncEngine : SYSyncEngine { NMSMessageCenter *_messageCenter; NSObject *_lookupLock; NSMapTable *_requestLookup; NSMapTable *_callbackLookup; SYDevice *_activeDevice; NSString *_sessionDeviceID; } @property (copy, nonatomic) NSDictionary *customIDSOptions; @property (readonly, nonatomic) NSObject *idsQueue; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; - (BOOL)resume:(id *)a0; - (void)suspend; - (void)beginSession; - (void)messageCenter:(id)a0 didResolveIDSIdentifierForRequest:(id)a1; - (void).cxx_destruct; - (id)stateForLogging; - (id)initWithService:(id)a0 queue:(id)a1; - (id)messageCenter; - (void)messageCenter:(id)a0 didReceiveUnknownRequest:(id)a1; - (BOOL)targetConnected; - (void)messageCenter:(id)a0 failedToSendMessageWithIdentifier:(id)a1 error:(id)a2 userInfo:(id)a3; - (BOOL)_checkMessageHeader:(id)a0 messageID:(id)a1; - (id)_fileTransferHeader; - (id)_getRequestHeader:(id)a0; - (id)_getResponseHeader:(id)a0; - (void)_handleError:(id)a0 forMessageID:(unsigned short)a1; - (void)_hookupMessageHandler; - (void)_recordLastSeqNo:(id)a0; - (void)_resumeIncomingMessages; - (void)_suspendIncomingMessages; - (void)_updateMessageCenterPrefs:(id)a0; - (id)_wrapMessage:(id)a0 ofType:(unsigned short)a1 userInfo:(id)a2; - (id)cancelMessagesReturningFailures:(id)a0; - (void)enqueueSyncRequest:(id)a0 withMessageID:(unsigned short)a1 priority:(long long)a2 options:(id)a3 userContext:(id)a4 callback:(id /* block */)a5; - (void)messageCenter:(id)a0 activeDeviceChanged:(id)a1 acknowledgement:(id /* block */)a2; - (void)messageCenter:(id)a0 connectedDevicesChanged:(id)a1; - (void)messageCenter:(id)a0 didReceiveIncomingFileTransfer:(id)a1; - (void)messageCenter:(id)a0 didResolveIDSIdentifier:(id)a1 forFileTransfer:(id)a2; - (void)messageCenter:(id)a0 didResolveIDSIdentifier:(id)a1 forResponse:(id)a2; - (void)messageCenter:(id)a0 didSuccessfullyDeliverRequestWithIdentifier:(id)a1 userInfo:(id)a2; - (void)messageCenter:(id)a0 didSuccessfullySendRequestWithIdentifier:(id)a1 userInfo:(id)a2; - (void)messageCenter:(id)a0 nearbyDevicesChanged:(id)a1; - (id)outputStreamWithMetadata:(id)a0 priority:(long long)a1 options:(id)a2 context:(id)a3 error:(id *)a4; - (BOOL)targetIsNearby; @end