@class ICFileContentKeyStore, NSString, AVContentKeySession, NSURL, NSSet, NSMutableDictionary, NSObject, NSMutableSet, NSMutableArray, ICStoreRequestContext, NSNumber; @protocol ICContentKeySessionDelegateProtocol, ICContentKeyStoreProtocol, OS_dispatch_semaphore, OS_dispatch_queue, OS_dispatch_source; @interface ICContentKeySession : NSObject { AVContentKeySession *_contentKeySession; NSObject *_accessQueue; NSMutableSet *_pendingKeyIdentifiers; NSMutableSet *_pendingRenewalKeyIdentifiers; NSMutableArray *_renewalCompletionBlocks; NSObject *_waitForKeysSemaphore; NSSet *_prefetchKeyIdentifiers; NSURL *_prefetchKeyServerURL; NSURL *_prefetchKeyCertificateURL; ICFileContentKeyStore *_prefetchedContentKeyStore; NSMutableDictionary *_keyRenewalDates; NSMutableDictionary *_completedKeyRequests; NSMutableDictionary *_keyResponses; NSObject *_keyRenewalTimer; BOOL _automaticKeyRenewalPaused; BOOL _active; id _delegate; } @property (class, readonly, nonatomic) NSString *enhancedAudioSharedContentKeyPath; @property (class, readonly, nonatomic) NSString *pendingInvalidationKeyStorePath; @property (readonly, nonatomic) ICStoreRequestContext *requestContext; @property (copy, nonatomic) NSURL *keyServerURL; @property (copy, nonatomic) NSURL *keyCertificateURL; @property (copy, nonatomic) NSNumber *adamID; @property (copy, nonatomic) NSString *playbackToken; @property (nonatomic) BOOL bypassCache; @property (nonatomic) BOOL requestOfflineKeys; @property (nonatomic) BOOL allowFallbackToStreamingKeys; @property (nonatomic) long long keyServerProtocolType; @property (readonly, nonatomic) id keyStore; @property (copy, nonatomic) NSURL *streamingleaseStopURL; @property (copy, nonatomic) NSURL *offlineLeaseStartURL; @property (copy, nonatomic) NSURL *offlineLeaseStopNonceURL; @property (copy, nonatomic) NSURL *offlineLeaseStopURL; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (id)copyKeysToPendingInvalidationStoreFromPath:(id)a0; - (id)init; - (void)dealloc; - (void).cxx_destruct; - (void)contentKeySession:(id)a0 didProvidePersistableContentKeyRequest:(id)a1; - (void)contentKeySession:(id)a0 didProvideContentKeyRequest:(id)a1; - (id)initWithRequestContext:(id)a0; - (void)contentKeySession:(id)a0 contentKeyRequest:(id)a1 didFailWithError:(id)a2; - (void)contentKeySession:(id)a0 contentKeyRequestDidSucceed:(id)a1; - (void)contentKeySession:(id)a0 didProvideRenewingContentKeyRequest:(id)a1; - (void)addAsset:(id)a0; - (void)removeAsset:(id)a0; - (void)_finishProcessingKeyWithIdentifier:(id)a0; - (void)_invalidateKeyWithIdentifier:(id)a0 forAdamID:(id)a1 offline:(BOOL)a2 usingAccountDSID:(id)a3 keyData:(id)a4 withCompletion:(id /* block */)a5; - (void)_performKeyDeliveryRequestForContentKeyRequest:(id)a0 persistResponse:(BOOL)a1 isRenewal:(BOOL)a2; - (void)_processKeyWithIdentifier:(id)a0; - (void)_renewExpiredKeys; - (void)_scheduleKeyRefreshTimer; - (void)addAsset:(id)a0 shouldPreloadKeys:(BOOL)a1 waitForKeyIdentifiers:(BOOL)a2; - (id)initWithRequestContext:(id)a0 keyStore:(id)a1; - (id)initWithRequestContext:(id)a0 keyStore:(id)a1 delegate:(id)a2; - (void)invalidateKeyWithIdentifier:(id)a0 withCompletion:(id /* block */)a1; - (void)pauseAutomaticKeyRenewal; - (void)processKeyWithIdentifier:(id)a0; - (void)resumeAutomaticKeyRenewal; - (void)stopSessionInvalidatingKeys:(BOOL)a0 withCompletion:(id /* block */)a1; - (void)waitForAllKeysToProcess; - (void)waitForAllKeysToProcessWithTimeout:(double)a0; - (void)waitForKeyRenewalsWithCompletionHandler:(id /* block */)a0; @end