@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