@class NSString, NSArray, NSURLSession, NSSet, NSOperationQueue, NSHTTPCookieStorage, NSMutableDictionary, NSURLCache, NSMutableArray, NSRecursiveLock, NSMutableOrderedSet; @interface MCLURLDataLoader : NSObject { NSString *_cachePath; NSURLCache *_cache; NSString *_downloadCacheDirectory; NSOperationQueue *_operationQueue; NSMutableDictionary *_priorities; NSMutableArray *_taskQueue; NSRecursiveLock *_taskQueueLock; NSMutableDictionary *_activeTasks; NSMutableArray *_sessionTasks; NSMutableOrderedSet *_duplicateTasks; NSMutableOrderedSet *_rewriteRules; BOOL _suspended; BOOL _resuming; unsigned long long _backgroundTaskIdentifier; } @property (readonly, nonatomic) NSSet *cacheLocations; @property (readonly, nonatomic) NSOperationQueue *operationQueue; @property (readonly, nonatomic) NSURLSession *session; @property (readonly, nonatomic) NSHTTPCookieStorage *cookieStorage; @property (readonly, nonatomic) NSURLCache *cache; @property (readonly, nonatomic) NSArray *rewriteRules; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (id)shared; + (id)dateFromRFC1123:(id)a0; + (id)downloadData; + (void)addSessionConfigurator:(id /* block */)a0; + (void)applyDefaultRequestHeaders:(id)a0; + (id)duplicateResponse:(id)a0 withContentLength:(long long)a1; + (id)fileExtensionForMimeType:(id)a0; + (BOOL)isValidResumeData:(id)a0; + (id)mimeTypeForFileExtension:(id)a0; + (void)removeFilesOlderThan:(id)a0 inDirectory:(id)a1; + (void)restart:(id /* block */)a0; + (BOOL)task:(id)a0 equalsToTask:(id)a1; + (id)uniqueImageKeyForURL:(id)a0; + (id)uniqueKeyForURL:(id)a0; - (void)cancelTask:(id)a0; - (void)URLSession:(id)a0 dataTask:(id)a1 didReceiveResponse:(id)a2 completionHandler:(id /* block */)a3; - (void)URLSession:(id)a0 dataTask:(id)a1 didReceiveData:(id)a2; - (void)removeCachedResponseForRequest:(id)a0; - (id)init; - (void)URLSession:(id)a0 downloadTask:(id)a1 didFinishDownloadingToURL:(id)a2; - (void)clearCache; - (void)URLSession:(id)a0 didBecomeInvalidWithError:(id)a1; - (void)URLSession:(id)a0 task:(id)a1 willPerformHTTPRedirection:(id)a2 newRequest:(id)a3 completionHandler:(id /* block */)a4; - (void)suspend; - (void)dispose; - (void)URLSession:(id)a0 dataTask:(id)a1 willCacheResponse:(id)a2 completionHandler:(id /* block */)a3; - (void)URLSession:(id)a0 downloadTask:(id)a1 didResumeAtOffset:(long long)a2 expectedTotalBytes:(long long)a3; - (void)URLSession:(id)a0 downloadTask:(id)a1 didWriteData:(long long)a2 totalBytesWritten:(long long)a3 totalBytesExpectedToWrite:(long long)a4; - (void)resume; - (void)URLSession:(id)a0 task:(id)a1 didCompleteWithError:(id)a2; - (id)defaultSessionConfiguration; - (void).cxx_destruct; - (void)URLSessionDidFinishEventsForBackgroundURLSession:(id)a0; - (void)flushCache; - (void)URLSession:(id)a0 dataTask:(id)a1 didBecomeDownloadTask:(id)a2; - (id)cookiesForURL:(id)a0; - (void)setCookie:(id)a0; - (id)_cachedResponseForRequest:(id)a0; - (void)configureSession; - (void)applicationDidEnterBackgroundNotification:(id)a0; - (void)applicationWillEnterForegroundNotification:(id)a0; - (void)configureSession:(id)a0; - (long long)priorityForCategory:(id)a0; - (void)addRewriteRule:(id)a0; - (void)deleteCookiesMatchingPredicate:(id)a0; - (void)clearOldCaches:(id)a0; - (void)_removeCachedResponseForRequest:(id)a0; - (void)_removeCachedResponseForRequest:(id)a0 force:(BOOL)a1; - (void)addCacheLocation:(id)a0; - (id)allCookies; - (void)applicationDidBecomeActiveNotification:(id)a0; - (void)applyRewriteRules:(id)a0; - (void)backgroundClearOldCaches:(id)a0; - (void)backgroundRemoveCachedResponseForRequest:(id)a0; - (id)cachableFileAttributes:(id)a0; - (void)cancelTasks:(id)a0; - (id)configuredURLRequestForTask:(id)a0 download:(BOOL *)a1 resumeData:(id *)a2; - (unsigned long long)connectionsLimitForPriorityOfTask:(id)a0; - (BOOL)deleteCookie:(id)a0 inDomain:(id)a1 secure:(BOOL)a2; - (id)downloadCachedResponse:(id)a0; - (id)downloadCachesDirectory; - (id)downloadImageFromURL:(id)a0 category:(id)a1 completionHandler:(id /* block */)a2; - (id)downloadImageWithRequest:(id)a0 category:(id)a1 completionHandler:(id /* block */)a2; - (id)downloadRequest:(id)a0 category:(id)a1 completionHandler:(id /* block */)a2; - (id)downloadRequest:(id)a0 toPath:(id)a1 category:(id)a2 completionHandler:(id /* block */)a3; - (id)downloadURL:(id)a0 category:(id)a1 completionHandler:(id /* block */)a2; - (id)downloadURL:(id)a0 toPath:(id)a1 category:(id)a2 completionHandler:(id /* block */)a3; - (id)duplicateTasksForTask:(id)a0; - (void)enqueueTask:(id)a0 reschedule:(BOOL)a1; - (void)enumerateCookies:(id)a0 inDomain:(id)a1 secure:(BOOL)a2 withBlock:(id /* block */)a3; - (void)enumerateCookies:(id)a0 secure:(BOOL)a1 cookies:(id)a2 withBlock:(id /* block */)a3; - (id)findCookie:(id)a0 inDomain:(id)a1 secure:(BOOL)a2; - (id)findCookie:(id)a0 inDomain:(id)a1 secure:(BOOL)a2 cookies:(id)a3; - (id)findMatchingCookies:(id)a0 inDomain:(id)a1 secure:(BOOL)a2; - (id)imagesDownloadDirectory; - (void)internalRestart:(id /* block */)a0; - (id)loadRequest:(id)a0 category:(id)a1 completionHandler:(id /* block */)a2; - (id)loadRequest:(id)a0 category:(id)a1 completionHandler:(id /* block */)a2 receiveData:(id /* block */)a3; - (id)loadURL:(id)a0 category:(id)a1 completionHandler:(id /* block */)a2; - (id)loaderTaskForSessionTask:(id)a0; - (void)notifyBackgroundStopped; - (void)notifyEmptyQueue; - (void)notifyEnqueue; - (void)operationCancelTask:(id)a0; - (void)operationReschedule; - (void)operationRestartSession; - (void)operationResumeSession; - (void)operationSuspendSession; - (void)processURLRequestRewrite:(id)a0; - (void)removeAllRewriteRules; - (void)removeRewriteRule:(id)a0; - (void)removeRewriteRules:(id)a0; - (void)removeRewriteRulesWithName:(id)a0; - (void)setCategory:(id)a0 forTask:(id)a1; - (void)setCategory:(id)a0 forTasks:(id)a1; - (void)setPriority:(long long)a0 forCategory:(id)a1; - (void)setupCache:(BOOL)a0; - (void)storeResumeData:(id)a0 forTask:(id)a1; - (void)task:(id)a0 completedWithError:(id)a1; - (void)updateDownloadCacheEntry:(id)a0; @end