luxlabs header browser preview


@class NSURL, SFUCryptoKey, NSMapTable, NSObject, TSUTemporaryDirectory, NSString, TSPDataManager, TSPObjectContainer, NSRecursiveLock, TSPObject, NSData, NSUUID;
@protocol OS_dispatch_queue, TSPObjectContextDelegate, OS_dispatch_group;

@interface TSPObjectContext : NSObject <TSPFileCoordinatorDelegate, TSPObjectDelegate, TSPLazyReferenceDelegate, TSPSupportDirectoryDelegate, TSPDocumentResourceDownloader, TSPPassphraseConsumer> {
    long long _lastObjectIdentifier;
    long long _modifyObjectToken;
    int _modifyObjectCount;
    unsigned int _mode;
    SFUCryptoKey *_decryptionKey;
    NSURL *_documentURL;
    NSURL *_supportURL;
    NSMapTable *_objects;
    NSObject<OS_dispatch_queue> *_objectsQueue;
    NSObject<OS_dispatch_queue> *_writeQueue;
    NSRecursiveLock *_readLock;
    NSObject<OS_dispatch_queue> *_documentStateQueue;
    NSObject<OS_dispatch_queue> *_loadObserversQueue;
    NSObject<OS_dispatch_queue> *_runLoadObserversQueue;
    NSObject<OS_dispatch_queue> *_documentResourceDataProviderQueue;
    BOOL _isWaitingForEndSave;
    NSObject<OS_dispatch_group> *_pendingEndSaveGroup;
    NSObject<OS_dispatch_group> *_outstandingReadsGroup;
    NSObject<OS_dispatch_queue> *_temporaryDirectoryQueue;
    TSUTemporaryDirectory *_temporaryDirectory;
    struct unordered_map<const long long, NSMutableArray *, TSP::IdentifierHash, std::equal_to<const long long>, std::allocator<std::pair<const long long, NSMutableArray *>>> { struct __hash_table<std::__hash_value_type<const long long, NSMutableArray *>, std::__unordered_map_hasher<const long long, std::__hash_value_type<const long long, NSMutableArray *>, TSP::IdentifierHash, std::equal_to<const long long>>, std::__unordered_map_equal<const long long, std::__hash_value_type<const long long, NSMutableArray *>, std::equal_to<const long long>, TSP::IdentifierHash>, std::allocator<std::__hash_value_type<const long long, NSMutableArray *>>> { struct unique_ptr<std::__hash_node_base<std::__hash_node<std::__hash_value_type<const long long, NSMutableArray *>, void *> *> *[], std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<const long long, NSMutableArray *>, void *> *> *>>> { struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<const long long, NSMutableArray *>, void *> *> **, std::__bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<const long long, NSMutableArray *>, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator<std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<const long long, NSMutableArray *>, void *> *> *>> { struct __compressed_pair<unsigned long, std::allocator<std::__hash_node_base<std::__hash_node<std::__hash_value_type<const long long, NSMutableArray *>, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair<std::__hash_node_base<std::__hash_node<std::__hash_value_type<const long long, NSMutableArray *>, void *> *>, std::allocator<std::__hash_node<std::__hash_value_type<const long long, NSMutableArray *>, void *>>> { struct __hash_node_base<std::__hash_node<std::__hash_value_type<const long long, NSMutableArray *>, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair<unsigned long, std::__unordered_map_hasher<const long long, std::__hash_value_type<const long long, NSMutableArray *>, TSP::IdentifierHash, std::equal_to<const long long>>> { unsigned long long __value_; } __p2_; struct __compressed_pair<float, std::__unordered_map_equal<const long long, std::__hash_value_type<const long long, NSMutableArray *>, std::equal_to<const long long>, TSP::IdentifierHash>> { float __value_; } __p3_; } __table_; } _loadObservers;
}

@property (readonly, nonatomic) BOOL ignoreDocumentSupport;
@property (readonly, nonatomic) BOOL isDocumentSupportTemporary;
@property (readonly, nonatomic) BOOL ignoreUnknownContentWhileReading;
@property (readonly, nonatomic) BOOL ignoreVersionCheckingWhileReading;
@property (readonly, nonatomic) BOOL ignoreDocumentResourcesWhileReading;
@property (readonly, nonatomic) TSPDataManager *dataManager;
@property (retain, nonatomic) TSPObjectContainer *documentObjectContainer;
@property (retain, nonatomic) TSPObjectContainer *supportObjectContainer;
@property (readonly, nonatomic) BOOL documentHasCurrentFileFormatVersion;
@property (nonatomic) long long lastObjectIdentifier;
@property (retain, nonatomic) NSData *passwordVerifier;
@property (readonly, nonatomic) BOOL areNewExternalReferencesToDataAllowed;
@property (readonly, nonatomic) NSUUID *documentUUID;
@property (readonly, nonatomic) NSUUID *versionUUID;
@property (retain, nonatomic) TSPObject *supportObject;
@property (readonly, nonatomic) SFUCryptoKey *decryptionKey;
@property (readonly, nonatomic) NSURL *documentURL;
@property (nonatomic) BOOL isDocumentModified;
@property (nonatomic) BOOL isSupportModified;
@property (nonatomic) BOOL isPasswordProtected;
@property (copy, nonatomic) NSString *documentPasswordHint;
@property (readonly, nonatomic) TSPObject *documentObject;
@property (weak, nonatomic) id<TSPObjectContextDelegate> delegate;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;
@property (readonly, nonatomic) TSPObjectContext *context;
@property (readonly, nonatomic) BOOL needsDownload;
@property (readonly, nonatomic) long long estimatedDownloadSize;
@property (readonly, nonatomic) BOOL isEstimatedDownloadSizePrecise;
@property (readonly, nonatomic) NSString *passphraseHint;
@property (readonly, nonatomic) NSData *keychainGenericItem;
@property (readonly, nonatomic) NSString *service;

+ (void)waitForPendingEndSaveGroup:(id)a0;

- (void)close;
- (id)init;
- (void)dealloc;
- (id)objectForIdentifier:(long long)a0;
- (id).cxx_construct;
- (id)temporaryDirectory;
- (void).cxx_destruct;
- (id)initWithDelegate:(id)a0;
- (id)documentRoot;
- (void)endIgnoringCachedObjectEviction;
- (void)addLoadObserver:(id)a0 action:(SEL)a1 forLazyReference:(id)a2;
- (void)addLoadObserver:(id)a0 action:(SEL)a1 forObjectIdentifier:(long long)a2 objectOrNil:(id)a3;
- (id)addLoadedObjectsAndEnqueueNotifications:(id)a0;
- (BOOL)areExternalReferencesSupported;
- (BOOL)areExternalReferencesToDataAllowedAtURL:(id)a0;
- (void)beginAssertOnModify;
- (void)beginIgnoringCachedObjectEviction;
- (void)beginWriteOperation;
- (void)checkforDataWarningsWithPackageURL:(id)a0;
- (id)dataOrNilForIdentifier:(long long)a0;
- (void)didMoveSupportToURL:(id)a0;
- (void)didMoveToURL:(id)a0;
- (void)didReadDocumentObject:(id)a0;
- (void)endAssertOnModify;
- (void)endWriteOperation;
- (long long)incrementLastObjectIdentifier:(long long)a0;
- (long long)modifyObjectTokenForNewObject;
- (long long)newObjectIdentifier;
- (void)performReadOperation:(id /* block */)a0;
- (void)performReadOperationOnKnownObjects:(id /* block */)a0;
- (void)resumeLoadingModifiedFlushedComponents;
- (void)runObjectNotificationsInQueue:(id)a0;
- (void)setDocumentObject:(id)a0;
- (id)supportDirectoryURL;
- (void)suspendLoadingModifiedFlushedComponentsAndWait;
- (long long)updateModifyObjectToken;
- (void)waitForSaveToFinishIfNeeded;

@end