luxlabs header browser preview


@class TSPComponentObjectUUIDMap, NSString, NSArray, TSPComponentDataReferenceMap, NSDate, NSMapTable, NSObject, TSPComponentExternalReferenceMap, TSPObject, NSIndexSet, TSPObjectReferenceMap;
@protocol TSPComponentDelegate, OS_dispatch_queue;

@interface TSPComponent : NSObject <NSDiscardableContent> {
    _Atomic int _accessCount;
    id<TSPComponentDelegate> _delegate;
    NSObject<OS_dispatch_queue> *_concurrentAccessQueue;
    NSString *_locator;
    unsigned long long _documentReadVersion;
    unsigned long long _documentWriteVersion;
    unsigned long long _componentReadVersion;
    unsigned long long _componentRequiredVersion;
    unsigned long long _saveToken;
    TSPObject *_strongRootObject;
    TSPObject *_weakRootObject;
    NSMapTable *_writtenObjects;
    TSPComponentExternalReferenceMap *_externalReferenceMap;
    NSIndexSet *_ambiguousReferences;
    _Atomic struct _flags;
}

@property (readonly, nonatomic) long long identifier;
@property (readonly, nonatomic) NSString *preferredLocator;
@property (readonly, nonatomic) NSString *locator;
@property (readonly, nonatomic) unsigned long long documentReadVersion;
@property (readonly, nonatomic) unsigned long long documentWriteVersion;
@property (readonly, nonatomic) unsigned long long componentReadVersion;
@property (readonly, nonatomic) unsigned long long componentRequiredVersion;
@property (readonly, nonatomic) BOOL canBeDropped;
@property (readonly, nonatomic) BOOL isWasteful;
@property (readonly, nonatomic) NSIndexSet *ambiguousReferences;
@property (readonly, nonatomic) unsigned char requiredPackageIdentifier;
@property (readonly, nonatomic) long long compressionAlgorithm;
@property (readonly, nonatomic) NSArray *featureInfos;
@property (readonly, nonatomic) BOOL isStoredOutsideObjectArchive;
@property (readonly, nonatomic) TSPComponentDataReferenceMap *persistedComponentDataReferenceMap;
@property (readonly, nonatomic) TSPComponentDataReferenceMap *upgradedComponentDataReferenceMap;
@property (readonly, nonatomic) TSPComponentObjectUUIDMap *componentObjectUUIDMap;
@property (readonly, nonatomic) unsigned long long saveToken;
@property (readonly, nonatomic) unsigned long long encodedLength;
@property (readonly, nonatomic) NSDate *lastModificationDate;
@property (readonly, nonatomic) BOOL incompatibleVersion;
@property (readonly, nonatomic) TSPObjectReferenceMap *objectReferenceMap;
@property (readonly) unsigned char packageIdentifier;
@property (retain) TSPObject *rootObject;
@property (readonly) BOOL modified;
@property (readonly) BOOL persisted;
@property (readonly) BOOL needsArchiving;
@property (readonly, nonatomic) BOOL isTransientComponent;

+ (id)componentsDiscardingContentOnCurrentThread;

- (id)init;
- (void)discardContentIfPossible;
- (BOOL)beginContentAccess;
- (id)description;
- (void).cxx_destruct;
- (BOOL)isContentDiscarded;
- (void)endContentAccess;
- (id)additionalDescription;
- (BOOL)isCachingEnabled;
- (void)didReadObjects:(id)a0;
- (id)initWithDelegate:(id)a0 identifier:(long long)a1 preferredLocator:(id)a2 packageIdentifier:(unsigned char)a3;
- (void)markAsDiscarded;
- (BOOL)addExternalReferenceToObjectOrLazyReference:(id)a0 isWeak:(BOOL)a1 externalReferenceMap:(id)a2 delegate:(id)a3;
- (void)continueDiscardingContentIfPossibleUsingBlock:(id /* block */)a0;
- (void)discardContentIfPossibleFromNSCache:(BOOL)a0;
- (void)enumerateExternalReferences:(id /* block */)a0;
- (struct ComponentExternalReferenceInfo { long long x0; BOOL x1; BOOL x2; })externalReferenceInfoForObjectIdentifier:(long long)a0;
- (id)initWithDelegate:(id)a0 message:(const void *)a1 packageIdentifier:(unsigned char)a2 encodedLength:(unsigned long long)a3 lastModificationDate:(id)a4;
- (id)initWithDelegate:(id)a0 rootObject:(id)a1;
- (BOOL)isDiscardingContent;
- (BOOL)needsArchivingImpl;
- (id)newExternalReferenceMapWithStrongReferences:(id)a0 weakReferences:(id)a1 delegate:(id)a2;
- (id)newUpdatedExternalReferenceMapUsingDelegate:(id)a0;
- (id)p_locator;
- (void)p_setLocator:(id)a0;
- (void)performSynchronousDiscardContentIfPossibleUsingBlock:(id /* block */)a0;
- (void)saveToMessage:(void *)a0 saveToken:(unsigned long long)a1 writtenComponentInfo:(const struct WrittenComponentInfo { id x0; id x1; BOOL x2; BOOL x3; id x4; BOOL x5; BOOL x6; BOOL x7; id x8; id x9; BOOL x10; unsigned char x11; long long x12; unsigned long long x13; unsigned long long x14; unsigned long long x15; unsigned long long x16; BOOL x17; id x18; id x19; id x20; id x21; id x22; id x23; id x24; id x25; } *)a2;
- (void)setArchivedObjectsImpl:(id)a0;
- (void)setComponentObjectUUIDMap:(id)a0;
- (void)setDocumentReadVersion:(unsigned long long)a0 documentWriteVersion:(unsigned long long)a1 componentObjectUUIDMap:(id)a2;
- (void)setEncodedLength:(unsigned long long)a0 lastModificationDate:(id)a1;
- (void)setModified:(BOOL)a0 forObject:(id)a1;
- (void)setModified:(BOOL)a0 forObject:(id)a1 isDocumentUpgrade:(BOOL)a2;
- (void)setModifiedImpl:(BOOL)a0 forObject:(id)a1;
- (void)setPackageIdentifier:(unsigned char)a0 preferredLocator:(id)a1 locator:(id)a2 isStoredOutsideObjectArchive:(BOOL)a3 compressionAlgorithm:(long long)a4 rootObjectOrNil:(id)a5 archivedObjects:(id)a6 externalReferenceMap:(id)a7 persistedComponentDataReferenceMap:(id)a8 ambiguousReferences:(id)a9 documentReadVersion:(unsigned long long)a10 documentWriteVersion:(unsigned long long)a11 componentReadVersion:(unsigned long long)a12 componentRequiredVersion:(unsigned long long)a13 canBeDropped:(BOOL)a14 isWasteful:(BOOL)a15 requiredPackageIdentifier:(unsigned char)a16 featureInfos:(id)a17 componentObjectUUIDMap:(id)a18 objectReferenceMap:(id)a19 saveToken:(unsigned long long)a20 encodedLength:(unsigned long long)a21 lastModificationDate:(id)a22 wasCopied:(BOOL)a23 wasModifiedDuringWrite:(BOOL)a24;
- (void)setUpgradedComponentDataReferenceMap:(id)a0;
- (BOOL)shouldForceCaching;
- (BOOL)shouldKeepStrongObjectImpl;
- (void)willDiscardComponent;

@end