@class CKDURLRequest, CKOperationInfo, CKSignpost, NSDate, NSObject, UMUserSyncTask, NSDictionary, CKDOperationMetrics, NSMutableArray, NSString, CKOperationMMCSRequestOptions, CKDContainer, CKOperationMetrics, CKDLogicalDeviceContext, NSError, NSNumber; @protocol OS_dispatch_group, CKOperationCallbacks, OS_os_activity, OS_os_transaction, OS_dispatch_queue; @interface CKDOperation : NSOperation <CKThrottlingCriteria> { struct os_unfair_recursive_lock_s { struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } ourl_lock; unsigned int ourl_count; } _metricsLock; CKDOperationMetrics *_cloudKitMetrics; CKDOperationMetrics *_MMCSMetrics; unsigned long long _state; NSObject<OS_os_activity> *_osActivity; int _executionState; } @property (readonly, nonatomic) NSMutableArray *requestUUIDs; @property (weak) CKDOperation *parentOperation; @property (readonly, nonatomic) NSMutableArray *childOperations; @property (readonly, nonatomic) NSMutableArray *finishedChildOperationIDs; @property (retain, nonatomic) NSDate *startDate; @property (retain, nonatomic) NSObject<OS_dispatch_group> *childOperationsGroup; @property (retain, nonatomic) UMUserSyncTask *userSyncTask; @property (nonatomic) _Atomic int pcsWaitCount; @property (readonly, nonatomic) NSObject<OS_os_transaction> *transaction; @property (readonly, nonatomic) CKSignpost *signpost; @property (readonly, nonatomic) CKDLogicalDeviceContext *deviceContext; @property (retain, nonatomic) NSDate *metricExecuteStartDate; @property (nonatomic) BOOL didAttemptDugongKeyRoll; @property (readonly, nonatomic) BOOL resolvedAutomaticallyRetryNetworkFailures; @property (readonly, nonatomic) unsigned long long resolvedDiscretionaryNetworkBehavior; @property (readonly, nonatomic) unsigned long long duetPreClearedMode; @property (readonly, nonatomic) unsigned long long discretionaryWhenBackgroundedState; @property (readonly, nonatomic) unsigned long long systemScheduler; @property (readonly, weak, nonatomic) CKDOperation *topmostParentOperation; @property (retain, nonatomic) id<CKOperationCallbacks> clientOperationCallbackProxy; @property (readonly) CKDContainer *container; @property (nonatomic) BOOL useEncryption; @property (nonatomic) BOOL useClearAssetEncryption; @property (readonly, nonatomic) BOOL isLongLivedCallbackRelayOperation; @property (readonly, nonatomic) BOOL shouldCheckAppVersion; @property (readonly, nonatomic) BOOL usesBackgroundSession; @property (readonly, nonatomic) BOOL expectDelayBeforeRequestBegins; @property (readonly, nonatomic) BOOL allowsPowerNapScheduling; @property (nonatomic) BOOL shouldPipelineFetchAllChangesRequests; @property (readonly, nonatomic) unsigned int QOSClass; @property (retain, nonatomic) NSObject<OS_dispatch_queue> *callbackQueue; @property (retain) NSError *error; @property (retain, nonatomic) CKDURLRequest *request; @property (readonly, nonatomic) CKOperationMetrics *operationMetrics; @property (copy, nonatomic) id /* block */ requestCompletedBlock; @property (readonly, nonatomic) NSString *operationID; @property (readonly, nonatomic) long long clientQueuePriority; @property (readonly, nonatomic) BOOL isLongLived; @property (readonly, nonatomic) CKOperationMMCSRequestOptions *MMCSRequestOptions; @property (readonly, nonatomic) NSDictionary *unitTestOverrides; @property (readonly, nonatomic) BOOL allowsCellularAccess; @property (readonly, nonatomic) BOOL allowsExpensiveNetworkAccess; @property (readonly, nonatomic) NSString *applicationBundleIdentifierForContainerAccess; @property (readonly, nonatomic) NSString *applicationBundleIdentifierForNetworkAttribution; @property (readonly, nonatomic) NSString *sourceApplicationSecondaryIdentifier; @property (readonly, nonatomic) NSString *authPromptReason; @property (readonly, nonatomic) BOOL automaticallyRetryNetworkFailures; @property (readonly, nonatomic) BOOL preferAnonymousRequests; @property (readonly, nonatomic) double timeoutIntervalForRequest; @property (readonly, nonatomic) double timeoutIntervalForResource; @property (readonly, nonatomic) BOOL supportsDeviceThrottling; @property (readonly, nonatomic) NSString *operationGroupID; @property (readonly, nonatomic) NSString *operationGroupName; @property (readonly, nonatomic) NSNumber *operationGroupQuantityNumber; @property (readonly, nonatomic) BOOL isCloudKitSupportOperation; @property (readonly, nonatomic) NSNumber *cacheDeleteAvailableSpaceClass; @property (readonly, nonatomic) unsigned long long networkServiceType; @property (readonly, nonatomic) CKOperationInfo *operationInfo; @property (readonly, nonatomic) NSObject<OS_os_activity> *osActivity; @property (nonatomic) unsigned long long requestOriginator; @property (nonatomic) unsigned long long state; @property (retain, nonatomic) NSObject<OS_dispatch_group> *stateTransitionGroup; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (long long)isPredominatelyDownload; + (id)nameForState:(unsigned long long)a0; + (id)_globalOperationCallbackQueueForQOS:(long long)a0; - (BOOL)isOperationType:(int)a0; - (BOOL)makeStateTransition; - (id)openFileWithOpenInfo:(id)a0 error:(id *)a1; - (id)CKDescriptionPropertiesWithPublic:(BOOL)a0 private:(BOOL)a1 shouldExpand:(BOOL)a2; - (void)_finishOnCallbackQueueWithError:(id)a0; - (id)initWithOperationInfo:(id)a0 container:(id)a1; - (id)analyticsPayload; - (int)operationType; - (BOOL)isExecuting; - (id)activityCreate; - (void)dealloc; - (id)_startDateString; - (void)main; - (void)setQualityOfService:(long long)a0; - (void)start; - (BOOL)isFinished; - (id)containerID; - (id)statusReportWithIndent:(unsigned long long)a0; - (void)transitionToFinished; - (id)ckShortDescription; - (void)transitionToExecuting; - (void)setCompletionBlock:(id /* block */)a0; - (id)additionalRequestHTTPHeaders; - (void).cxx_destruct; - (void)cancel; - (BOOL)validateAgainstLiveContainer:(id)a0 error:(id *)a1; - (BOOL)isEqual:(id)a0; - (id)CKStatusReportLogGroups; - (unsigned long long)discretionaryNetworkBehavior; - (BOOL)shouldKeepXPCConnectionAlive; - (void)finishWithError:(id)a0; - (BOOL)isConcurrent; - (id)_stateFlags; - (BOOL)finishWithAssetDownloadStagingInfo:(id)a0 fileURL:(id *)a1 fileHandle:(id *)a2 error:(id *)a3; - (void)configureRequest:(id)a0; - (BOOL)checkAndClearUnitTestOverrides:(id)a0; - (id)CKStatusReportProperties; - (BOOL)_checkAppVersion; - (void)_continueOperationStart; - (void)_determineNetworkServiceType; - (void)_ensureOperationGroup; - (void)_finishInternalOnCallbackQueueWithError:(id)a0; - (void)_registerAttemptForOperation; - (id)baseOperationAndErrorInfoCoreAnalyticsPayloadWithError:(id)a0; - (void)beginUserSyncTask; - (void)combineMetricsWithOperation:(id)a0; - (void)configureQualityOfServiceFromOperationInfo:(id)a0; - (id)createConcurrentQueue; - (id)createInactiveConcurrentQueue; - (id)createInactiveSerialQueue; - (id)createSerialQueue; - (id)dugongKeyRollAnalyticsPayloadWithError:(id)a0; - (BOOL)isNetworkingBehaviorEquivalentForOperation:(id)a0; - (BOOL)isTopLevelDaemonOperation; - (BOOL)isWaitingOnPCS; - (void)makeStateTransition:(BOOL)a0; - (void)noteOperationDidFinishWaitingOnPCS; - (void)noteOperationWillWaitOnPCS; - (void)pushStatisticsTo:(id)a0; - (void)request:(id)a0 didFinishWithMetrics:(id)a1 w3cNavigationTiming:(id)a2; - (void)sendCoreAnalyticsEventOperationFinished; - (void)spawnAndRunOperationOfClass:(Class)a0 operationInfo:(id)a1 operationConfigurationBlock:(id /* block */)a2; - (void)spawnAndRunOperationOfClass:(Class)a0 operationInfo:(id)a1 spawnQueue:(id)a2 container:(id)a3 operationConfigurationBlock:(id /* block */)a4; - (void)spawnAndRunOperationOfClass:(Class)a0 operationInfo:(id)a1 spawnQueue:(id)a2 operationConfigurationBlock:(id /* block */)a3; - (void)updateCloudKitMetrics:(id /* block */)a0; - (void)updateMMCSMetrics:(id /* block */)a0; @end