luxlabs header browser preview


@class _EMSearchableIndexPendingRemovals, EMCoreAnalyticsCollector, NSDate, EFStoppableScheduler, EFCancelationToken, EFLazyCache, NSObject, NSMutableArray, CSSearchableIndex, EFObservable, NSString, EFFuture, NSMutableSet;
@protocol EDSearchableIndexDataSource, OS_os_activity, EDSearchableIndexReasonProvider, EFSuspendableScheduler, EDSearchableIndexSchedulableDelegate, EFCancelable, OS_os_log, EFAssertableScheduler;

@interface EDSearchableIndex : NSObject <CSSearchableIndexDelegate, EDSearchableIndexVerifierDataSource, EFSignpostable, EFLoggable, EDSearchableIndexSchedulable, EMSearchableIndexInterface> {
    NSString *_indexName;
    EFCancelationToken *_cancelationToken;
    id<EFCancelable> _stateCancelable;
    EFStoppableScheduler<EFAssertableScheduler> *_stateTransitionScheduler;
    id<EFCancelable> _coalescingTimer;
    long long _resumeCount;
    long long _transaction;
    unsigned long long _throttledIndexingBatchSize;
    unsigned long long _throttledDataSourceBatchSize;
    unsigned long long _currentMaximumBatchSize;
    NSObject<OS_os_activity> *_batchIndexingActivity;
    NSMutableSet *_removedIdentifiers;
    NSMutableArray *_preparingItems;
    NSMutableArray *_pendingItems;
    NSMutableArray *_preprocessingItems;
    NSMutableArray *_processingItems;
    NSMutableSet *_pendingDomainRemovals;
    _EMSearchableIndexPendingRemovals *_pendingIdentifierRemovals;
    EFStoppableScheduler<EFSuspendableScheduler, EFAssertableScheduler> *_indexingScheduler;
    EFStoppableScheduler *_dataSourceScheduler;
    EFStoppableScheduler *_addIndexItemsScheduler;
    EFStoppableScheduler *_preprocessingScheduler;
    struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _mainThreadAccessibleIvarLock;
    EFStoppableScheduler *_indexingBatchScheduler;
    EFLazyCache *_searchResultsCache;
    BOOL _isActive;
    BOOL _needsRefresh;
    BOOL _needsVerification;
    BOOL _coalesceTimerFired;
    BOOL _scheduledProcessing;
    BOOL _scheduledRefresh;
    BOOL _scheduledVerification;
    BOOL _indexImmediately;
    _Atomic long long _countOfBlocksAffectingDataSourceAndIndex;
    NSDate *_lastReindexRadarPrompt;
}

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

@property (readonly, getter=_transaction) long long transaction;
@property (retain, nonatomic) CSSearchableIndex *searchIndex;
@property (readonly) unsigned long long currentMaximumBatchSize;
@property (readonly, copy, nonatomic) NSString *copyDiagnosticInformation;
@property (nonatomic) BOOL skipIndexExclusionCheck;
@property (nonatomic) BOOL clientStateFetched;
@property (nonatomic) BOOL enableSpotlightVerification;
@property (copy, nonatomic) NSString *searchableIndexBundleID;
@property (nonatomic) double coalescingDelaySeconds;
@property (nonatomic) double dataSourceUpdateTimeLimit;
@property (readonly) long long resumeCount;
@property (readonly, getter=isActive) BOOL active;
@property (retain, nonatomic) EFFuture *delayDataSourceAssignmentFuture;
@property (readonly, nonatomic) EMCoreAnalyticsCollector *analyticsCollector;
@property (readonly, copy, nonatomic) NSString *indexName;
@property (weak, nonatomic) id<EDSearchableIndexDataSource> dataSource;
@property (weak, nonatomic) id<EDSearchableIndexReasonProvider> reasonProvider;
@property (weak, nonatomic) id<EDSearchableIndexSchedulableDelegate> schedulableDelegate;
@property (readonly, nonatomic) unsigned long long pendingIndexItemsCount;
@property (nonatomic) BOOL isIndexingDisabled;
@property (readonly, getter=isPerformingBlockAffectingDataSourceAndIndex) BOOL performingBlockAffectingDataSourceAndIndex;
@property (getter=isPersistenceAvailable) BOOL persistenceAvailable;
@property (readonly, nonatomic) EFObservable *powerObservable;
@property (readonly, nonatomic, getter=isPluggedIn) BOOL pluggedIn;
@property (readonly, nonatomic) BOOL shouldCancelSearchQuery;
@property (readonly, nonatomic) BOOL canIndexAttachments;
@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;
@property (nonatomic, getter=isDataSourceIndexingPermitted) BOOL dataSourceIndexingPermitted;

