CKKSDeviceStateEntry.h [plain text]
#ifndef CKKSDeviceStateEntry_h
#define CKKSDeviceStateEntry_h
#if OCTAGON
#include <utilities/SecDb.h>
#include <securityd/SecDbItem.h>
#import <CloudKit/CloudKit.h>
#import "keychain/ckks/CKKS.h"
#import "keychain/ckks/CKKSSQLDatabaseObject.h"
#import "keychain/ckks/CKKSRecordHolder.h"
@interface CKKSDeviceStateEntry : CKKSCKRecordHolder
@property NSString* device;
@property NSString* circlePeerID;
@property SOSCCStatus circleStatus;
@property CKKSZoneKeyState* keyState;
@property NSString* currentTLKUUID;
@property NSString* currentClassAUUID;
@property 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*)device
circlePeerID:(NSString*)circlePeerID
circleStatus:(SOSCCStatus)circleStatus
keyState:(CKKSZoneKeyState*)keyState
currentTLKUUID:(NSString*)currentTLKUUID
currentClassAUUID:(NSString*)currentClassAUUID
currentClassCUUID:(NSString*)currentClassCUUID
zoneID:(CKRecordZoneID*)zoneID
encodedCKRecord:(NSData*)encodedrecord;
@end
#endif // OCTAGON
#endif