@class NSError, NSMutableDictionary, CUPairingSession, CUBluetoothScalablePipe, CUBLEConnection, RPIdentity, NSDictionary, NSObject, NSMutableArray, RPIdentityDaemon, CUTCPConnection, CUBonjourDevice, NSString, RPCompanionLinkDevice, CUNetLinkManager, CUPairingStream, NSArray, NSData, CUHomeKitManager, NSUUID; @protocol OS_dispatch_queue, OS_dispatch_source, CUReadWriteRequestable; @interface RPConnection : NSObject <RPAuthenticatable> { BOOL _activateCalled; NSString *_selfAddrString; BOOL _invalidateCalled; BOOL _invalidateDone; NSObject<OS_dispatch_source> *_idleTimer; NSObject<OS_dispatch_source> *_probeTimer; BOOL _retryFired; unsigned long long _retryTicks; NSObject<OS_dispatch_source> *_retryTimer; NSObject<OS_dispatch_source> *_startTimer; int _internalState; BOOL _stepDone; NSError *_stepError; unsigned long long _highPriorityAuthTagLength; CUPairingStream *_highPriorityStream; NSString *_homeKitIdentityIdentifier; NSData *_homeKitIdentitySignature; unsigned long long _mainAuthTagLength; CUPairingStream *_mainStream; int _pairSetupAuthType; CUPairingSession *_pairSetupSession; BOOL _pairVerifyCompleted; BOOL _pairVerifyFailed; int _pairVerifyIdentityType; CUPairingSession *_pairVerifySession; BOOL _pairVerifyUsedIdentity; struct { struct { unsigned char frameType; unsigned char frameLen[3]; } header; BOOL receivingHeader; BOOL readRequested; } _readFrame; struct { struct { unsigned char frameType; unsigned char frameLen[3]; } header; BOOL receivingHeader; BOOL readRequested; } _readFrameBTPipeHighPriority; id<CUReadWriteRequestable> _requestable; NSMutableDictionary *_requests; int _retryCount; NSMutableArray *_sendArray; BOOL _showPasswordCalled; struct LogCategory { int x0; int x1; char *x2; unsigned int x3; char *x4; char *x5; int x6; struct LogCategory *x7; struct LogOutput *x8; struct LogOutput *x9; unsigned long long x10; unsigned long long x11; unsigned int x12; unsigned int x13; char *x14; struct LogCategoryPrivate *x15; } *_ucat; unsigned int _xidLast; unsigned long long _receivedFrameCountCurrent; unsigned long long _receivedFrameCountLast; } @property (retain, nonatomic) NSMutableArray *proxyDevices; @property (retain, nonatomic) CUBluetoothScalablePipe *btPipeHighPriority; @property (copy, nonatomic) NSString *appID; @property (readonly, copy, nonatomic) NSDictionary *appInfoPeer; @property (copy, nonatomic) NSDictionary *appInfoSelf; @property (nonatomic) long long bleClientUseCase; @property (retain, nonatomic) CUBLEConnection *bleConnection; @property (copy, nonatomic) NSUUID *blePeerIdentifier; @property (retain, nonatomic) CUBonjourDevice *bonjourPeerDevice; @property (retain, nonatomic) CUBluetoothScalablePipe *btPipe; @property (retain, nonatomic) id client; @property (retain, nonatomic) NSString *clientBundleID; @property (nonatomic) BOOL clientMode; @property (copy, nonatomic) id /* block */ configurePairingHandler; @property (nonatomic) unsigned long long controlFlags; @property (copy, nonatomic) NSString *destinationString; @property (retain, nonatomic) NSObject<OS_dispatch_queue> *dispatchQueue; @property (nonatomic) unsigned int flags; @property (nonatomic) BOOL flowControlReadEnabled; @property (copy, nonatomic) id /* block */ flowControlWriteChangedHandler; @property (readonly, nonatomic) int flowControlWriteState; @property (retain, nonatomic) RPIdentity *forcedPeerIdentity; @property (retain, nonatomic) RPIdentity *forcedSelfIdentity; @property (retain, nonatomic) CUHomeKitManager *homeKitManager; @property (copy, nonatomic) id /* block */ homeKitUserIdentifierHandler; @property (copy, nonatomic) NSString *identifierOverride; @property (retain, nonatomic) RPIdentityDaemon *identityDaemon; @property (retain, nonatomic) RPIdentity *identityResolved; @property (readonly, nonatomic) RPIdentity *identityVerified; @property (nonatomic) BOOL invalidationHandled; @property (copy, nonatomic) id /* block */ invalidationHandler; @property (nonatomic) int keepAliveSeconds; @property (copy, nonatomic) NSString *label; @property (readonly, nonatomic) int linkType; @property (retain, nonatomic) RPCompanionLinkDevice *localDeviceInfo; @property (retain, nonatomic) CUNetLinkManager *netLinkManager; @property (readonly, nonatomic) int pairVerifyAuthType; @property (copy, nonatomic) id /* block */ pairVerifyCompletion; @property (readonly, nonatomic) NSString *peerAddrString; @property (readonly, nonatomic) RPCompanionLinkDevice *peerDeviceInfo; @property (readonly, nonatomic) NSString *peerHomeKitUserIdentifier; @property (copy, nonatomic) NSString *peerIdentifier; @property (copy, nonatomic) id /* block */ peerUpdatedHandler; @property (nonatomic) BOOL preAuthEnabled; @property (nonatomic) int preferredIdentityType; @property (nonatomic) BOOL present; @property (copy, nonatomic) id /* block */ proxyDeviceUpdateHandler; @property (copy, nonatomic) NSData *pskData; @property (copy, nonatomic) id /* block */ readErrorHandler; @property (copy, nonatomic) id /* block */ receivedEventHandler; @property (copy, nonatomic) id /* block */ receivedRequestHandler; @property (copy, nonatomic) NSMutableArray *receivedMessages; @property (copy, nonatomic) NSString *serviceType; @property (copy, nonatomic) id /* block */ sessionStartHandler; @property (nonatomic) int state; @property (copy, nonatomic) id /* block */ stateChangedHandler; @property (readonly, nonatomic) unsigned long long statusFlags; @property (retain, nonatomic) CUTCPConnection *tcpConnection; @property (nonatomic) unsigned int trafficFlags; @property (retain, nonatomic) NSArray *allowedMACAddresses; @property (copy, nonatomic) NSData *pairingInfo; @property (retain, nonatomic) NSArray *pairSetupACL; @property (nonatomic) unsigned int pairSetupFlags; @property (nonatomic) unsigned int pairVerifyFlags; @property (copy, nonatomic) NSString *password; @property (nonatomic) int passwordType; @property (readonly, nonatomic) int passwordTypeActual; @property (copy, nonatomic) id /* block */ authCompletionHandler; @property (copy, nonatomic) id /* block */ showPasswordHandler; @property (copy, nonatomic) id /* block */ hidePasswordHandler; @property (copy, nonatomic) id /* block */ promptForPasswordHandler; - (void)invalidateWithError:(id)a0; - (void)_run; - (id)init; - (void)dealloc; - (void)_invalidated; - (id)descriptionWithLevel:(int)a0; - (void)_invalidate; - (void)invalidate; - (void)activate; - (id)description; - (void).cxx_destruct; - (void)_idleTimerFired; - (void)_invalidateWithError:(id)a0; - (void)_abortRequestsWithError:(id)a0; - (void)_clientRun; - (void)_clientStarted; - (void)_sendFrameType:(unsigned char)a0 unencryptedObject:(id)a1; - (void)_clientPreAuthResponseWithData:(id)a0; - (void)_updateLinkInfo; - (void)_serverPairSetupWithData:(id)a0 start:(BOOL)a1; - (void)_timeoutForXID:(id)a0; - (void)sessionStopped:(id)a0; - (id)_allowedMACAddressesForMCFeature:(id)a0; - (void)_clientConnectCompleted:(id)a0; - (void)_clientConnectStart; - (void)_clientConnectStartBLE; - (void)_clientConnectStartBTPipe; - (void)_clientConnectStartTCP; - (BOOL)_clientError:(id)a0; - (void)_clientNetworkError:(id)a0 label:(const char *)a1; - (void)_clientPairSetupCompleted:(id)a0; - (void)_clientPairSetupPromptWithFlags:(unsigned int)a0 throttleSeconds:(int)a1 handler:(id /* block */)a2; - (void)_clientPairSetupStart; - (void)_clientPairSetupWithData:(id)a0; - (void)_clientPairVerifyCompleted:(id)a0; - (void)_clientPairVerifyStart; - (void)_clientPairVerifyWithData:(id)a0; - (void)_clientPreAuthStart; - (void)_clientRetryFired; - (void)_clientRetryStart; - (void)_clientStartSession; - (id)_identityProofDataClient; - (id)_identityProofDataServer; - (void)_identityProofsAdd:(id)a0 update:(BOOL)a1; - (void)_identityProofsVerify:(id)a0; - (void)_identityProofsVerifyHomeKitSignature:(id)a0 identifier:(id)a1; - (void)_idleTimerStart:(unsigned int)a0 repeat:(unsigned int)a1; - (void)_invalidateCore:(id)a0; - (void)_pairSetupInvalidate; - (void)_pairVerifyInvalidate; - (id)_pairVerifySignData:(id)a0 flags:(unsigned int)a1 error:(id *)a2; - (BOOL)_pairVerifyVerifySignature:(id)a0 data:(id)a1 flags:(unsigned int)a2 error:(id *)a3; - (void)_processSends; - (void)_pskPrepare:(BOOL)a0; - (void)_receiveCompletion:(id)a0 readFrame:(struct { struct { unsigned char x0; unsigned char x1[3]; } x0; BOOL x1; BOOL x2; } *)a1 requestable:(id)a2; - (void)_receiveStart:(id)a0 readFrame:(struct { struct { unsigned char x0; unsigned char x1[3]; } x0; BOOL x1; BOOL x2; } *)a1 requestable:(id)a2; - (void)_receivedEvent:(id)a0 ctx:(struct { unsigned long long x0; BOOL x1; } *)a1; - (void)_receivedHeader:(const struct { unsigned char x0; unsigned char x1[3]; } *)a0 body:(id)a1 ctx:(struct { unsigned long long x0; BOOL x1; } *)a2; - (void)_receivedHeader:(const struct { unsigned char x0; unsigned char x1[3]; } *)a0 encryptedObjectData:(id)a1 ctx:(struct { unsigned long long x0; BOOL x1; } *)a2; - (void)_receivedObject:(id)a0 ctx:(struct { unsigned long long x0; BOOL x1; } *)a1; - (void)_receivedRequest:(id)a0 ctx:(struct { unsigned long long x0; BOOL x1; } *)a1; - (void)_receivedResponse:(id)a0 ctx:(struct { unsigned long long x0; BOOL x1; } *)a1; - (void)_receivedSystemInfo:(id)a0 xid:(id)a1; - (void)_sendEncryptedEventID:(id)a0 data:(id)a1 xid:(unsigned int)a2 options:(id)a3 completion:(id /* block */)a4; - (void)_sendEncryptedRequestID:(id)a0 request:(id)a1 xpcID:(unsigned int)a2 options:(id)a3 sendEntry:(id)a4 responseHandler:(id /* block */)a5; - (void)_sendEncryptedResponse:(id)a0 error:(id)a1 xid:(id)a2 requestID:(id)a3 highPriority:(BOOL)a4 isChatty:(BOOL)a5; - (void)_sendFrameType:(unsigned char)a0 body:(id)a1; - (void)_serverAccept; - (void)_serverAcceptBLE; - (void)_serverAcceptBTPipe; - (void)_serverAcceptTCP; - (void)_serverError:(id)a0; - (void)_serverNetworkError:(id)a0 label:(const char *)a1; - (void)_serverPairSetupCompleted:(id)a0; - (void)_serverPairVerifyCompleted:(id)a0; - (void)_serverPairVerifyWithData:(id)a0 start:(BOOL)a1; - (BOOL)_serverPairingAllowed; - (void)_serverPreAuthRequestWithData:(id)a0; - (void)_serverRun; - (void)_serverStarted; - (id)_systeminfo; - (void)_timeoutForSendEntry:(id)a0; - (void)_updateExternalState; - (void)homeKitIdentityUpdated; - (void)processSendsUsingConnection:(id)a0; - (void)sendEncryptedEventID:(id)a0 data:(id)a1 xid:(unsigned int)a2 options:(id)a3 completion:(id /* block */)a4; - (void)sendEncryptedEventID:(id)a0 event:(id)a1 options:(id)a2 completion:(id /* block */)a3; - (void)sendEncryptedRequestID:(id)a0 request:(id)a1 xpcID:(unsigned int)a2 options:(id)a3 responseHandler:(id /* block */)a4; - (void)sendReachabilityProbe:(const char *)a0; - (void)tryPassword:(id)a0; @end