#if OCTAGON
#import <Foundation/Foundation.h>
#import "keychain/ckks/CKKSGroupOperation.h"
#import "keychain/ckks/CKKSKeychainView.h"
#import "keychain/ckks/CKKSResultOperation.h"
NS_ASSUME_NONNULL_BEGIN
typedef NS_ENUM(NSUInteger, CKKSFixup) {
CKKSFixupNever,
CKKSFixupRefetchCurrentItemPointers,
CKKSFixupFetchTLKShares,
CKKSFixupLocalReload,
CKKSFixupResaveDeviceStateEntries,
};
#define CKKSCurrentFixupNumber (CKKSFixupResaveDeviceStateEntries)
@interface CKKSFixups : NSObject
+(CKKSGroupOperation*)fixup:(CKKSFixup)lastfixup for:(CKKSKeychainView*)keychainView;
@end
@interface CKKSFixupRefetchAllCurrentItemPointers : CKKSGroupOperation
@property (weak) CKKSKeychainView* ckks;
- (instancetype)initWithCKKSKeychainView:(CKKSKeychainView*)keychainView ckoperationGroup:(CKOperationGroup*)ckoperationGroup;
@end
@interface CKKSFixupFetchAllTLKShares : CKKSGroupOperation
@property (weak) CKKSKeychainView* ckks;
- (instancetype)initWithCKKSKeychainView:(CKKSKeychainView*)keychainView ckoperationGroup:(CKOperationGroup*)ckoperationGroup;
@end
@interface CKKSFixupLocalReloadOperation : CKKSGroupOperation
@property (weak) CKKSKeychainView* ckks;
- (instancetype)initWithCKKSKeychainView:(CKKSKeychainView*)keychainView
ckoperationGroup:(CKOperationGroup*)ckoperationGroup;
@end
@interface CKKSFixupResaveDeviceStateEntriesOperation: CKKSGroupOperation
@property (weak) CKKSKeychainView* ckks;
- (instancetype)initWithCKKSKeychainView:(CKKSKeychainView*)keychainView;
@end
NS_ASSUME_NONNULL_END
#endif // OCTAGON