@class DiagnosticCaseSummaryAnalytics, NSString, DiagnosticsController, AnalyticsWorkspace, NSMutableDictionary, ABCConfigurationManager, DiagnosticStatisticsManager, NSMutableArray, DiagnosticLiaison, NSObject, NSMutableSet, DiagnosticCaseStorageAnalytics; @protocol OS_dispatch_queue, DiagnosticCaseManagerStorageDelegate, OS_dispatch_source; @interface DiagnosticCaseManager : NSObject { AnalyticsWorkspace *_workspace; NSMutableArray *_pendingStatisticsUpdateCases; NSMutableSet *_reportOutlets; long long _saveCount; NSMutableArray *_requestedReportGenerators; DiagnosticCaseStorageAnalytics *_caseStorageAnalytics; DiagnosticCaseSummaryAnalytics *_caseSummaryAnalytics; DiagnosticsController *_diagnosticsController; NSObject *periodicTimer; BOOL _initializationComplete; NSMutableSet *sessionsWaitingToEnd; NSMutableDictionary *activeProbes; NSMutableDictionary *activeIDSMessages; NSMutableDictionary *_activeTransactions; BOOL _shouldPurgeStorageAfterSave; } @property (readonly, nonatomic) DiagnosticLiaison *liaison; @property (readonly, nonatomic) DiagnosticsController *diagnosticsController; @property (readonly, nonatomic) NSObject *queue; @property (readonly, nonatomic) DiagnosticStatisticsManager *statsManager; @property (readonly, nonatomic) ABCConfigurationManager *configManager; @property (readonly, nonatomic) NSMutableDictionary *reportGenerators; @property (readonly, copy, nonatomic) NSMutableArray *activeCases; @property (readonly, copy, nonatomic) NSMutableArray *totalCases; @property (nonatomic) unsigned int avgCasesPerDay; @property (weak, nonatomic) id storageDelegate; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (BOOL)isException:(id)a0 containedInString:(id)a1; + (BOOL)isString:(id)a0 inExceptionList:(id)a1; + (int)symptomDiagnosticErrorForDiagnosticCaseDampeningType:(short)a0; - (void)shutdown; - (void)addSignatureContentForSession:(id)a0 key:(id)a1 content:(id)a2 reply:(id /* block */)a3; - (unsigned long long)_processProbeActions:(id)a0 session:(id)a1; - (void)addToSession:(id)a0 events:(id)a1 payload:(id)a2 queue:(id)a3 reply:(id /* block */)a4; - (BOOL)isAllowedTransientException:(id)a0; - (BOOL)statisticsRowForDiagnosticCase:(id)a0 matchesWith:(id)a1; - (void)addCaseReportOutlet:(id)a0; - (BOOL)allowDampeningExceptionFor:(id)a0; - (void)_processRemoteIDSTriggers:(id)a0 validFor:(double)a1 signature:(id)a2 sessionID:(id)a3 reply:(id /* block */)a4; - (void)updateAverageCasesPerDay; - (void)resetAll; - (unsigned int)dampeningFactorForSignature:(id)a0 caseTime:(id)a1 limit:(long long)a2; - (void)saveAllCases; - (void)startCollectingNextReportForDiagnosticCase:(id)a0; - (BOOL)hasOpenCases; - (void)cancelProbesForSession:(id)a0; - (long long)dailyCountLimitForDomain:(id)a0 type:(id)a1 subtype:(id)a2 domainPredicates:(id)a3; - (void)endSessionIfProbesCompletedFor:(id)a0; - (void)configureWithWorkspace:(id)a0; - (id)diagnosticCaseDictionariesFromIdentifier:(id)a0 withEvents:(BOOL)a1 count:(unsigned long long)a2; - (id)caseSummariesWithIdentifiers:(id)a0; - (void)endSessionWithIdentifier:(id)a0 forced:(BOOL)a1; - (BOOL)sendReportsForCase:(id)a0; - (void)payloadsForSignatures:(id)a0 reply:(id /* block */)a1; - (void)startPeriodicTimer; - (void)addTransactionForCaseID:(id)a0; - (void)listCaseSummariesOfType:(id)a0 fromIdentifier:(id)a1 count:(unsigned long long)a2 reply:(id /* block */)a3; - (unsigned int)defaultDampeningFactorForSignature:(id)a0 limit:(long long)a1; - (void)postProcessActionsForClosedCase:(id)a0; - (BOOL)disableDampening; - (void)resetDiagnosticCaseStorage; - (void)forceCloseDiagnosticCaseStorage; - (void)removeCaseStorageWithID:(id)a0; - (BOOL)requestReportGenerator:(id)a0 options:(id)a1; - (void)requestSnapshotWithSignature:(id)a0 flags:(unsigned long long)a1 events:(id)a2; - (int)addSignatureContentToCaseWithId:(id)a0 key:(id)a1 content:(id)a2; - (void)removeTransactionForCaseID:(id)a0; - (void)requestGroupCaseIdentifierForSignature:(id)a0 reply:(id /* block */)a1; - (void)reportGeneratorEnded:(id)a0 reportInfo:(id)a1 error:(id)a2; - (void)updateSignatureWithBundleIdentifier:(id)a0 reply:(id /* block */)a1; - (void)endSession:(id)a0 forced:(BOOL)a1 onlyIfReady:(BOOL)a2; - (id)casesMatchingDomain:(id)a0 type:(id)a1 subtype:(id)a2 process:(id)a3 withinLast:(double)a4; - (void)setUpGeneralCaseReportGenerators; - (void)stopPeriodicTimer; - (id)createDiagnosticCaseWithSignature:(id)a0 flags:(unsigned long long)a1 events:(id)a2 payload:(id)a3 actions:(id)a4; - (void)caseAllowanceForSignature:(id)a0 timestamp:(id)a1 result:(id /* block */)a2; - (void)removeAllCases; - (BOOL)finalizeDiagnosticCaseWithId:(id)a0 closureType:(short)a1 onlyIfReady:(BOOL)a2; - (id)_updateSignatureWithBuildVariantInfoAndFlags:(id)a0; - (void)addToSession:(id)a0 event:(id)a1 payload:(id)a2 queue:(id)a3 reply:(id /* block */)a4; - (id)caseStorageForCaseID:(id)a0; - (id)caseStorageAnalytics; - (void)recordDiagnosticCaseSummaryForCase:(id)a0; - (id)responseDictWithSuccess:(BOOL)a0 sessionId:(id)a1 reasonCode:(long long)a2; - (BOOL)closeCase:(id)a0; - (void)removeTransientCasesWithSignature:(id)a0 beforeTime:(double)a1; - (void)addToSession:(id)a0 events:(id)a1 payload:(id)a2 reply:(id /* block */)a3; - (void).cxx_destruct; - (void)buildSpecificRestrictionsForSignature:(id)a0 result:(id /* block */)a1; - (void)promoteTemporaryCase:(id)a0; - (void)startSessionWithSignature:(id)a0 duration:(double)a1 events:(id)a2 payload:(id)a3 triggerRemote:(BOOL)a4 queue:(id)a5 reply:(id /* block */)a6; - (void)getHistoricalDiagnosicCaseDictionaryFromIdentifier:(id)a0 withEvents:(BOOL)a1 count:(unsigned long long)a2 reply:(id /* block */)a3; - (void)_processTriggerActions:(id)a0 session:(id)a1; - (void)startPacketCaptureForSession:(id)a0 duration:(id)a1; - (void)listCaseSummariesWithIdentifiers:(id)a0 reply:(id /* block */)a1; - (id)caseSummariesOfType:(id)a0 fromIdentifier:(id)a1 count:(unsigned long long)a2; - (id)casesDiagnosedInTheLast:(double)a0 from:(double)a1 matchingDomain:(id)a2; - (void)remoteTriggerDeliveryUpdateEvent:(id)a0; - (void)cancelSessionWithIdentifier:(id)a0; - (void)periodicSessionManagement; - (void)_processReportActions:(id)a0 session:(id)a1; - (id)createTemporaryDiagnosticCaseStorageForUUID:(id)a0; - (id)initWithWorkspace:(id)a0 liaison:(id)a1; - (id)diagnosticCaseWithId:(id)a0; - (void)resetAllForCustomerBuilds; - (void)startSessionWithSignature:(id)a0 flags:(unsigned long long)a1 preferredTimeout:(double)a2 events:(id)a3 payload:(id)a4 actions:(id)a5 reply:(id /* block */)a6; - (void)_forceCloseDiagnosticCaseStorage; - (void)removeClosedCasesFromTotalCases; - (id)lookUpDiagnosticCaseStorageForUUID:(id)a0; - (int)addToCaseWithId:(id)a0 events:(id)a1 payload:(id)a2; - (void)_updateCaseStatisticsWithCase:(id)a0; - (BOOL)isAdmissible:(id)a0 dampenedBy:(short *)a1; - (int)cancelCaseWithId:(id)a0; - (void)endSessionWithIdentifier:(id)a0 forced:(BOOL)a1 onlyIfReady:(BOOL)a2; - (void)_processActionsForPacketCaptureProbe:(id)a0 session:(id)a1; - (void)addToInternalStateDictionary:(id)a0; - (unsigned long long)collectDiagnosticExtensionLogsWithParameters:(id)a0 options:(id)a1 diagCase:(id)a2 reply:(id /* block */)a3; - (void)endSessions:(id)a0 forced:(BOOL)a1; - (void)_saveAllCases; @end