CKKSCurrentKeyPointer.h [plain text]
#import <Foundation/Foundation.h>
#import "keychain/ckks/CKKS.h"
#import "keychain/ckks/CKKSItem.h"
#import "keychain/ckks/CKKSKey.h"
#import "keychain/ckks/CKKSTLKShare.h"
#if OCTAGON
@interface CKKSCurrentKeyPointer : CKKSCKRecordHolder
@property CKKSKeyClass* keyclass;
@property NSString* currentKeyUUID;
- (instancetype)initForClass:(CKKSKeyClass*)keyclass
currentKeyUUID:(NSString*)currentKeyUUID
zoneID:(CKRecordZoneID*)zoneID
encodedCKRecord:(NSData*)encodedrecord;
+ (instancetype)fromDatabase:(CKKSKeyClass*)keyclass zoneID:(CKRecordZoneID*)zoneID error:(NSError* __autoreleasing*)error;
+ (instancetype)tryFromDatabase:(CKKSKeyClass*)keyclass zoneID:(CKRecordZoneID*)zoneID error:(NSError* __autoreleasing*)error;
+ (instancetype)forKeyClass:(CKKSKeyClass*)keyclass
withKeyUUID:(NSString*)keyUUID
zoneID:(CKRecordZoneID*)zoneID
error:(NSError* __autoreleasing*)error;
+ (NSArray<CKKSCurrentKeyPointer*>*)all:(CKRecordZoneID*)zoneID error:(NSError* __autoreleasing*)error;
+ (bool)deleteAll:(CKRecordZoneID*)zoneID error:(NSError* __autoreleasing*)error;
@end
@interface CKKSCurrentKeySet : NSObject
@property NSError* error;
@property CKKSKey* tlk;
@property CKKSKey* classA;
@property CKKSKey* classC;
@property CKKSCurrentKeyPointer* currentTLKPointer;
@property CKKSCurrentKeyPointer* currentClassAPointer;
@property CKKSCurrentKeyPointer* currentClassCPointer;
@property NSArray<CKKSTLKShare*>* tlkShares;
- (instancetype)init;
- (instancetype)initForZone:(CKRecordZoneID*)zoneID;
@end
#endif