luxlabs header browser preview


@class NSMutableDictionary, NSUUID, HAPDeviceID, NSDate, NSObject, NSDictionary, HMFActivity, HAPAccessory, NSString, HMFVersion, NSHashTable, HAPKeyBag, NSArray, HAPSuspendedAccessory, NSData, HAPAccessoryPairingRequest, NSNumber;
@protocol OS_dispatch_queue, HAPAccessoryServerDelegate, HAPKeyStore;

@interface HAPAccessoryServer : HMFObject {
    struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _lock;
    struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _metriclock;
}

@property (readonly, nonatomic) NSHashTable *internalDelegates;
@property (readonly, nonatomic) NSObject<OS_dispatch_queue> *internalDelegateQueue;
@property (retain, nonatomic) NSHashTable *notificationClients;
@property (nonatomic) int successfulPingCount;
@property (nonatomic) int failedPingCount;
@property (retain, nonatomic) NSMutableDictionary *localPairingMetricDictionary;
@property BOOL unitTest_useHH2;
@property (readonly, weak) id<HAPAccessoryServerDelegate> delegate;
@property (readonly, nonatomic) NSObject<OS_dispatch_queue> *delegateQueue;
@property (readonly, nonatomic) NSObject<OS_dispatch_queue> *clientQueue;
@property (copy, nonatomic) NSString *name;
@property (nonatomic) BOOL hasPairings;
@property (retain, nonatomic) HAPSuspendedAccessory *suspendedAccessory;
@property (nonatomic) unsigned long long pendingRemovePairing;
@property (nonatomic, getter=isReachable) BOOL reachable;
@property (getter=isSecuritySessionOpen) BOOL securitySessionOpen;
@property (copy, nonatomic) NSString *identifier;
@property (copy, nonatomic) NSNumber *category;
@property (nonatomic) unsigned long long configNumber;
@property (nonatomic) unsigned long long stateNumber;
@property (nonatomic) unsigned long long wakeNumber;
@property (nonatomic) unsigned long long compatibilityFeatures;
@property (nonatomic, getter=isIncompatibleUpdate) BOOL incompatibleUpdate;
@property (retain, nonatomic) HAPAccessory *primaryAccessory;
@property (copy, nonatomic) NSArray *accessories;
@property (readonly, weak, nonatomic) id<HAPKeyStore> keyStore;
@property (copy, nonatomic) NSData *setupHash;
@property (copy) HMFVersion *version;
@property (nonatomic) unsigned long long pairSetupType;
@property (retain, nonatomic) NSString *productData;
@property (copy, nonatomic) NSString *reachabilityChangedReason;
@property BOOL hasAdvertisement;
@property (retain, nonatomic) HAPKeyBag *keyBag;
@property (retain, nonatomic) HAPAccessoryPairingRequest *pairingRequest;
@property (weak, nonatomic) HMFActivity *pairingActivity;
@property BOOL supportsUnreachablePing;
@property unsigned long long metric_pairVerifyDurationInMS;
@property (copy, nonatomic) NSString *metric_pairVerifyReason;
@property (readonly, getter=isKnownToSystemCommissioner) BOOL knownToSystemCommissioner;
@property (readonly, copy) NSData *rootPublicKey;
@property (readonly, copy) NSNumber *nodeID;
@property (readonly, copy) NSUUID *commissioningID;
@property (readonly, copy) NSNumber *vendorID;
@property (readonly, copy) NSNumber *productID;
@property (readonly, copy) HAPDeviceID *deviceID;
@property (readonly, nonatomic) long long linkType;
@property (readonly, nonatomic) long long linkLayerType;
@property (nonatomic) BOOL supportsTimedWrite;
@property (nonatomic) unsigned long long authMethod;
@property (readonly, nonatomic, getter=isBLELinkConnected) BOOL bleLinkConnected;
@property (nonatomic) BOOL reachabilityPingEnabled;
@property (nonatomic, getter=isSessionRestoreActive, setter=setSessionRestoreActive:) BOOL sessionRestoreActive;
@property (copy, nonatomic) NSDate *connectionStartTime;
@property BOOL shouldDisconnectOnIdle;
@property (readonly) long long communicationProtocol;
@property (readonly, nonatomic) NSDictionary *pairingMetricDictionary;

