2 #import <Foundation/Foundation.h>
3 #import <CoreCDP/CDPStateController.h>
5 #import "keychain/escrowrequest/generated_source/SecEscrowPendingRecord.h"
6 #import "keychain/ot/OctagonStateMachine.h"
7 #import "keychain/ckks/CKKSGroupOperation.h"
9 NS_ASSUME_NONNULL_BEGIN
11 @interface EscrowRequestPerformEscrowEnrollOperation
: CKKSGroupOperation
<OctagonStateTransitionOperationProtocol
>
13 @property
uint64_t numberOfRecordsUploaded
;
15 - (instancetype
)initWithIntendedState
:(OctagonState
*)intendedState
16 errorState
:(OctagonState
*)errorState
17 enforceRateLimiting
:(bool)enforceRateLimiting
18 lockStateTracker
:(CKKSLockStateTracker
*)lockStateTracker
;
20 + (void)cdpUploadPrerecord
:(SecEscrowPendingRecord
*)recordToSend
21 secretType
:(CDPDeviceSecretType
)secretType
22 reply
:(void (^)(BOOL didUpdate
, NSError
* _Nullable error
))reply
;