+ (BOOL)isIncrementalIndexingType:(long long)a0;
+ (id)_localClientState;
+ (id)_localClientStateURL;
+ (id)_reindexReasonString:(long long)a0;
+ (void)_saveLocalClientState:(id)a0;
+ (BOOL)isValidTransaction:(long long)a0;

- (void)searchableIndex:(id)a0 reindexAllSearchableItemsWithAcknowledgementHandler:(id /* block */)a1;
- (void)setForeground:(BOOL)a0;
- (void)searchableIndex:(id)a0 reindexSearchableItemsWithIdentifiers:(id)a1 acknowledgementHandler:(id /* block */)a2;
- (void)dealloc;
- (void)reindexAllSearchableItemsWithAcknowledgementHandler:(id /* block */)a0;
- (void)_invalidateCache;
- (void)removeAllItems;
- (void)suspend;
- (void)_suspend;
- (void)_resume;
- (void)refresh;
- (id)initWithName:(id)a0 dataSource:(id)a1 reasonProvider:(id)a2;
- (void)scheduleRecurringActivity;
- (void)logPowerEventWithIdentifier:(id)a0 eventData:(id)a1;
- (id)currentReasons;
- (void)resume;
- (void).cxx_destruct;
- (id)purgeReasons;
- (id)exclusionReasons;
- (void)applicationWillSuspend;
- (void)test_tearDown;
- (void)addSearchQueryCancelable:(id)a0;
- (void)indexMessages:(id)a0 includeBody:(BOOL)a1 indexingType:(long long)a2;
- (void)applicationWillResume;
- (id)dataSourceRefreshReasons;
- (void)removeSearchQueryCancelable:(id)a0;
- (void)removeItemsWithIdentifiers:(id)a0;
- (void)removeItemsForDomainIdentifier:(id)a0;
- (void)_registerStateCaptureHandler;
- (void)attachmentBecameAvailable:(id)a0;
- (void)indexItems:(id)a0;
- (void)indexItems:(id)a0 immediately:(BOOL)a1;
- (void)reindexSearchableItemsWithIdentifiers:(id)a0 acknowledgementHandler:(id /* block */)a1;
- (id)searchableItemSnippetDataMatchingCriterion:(id)a0;
- (void)_dataSourceRequestNeededUpdatesExcludingIdentifiers:(id)a0 completion:(id /* block */)a1;
- (void)_invalidateItemsInTransactions:(id)a0;
- (void)_sendAnalyticsForReindexReason:(long long)a0;
- (void)removeMessages:(id)a0;
- (void)_clearOrphanedSearchableMessagesFromDatabase;
- (void)_coalescingTimerFired;
- (void)_collectAnalyticsForReindexReason:(long long)a0;
- (void)_collectAnalyticsForReindexReason:(long long)a0 withInfo:(id)a1;
- (id)_consumeBatchOfSize:(unsigned long long)a0;
- (unsigned long long)_countOfItemsInPendingQueues;
- (void)_dataSourceAssignTransaction:(long long)a0 forIdentifiers:(id)a1 completion:(id /* block */)a2;
- (void)_dataSourceAssignTransaction:(long long)a0 updates:(id)a1 completion:(id /* block */)a2;
- (void)_dataSourceInvalidateItemsGreaterThanTransaction:(long long)a0 completion:(id /* block */)a1;
- (void)_dataSourcePrepareToIndexItems:(id)a0 fromRefresh:(BOOL)a1 withCompletion:(id /* block */)a2;
- (void)_dataSourceScheduleWork:(id /* block */)a0;
- (void)_dataSourceVerifyRepresentativeSampleWithCompletion:(id /* block */)a0;
- (void)_doIndexItems:(id)a0 fromRefresh:(BOOL)a1 immediately:(BOOL)a2;
- (id)_eventDataForTransitionState:(id)a0;
- (void)_fetchLastClientState;
- (void)_getDomainRemovals:(id *)a0 identifierRemovals:(id *)a1;
- (void)_handleFailingTransactionIDs:(id)a0;
- (id)_identifiersForItems:(id)a0;
- (id)_identifiersStringForItems:(id)a0 maxLength:(unsigned long long)a1;
- (void)_indexItems:(id)a0 fromRefresh:(BOOL)a1 immediately:(BOOL)a2;
- (void)_logSignpostForIndexingBatchAssignedDomainRemovalCount:(unsigned long long)a0;
- (void)_logSignpostForIndexingBatchAssignedUpdatesWithItemsIndexedCount:(unsigned long long)a0;
- (void)_logSignpostForIndexingBatchCompletedWithItemsIndexedCount:(id)a0;
- (void)_logSignpostForIndexingBatchStartWithPendingItemsCount:(id)a0;
- (long long)_nextTransaction;
- (void)_noteNeedsLastClientStateFetch;
- (id)_pendingIdentifiers;
- (void)_powerStateChanged;
- (BOOL)_preprocessItemIfNecessary:(id)a0 fromRefresh:(BOOL)a1;
- (id)_processDomainRemovals:(id)a0;
- (void)_processIdentifierRemovals:(id)a0;
- (BOOL)_processIndexingBatch:(id)a0 clientState:(id)a1 itemsNotIndexed:(id)a2;
- (void)_processRefreshRequestWithCompletion:(id /* block */)a0;
- (void)_processSpotlightVerificationWithCompletion:(id /* block */)a0;
- (void)_promptToFileRadarAboutReindexing:(id /* block */)a0;
- (void)_queueConsumeBudgetElapsedPeriod:(double)a0;
- (void)_queueConsumeBudgetItemCount:(unsigned long long)a0;
- (BOOL)_queueContentsAllowsRefresh;
- (void)_queueRefresh;
- (void)_queueTransitionActive:(BOOL)a0 fromRefresh:(BOOL)a1;
- (void)_registerDistantFutureSpotlightVerification;
- (void)_resumeIndexingScheduler;
- (void)_scheduleDataSourceRefresh;
- (void)_scheduleProcessPendingItemsFromRefresh:(BOOL)a0;
- (void)_scheduleSpotlightVerification;
- (void)_scheduleSpotlightVerificationOnIndexingQueueWithCompletion:(id /* block */)a0;
- (void)_startCoalescingTimer;
- (void)_stopCoalescingTimer;
- (void)_storeLastKnownReindexReason:(long long)a0 withInfo:(id)a1;
- (void)_suspendIndexingScheduler;
- (double)_throttleRequestedSize:(unsigned long long *)a0 targetTime:(double)a1 action:(id /* block */)a2;
- (void)_transitionWithBudgetTimeUsed:(double)a0;
- (void)_verifySpotlightIndex;
- (void)beginUpdatesAffectingDataSourceAndIndex;
- (id)bundleIDForSearchableIndexVerifier:(id)a0;
- (id)dataSamplesForSearchableIndexVerifier:(id)a0 searchableIndex:(id)a1 count:(unsigned long long)a2 lastVerifiedMessageID:(long long)a3;
- (void)endUpdatesAffectingDataSourceAndIndex;
- (void)indexAttachmentsForMessageWithIdentifier:(id)a0 immediately:(BOOL)a1;
- (void)indexItems:(id)a0 fromRefresh:(BOOL)a1 immediately:(BOOL)a2;
- (void)indexRichLinksForMessageWithIdentifier:(id)a0 immediately:(BOOL)a1;
- (id)indexedEmptySubjectIdentifers;
- (id)issueDiagnosticsRequestForMessageRowId:(id)a0;
- (id)knownTransactionIDsForSearchableIndexVerifier:(id)a0;
- (void)markMessagesAsPrinted:(id)a0;
- (id)messageIDsMatchingQuery:(id)a0;
- (void)performBlockAffectingDataSourceAndIndex:(id /* block */)a0;
- (void)reindexAllItemsWithOptions:(unsigned long long)a0 acknowledgementHandler:(id /* block */)a1;
- (void)removeAllItemsWithAcknowledgementHandler:(id /* block */)a0;
- (void)removeItemsWithIdentifiers:(id)a0 reasons:(id)a1 fromRefresh:(BOOL)a2;
- (void)richLinkBecameAvailable:(id)a0;
- (id)searchableIndexForSearchableIndexVerifier:(id)a0;

@end