- (BOOL)isPaired;
- (void)disconnect;
- (id)init;
- (BOOL)shouldRetryPVDueToAuthenticationError:(id)a0;
- (void)disconnectWithError:(id)a0;
- (id)shortDescription;
- (void)associateAccessoryWithControllerKeyUsingAccessoryPublicKey:(id)a0;
- (void)initializeKeyBagIfNecessary;
- (void)associateAccessoryWithControllerKeyUsingAccessoryIdentifier:(id)a0;
- (void)reconfirm;
- (id)logIdentifier;
- (void)setDelegate:(id)a0 queue:(id)a1;
- (void).cxx_destruct;
- (void)registerForNotifications:(id)a0;
- (BOOL)isPinging;
- (void)disassociateAccessoryWithControllerKeyUsingAccessoryIdentifier:(id)a0;
- (BOOL)matchesSetupID:(id)a0;
- (void)provisionToken:(id)a0;
- (void)tearDownSessionOnAuthCompletion;
- (void)addInternalDelegate:(id)a0;
- (void)addPairing:(id)a0 completionQueue:(id)a1 completionHandler:(id /* block */)a2;
- (void)associateAccessoryWithControllerKey:(id)a0 usingAccessoryPublicKey:(id)a1;
- (void)authenticateAccessory;
- (id)buildReachabilityNotificationDictionary:(id)a0 reachable:(BOOL)a1 linkType:(long long)a2 withError:(long long)a3;
- (void)clearPairingMetrics;
- (void)continueAuthAfterValidation:(BOOL)a0;
- (void)continuePairingAfterAuthPrompt;
- (void)continuePairingUsingWAC;
- (void)disconnectOnIdleUpdated;
- (void)discoverAccessories;
- (BOOL)doesPeriodicSessionChecks;
- (void)enableEvents:(BOOL)a0 forCharacteristics:(id)a1 withCompletionHandler:(id /* block */)a2 queue:(id)a3;
- (void)enumerateInternalDelegatesUsingBlock:(id /* block */)a0;
- (id)getControllerPairingIdentityWithError:(id *)a0;
- (id)getControllerUserName;
- (void)handleUpdatesForCharacteristics:(id)a0 stateNumber:(id)a1;
- (void)identifyWithCompletion:(id /* block */)a0;
- (void)incrementFailedPing;
- (void)incrementSuccessfulPing;
- (id)initWithKeystore:(id)a0;
- (BOOL)isAccessoryAssociatedWithControllerKey:(id)a0;
- (void)listPairingsWithCompletionQueue:(id)a0 completionHandler:(id /* block */)a1;
- (BOOL)matchesSetupID:(id)a0 serverIdentifier:(id)a1;
- (BOOL)notifyClients:(unsigned long long)a0 withDictionary:(id)a1;
- (unsigned long long)numActiveSessionClients;
- (BOOL)pingSupported;
- (void)readCharacteristicValues:(id)a0 timeout:(double)a1 completionQueue:(id)a2 completionHandler:(id /* block */)a3;
- (void)refreshKeyBag;
- (void)removeInternalDelegate:(id)a0;
- (void)removePairing:(id)a0 completionQueue:(id)a1 completionHandler:(id /* block */)a2;
- (BOOL)removePairingForCurrentControllerOnQueue:(id)a0 completion:(id /* block */)a1;
- (void)removePairingIdentifier:(id)a0 pairingPublicKey:(id)a1 completionQueue:(id)a2 completionHandler:(id /* block */)a3;
- (BOOL)requiresTimedWrite:(id)a0;
- (void)securitySessionWillCloseWithResponseData:(id)a0 error:(id *)a1;
- (unsigned long long)sessionCheckInterval;
- (void)setPairingMetricWithKey:(id)a0 value:(id)a1;
- (void)startPairingWithConsentRequired:(BOOL)a0 config:(id)a1 ownershipToken:(id)a2;
- (void)startPairingWithRequest:(id)a0;
- (void)startPing;
- (BOOL)stopPairingWithError:(id *)a0;
- (void)stopPing;
- (void)submitPairVerifyMetricWithError:(id)a0;
- (BOOL)tryPairingPassword:(id)a0 onboardingSetupPayloadString:(id)a1 error:(id *)a2;
- (void)unregisterForNotifications:(id)a0;
- (void)updateAccessoryInfoDictionary:(id)a0;
- (void)updateActiveDisconnectOnIdleTimeout:(double)a0;
- (BOOL)useHH2;
- (void)validatePairingAuthMethod:(id /* block */)a0;
- (void)writeCharacteristicValues:(id)a0 timeout:(double)a1 completionQueue:(id)a2 completionHandler:(id /* block */)a3;

@end