luxlabs header browser preview


@class EDDataDetectionPersistence, NSString, EDMessagePersistence, EDRichLinkPersistence, NSDictionary, NSObject, EDPersistenceDatabase;
@protocol OS_os_log, EDSearchableIndexHookResponder;

@interface EDSearchableIndexPersistence : NSObject <EFLoggable, EFSignpostable, EDPersistenceDatabaseSchemaProvider, EDSearchableIndexDataSource> {
    _Atomic unsigned char _currentIndexingTypeIndex;
    struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _lastProcessedAttachmentIDLock;
    EDDataDetectionPersistence *_dataDetectionPersistence;
}

@property (class, readonly, copy, nonatomic) NSString *searchableMessagesTableName;
@property (class, readonly) NSObject<OS_os_log> *log;
@property (class, readonly) NSObject<OS_os_log> *signpostLog;

@property (readonly, weak, nonatomic) id<EDSearchableIndexHookResponder> hookResponder;
@property (readonly, nonatomic) EDMessagePersistence *messagePersistence;
@property (readonly, nonatomic) EDRichLinkPersistence *richLinkPersistence;
@property unsigned long long rebuildIndexState;
@property long long lastProcessedAttachmentID;
@property (readonly, nonatomic) EDPersistenceDatabase *database;
@property (readonly, nonatomic) NSDictionary *statistics;
@property (readonly, nonatomic) NSString *additionalFilterClause;
@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;
@property (readonly) unsigned long long signpostID;

+ (id)searchableMessagesTableSchema;
+ (id)tablesAndForeignKeysToResolve:(id *)a0 associationsToResolve:(id *)a1;
+ (id)searchableMessageTombstonesTableSchema;
+ (id)searchableRichLinksTableSchema;
+ (id)searchableRebuildTableSchema;
+ (id)searchableDataDetectionResultsTableSchema;
+ (id)searchableAttachmentsTableSchema;

- (id)searchableIndexItemsFromMessages:(id)a0 type:(long long)a1;
- (id)verificationDataSamplesFromMessageIDTransactionIDDictionary:(id)a0;
- (void)allMailboxIdentifiersForMessage:(id)a0 result:(id /* block */)a1;
- (void).cxx_destruct;
- (id)initWithDatabase:(id)a0 messagePersistence:(id)a1 richLinkPersistence:(id)a2 hookResponder:(id)a3;
- (void)attachmentItemMetadataForAttachmentID:(id)a0 attachmentPersistentID:(id)a1 messagePersistentID:(id)a2 name:(id)a3 mailboxID:(long long)a4 result:(id /* block */)a5;
- (void)attachmentItemMetadataForAttachmentID:(id)a0 messagePersistentID:(id)a1 name:(id)a2 mailboxID:(long long)a3 result:(id /* block */)a4;
- (id)messagesWhere:(id)a0 useSearchableRebuildTable:(BOOL)a1 limit:(long long)a2;
- (void)_addSearchableDataDetectionResults:(id)a0 withMessage:(id)a1 transaction:(long long)a2;
- (void)_addTombstonesForIdentifiers:(id)a0 type:(long long)a1 connection:(id)a2;
- (id)_assignIndexedAttachmentItems:(id)a0 transaction:(long long)a1 connection:(id)a2;
- (void)_assignIndexedDataDetectionItems:(id)a0 transaction:(long long)a1 connection:(id)a2;
- (id)_assignIndexedItems:(id)a0 connection:(id)a1 query:(id)a2 indexedBindingsGenerator:(id /* block */)a3;
- (id)_assignIndexedItems:(id)a0 transaction:(long long)a1 connection:(id)a2;
- (id)_assignIndexedRichLinkItems:(id)a0 transaction:(long long)a1 connection:(id)a2;
- (void)_assignTombstonesForIdentifiers:(id)a0 type:(long long)a1 transaction:(long long)a2 connection:(id)a3;
- (id)_attachmentDataForItemsRequiringIndexingExcludingIdentifiers:(id)a0 limit:(unsigned long long)a1 cancelationToken:(id)a2 connection:(id)a3;
- (id)_attachmentDataForMessageWithIdentifier:(id)a0 connection:(id)a1;
- (id)_attachmentItemsFromAttachmentData:(id)a0 limit:(unsigned long long)a1 cancelationToken:(id)a2;
- (BOOL)_canPerformIncrementalIndexForIdentifier:(id)a0 indexingType:(long long)a1;
- (void)_enumerateSearchableIndexMessageIndexingTypesUsingBlock:(id /* block */)a0;
- (id)_identifiersForAttachmentsInTransactions:(id)a0 usingConnection:(id)a1;
- (id)_identifiersForAttachmentsWithQuery:(id)a0 usingConnection:(id)a1;
- (id)_identifiersForDeletedAttachmentsUsingConnection:(id)a0;
- (id)_identifiersForDeletedMessagesUsingConnection:(id)a0;
- (id)_identifiersForRemovedItemsUsingConnection:(id)a0;
- (id)_identifiersForTombstonesOfType:(long long)a0 connection:(id)a1;
- (id)_messageIDTransactionIDDictionaryToVerifyUsingConnection:(id)a0 count:(unsigned long long)a1 lastVerifiedMessageID:(long long)a2;
- (id)_messagesRequiringIndexingForType:(long long)a0 excludingIdentifiers:(id)a1 limit:(long long)a2;
- (void)_purgeSpotlightTombstonesBeforeTransaction:(long long)a0 connection:(id)a1;
- (void)_removeIndexedIdentifiers:(id)a0 connection:(id)a1;
- (id)_richLinkDataForItemsRequiringIndexingExcludingIdentifiers:(id)a0 limit:(unsigned long long)a1 cancelationToken:(id)a2 connection:(id)a3;
- (id)_richLinkItemsFromRichLinkData:(id)a0 limit:(unsigned long long)a1 cancelationToken:(id)a2;
- (id)_searchableIndexMessageIndexingTypes;
- (id)childIdentifiersToRemoveFromSearchableIndex:(id)a0 whenRemovingParentIdentifiers:(id)a1;
- (void)clearOrphanedSearchableMessagesFromDatabase;
- (id)distinctTransactionIDsForSearchableIndex:(id)a0;
- (long long)indexingTypeForSearchableIndex:(id)a0 item:(id)a1;
- (void)searchableIndex:(id)a0 assignIndexingType:(long long)a1 forIdentifiers:(id)a2;
- (id)searchableIndex:(id)a0 assignTransaction:(long long)a1 updates:(id)a2;
- (id)searchableIndex:(id)a0 attachmentItemsForMessageWithIdentifier:(id)a1;
- (void)searchableIndex:(id)a0 invalidateItemsGreaterThanTransaction:(long long)a1;
- (id)searchableIndex:(id)a0 invalidateItemsInTransactions:(id)a1;
- (void)searchableIndex:(id)a0 prepareToIndexAttachmentsForMessageWithIdentifier:(id)a1;
- (void)searchableIndex:(id)a0 willRemoveIdentifiers:(id)a1 type:(long long)a2;
- (void)searchableRichLinkItemMetadataForRichLinkID:(id)a0 richLinkItemIdentifier:(id)a1 messagePersistentID:(id)a2 mailboxID:(long long)a3 title:(id)a4 url:(id)a5 result:(id /* block */)a6;
- (id)updatesForSearchableIndex:(id)a0 excludingIdentifiers:(id)a1 count:(unsigned long long)a2 cancelationToken:(id)a3;
- (id)verificationDataSamplesForSearchableIndex:(id)a0 count:(unsigned long long)a1 lastVerifiedMessageID:(long long)a2;

@end