luxlabs header browser preview


@class NSString, _PASLock, _PASDatabaseMigrator;

@interface SGMIFeatureStore : NSObject <_PASDatabaseMigrationProtocol> {
    _PASLock *_lock;
    id /* block */ _dbGetter;
    _PASDatabaseMigrator *_migrator;
    id _lockStateRegistration;
    NSString *_journalPath;
}

@property (readonly) unsigned long long hash;
@property (readonly) Class superclass;
@property (readonly, copy) NSString *description;
@property (readonly, copy) NSString *debugDescription;

+ (id)nsDataFromSignature:(id)a0;
+ (id)shouldExposeWarningGivenPositiveFeedbackCount:(id)a0 negativeFeedbackCount:(id)a1;
+ (id)storeInMemory;
+ (id)storeWithFilename:(id)a0;

- (id)migrations;
- (id)subModelsStats;
- (void)setDoubleNSNumber:(id)a0 forKey:(id)a1;
- (id)_db;
- (id)init;
- (void)reset;
- (void)dealloc;
- (id)getForKey:(id)a0 binder:(id /* block */)a1;
- (id)naiveBayesModelQueryResultForFeature:(long long)a0 unigramTokens:(id)a1 bigramTokens:(id)a2;
- (void)setInt64NSNumber:(id)a0 forKey:(id)a1;
- (void)setValue:(id)a0 forKey:(id)a1 binder:(id /* block */)a2;
- (id)getUnsubscriptionOpportunitiesSuggestionsDenyListForField:(long long)a0;
- (id)queriesToSkipFromEmptyToVersion:(unsigned int *)a0;
- (void)setNSDate:(id)a0 forKey:(id)a1;
- (void)incrementInt64NSNumber:(id)a0 forKey:(id)a1;
- (id)getNSStringForKey:(id)a0;
- (id)sortedUnsubscriptionOpportunitiesForField:(long long)a0 minCount:(unsigned long long)a1 minScore:(double)a2 limit:(unsigned long long)a3;
- (void)commitNaiveBayesModel:(id)a0 probabilityFeatureName:(long long)a1 updateDate:(id)a2;
- (void)setNSString:(id)a0 forKey:(id)a1;
- (id)getDoubleNSNumberForKey:(id)a0;
- (id)getSGMIStoredAddresses;
- (id)getInt64NSNumberForKey:(id)a0;
- (void).cxx_destruct;
- (void)deleteValueForKey:(id)a0;
- (void)clearMailIntelligenceSaliencyDetection;
- (void)deleteTokensForDeletedEmailAddresses:(id)a0;
- (void)commitNaiveBayesModel:(id)a0 probabilityFeatureName:(long long)a1;
- (id)getNSDateForKey:(id)a0;
- (id)databaseHandle;
- (void)deleteNaiveBayesModelForProbabilityFeatureName:(long long)a0;
- (id)_dateFormatter;
- (id)highlyDiscriminantTokensForFeature:(long long)a0 minCount:(unsigned long long)a1 minRatio:(double)a2;
- (id)knownEmailAddressesForNickname:(id)a0;
- (unsigned char)migration_createFollowUpTableWithAppleMailMessageIdAsPrimaryKey;
- (BOOL)_applyCappingPolicy:(id)a0 shouldContinue:(id /* block */)a1 usingDatabase:(id)a2;
- (BOOL)_areSubmodelsEmptyUsingDatabase:(id)a0;
- (void)_clearBucketForColumn:(id)a0;
- (void)_clearBucketForColumn:(id)a0 usingDatabase:(id)a1;
- (void)_clearKVStoreUsingDatabase:(id)a0;
- (void)_clearSignatureStatsTableUsingDatabase:(id)a0;
- (void)_clearSubModelsTablesUsingDatabase:(id)a0;
- (id)_columnFromDate:(id)a0;
- (void)_commitNaiveBayesModel:(id)a0 probabilityFeatureName:(long long)a1 updateDate:(id)a2 usingDatabase:(id)a3;
- (id)_dateFromColumn:(id)a0;
- (void)_deleteNaiveBayesModelForProbabilityFeatureName:(long long)a0 usingDatabase:(id)a1;
- (void)_deleteTokensForDeletedEmailAddresses:(id)a0 usingDatabase:(id)a1;
- (int)_effectiveLockState;
- (long long)_featureNameForString:(id)a0;
- (id)_featuresForDatabase:(id)a0;
- (id)_getSGMIStoredAddressesUsingDatabase:(id)a0;
- (void)_handleDeviceLockStateEvent:(int)a0;
- (id)_highlyDiscriminantTokensForFeature:(long long)a0 minCount:(unsigned long long)a1 minRatio:(double)a2 domains:(id)a3 limit:(id)a4 usingDatabase:(id)a5;
- (id)_journalQueue;
- (id)_keyForField:(long long)a0;
- (id)_naiveBayesModelQueryResultForFeature:(long long)a0 unigramTokens:(id)a1 bigramTokens:(id)a2 usingDatabase:(id)a3;
- (BOOL)_purgeTokensWhichLastUpdateWasBefore:(id)a0 shouldContinue:(id /* block */)a1 usingDatabase:(id)a2;
- (void)_runJournal;
- (id)_stringForFeatureName:(long long)a0;
- (id)_subModelsStatsWithShouldContinueBlock:(id /* block */)a0 usingDatabase:(id)a1;
- (BOOL)_writeJournalCommand:(unsigned char)a0 blob:(id)a1;
- (BOOL)applyCappingPolicy:(id)a0 shouldContinue:(id /* block */)a1;
- (BOOL)areSubmodelsEmpty;
- (void)clearBucketForDate:(id)a0;
- (void)clearBucketsForDates:(id)a0;
- (void)clearKVStoreTable;
- (void)clearNicknameMappingTable;
- (void)clearSignatureStatsTable;
- (void)clearSubModelsTables;
- (id)followUpWarningStats;
- (void)incrementUserEngagement:(BOOL)a0 forFollowUpWarning:(id)a1;
- (id)incrementUserEngagement:(BOOL)a0 forWarning:(id)a1;
- (id)initWithDatabaseGetter:(id /* block */)a0 journalPath:(id)a1;
- (void)insertToken:(id)a0 forFeatureName:(long long)a1 salientCount:(long long)a2 regularCount:(long long)a3 time:(id)a4;
- (unsigned char)migration_createFeaturesTable;
- (unsigned char)migration_createFollowUpTable;
- (unsigned char)migration_createKVTable;
- (unsigned char)migration_createSignatureStatsTable;
- (BOOL)performMaintenanceWithShouldContinueBlock:(id /* block */)a0;
- (void)purgeOldNicknameMappingRecords;
- (BOOL)purgeTokensWhichLastUpdateWasBefore:(id)a0 shouldContinue:(id /* block */)a1;
- (void)recordMappingFromNickname:(id)a0 toEmailAddress:(id)a1;
- (void)recordMappingFromNickname:(id)a0 toEmailAddress:(id)a1 withDateOfMatch:(id)a2;
- (void)setUnsubscriptionOpportunitiesSuggestionsDenyListForField:(long long)a0 toValues:(id)a1;
- (id)shouldExposeWarning:(id)a0;
- (id)shouldExposeWarning:(id)a0 updateAction:(long long)a1;
- (id)subModelsStatsWithShouldContinueBlock:(id /* block */)a0;
- (id)submodelsAgesInDays;
- (void)updateAttachmentDetectionStatsOnMailWithTextContent:(id)a0 attachments:(id)a1 warningRaised:(BOOL)a2 attachmentPredicted:(BOOL)a3 isIncomingMail:(BOOL)a4;
- (void)updateFollowUpDetectionStatsWithWarning:(id)a0;
- (void)updateRecipientDetectionStatsWarningRaised:(BOOL)a0;
- (long long)warningStatsCount;
- (id)warningStatsForLogging:(BOOL)a0;

@end