CKKSDeviceStateEntry.h [plain text]
#ifndef CKKSDeviceStateEntry_h
#define CKKSDeviceStateEntry_h
#if OCTAGON
#include <securityd/SecDbItem.h>
#include <utilities/SecDb.h>
#import <CloudKit/CloudKit.h>
#import "keychain/ckks/CKKS.h"
#import "keychain/ckks/CKKSRecordHolder.h"
#import "keychain/ckks/CKKSSQLDatabaseObject.h"
NS_ASSUME_NONNULL_BEGIN
@interface CKKSDeviceStateEntry : CKKSCKRecordHolder
@property NSString* device;
@property (nullable) NSString* osVersion;
@property (nullable) NSDate* lastUnlockTime;
@property (nullable) NSString* circlePeerID;
@property SOSCCStatus circleStatus;
@property (nullable) CKKSZoneKeyState* keyState;
@property (nullable) NSString* currentTLKUUID;
@property (nullable) NSString* currentClassAUUID;
@property (nullable) NSString* currentClassCUUID;
+ (instancetype)fromDatabase:(NSString*)device zoneID:(CKRecordZoneID*)zoneID error:(NSError* __autoreleasing*)error;
+ (instancetype)tryFromDatabase:(NSString*)device zoneID:(CKRecordZoneID*)zoneID error:(NSError* __autoreleasing*)error;
+ (instancetype)tryFromDatabaseFromCKRecordID:(CKRecordID*)recordID error:(NSError* __autoreleasing*)error;
+ (NSArray<CKKSDeviceStateEntry*>*)allInZone:(CKRecordZoneID*)zoneID error:(NSError* __autoreleasing*)error;
- (instancetype)init NS_UNAVAILABLE;
- (instancetype)initForDevice:(NSString* _Nullable)device
osVersion:(NSString* _Nullable)osVersion
lastUnlockTime:(NSDate* _Nullable)lastUnlockTime
circlePeerID:(NSString* _Nullable)circlePeerID
circleStatus:(SOSCCStatus)circleStatus
keyState:(CKKSZoneKeyState* _Nullable)keyState
currentTLKUUID:(NSString* _Nullable)currentTLKUUID
currentClassAUUID:(NSString* _Nullable)currentClassAUUID
currentClassCUUID:(NSString* _Nullable)currentClassCUUID
zoneID:(CKRecordZoneID*)zoneID
encodedCKRecord:(NSData* _Nullable)encodedrecord;
@end
NS_ASSUME_NONNULL_END
#endif // OCTAGON
#endif