@class TLToneManager, NSString, NSArray, NSMutableDictionary, NSMutableArray, TKTonePickerItem, NSMutableSet, TLAlert, NSIndexPath; @protocol TKTonePickerControllerDelegate, TLToneStoreDownloadController; @interface TKTonePickerController : NSObject <TLToneStoreDownloadObserver> { TLToneManager *_toneManager; unsigned long long _toneTypes; BOOL _defaultToneIdentifierWasExplicitlySet; BOOL _selectedToneWasExplicitlySetToDefaultTone; BOOL _selectedVibrationIdentifierWasExplicitlySet; BOOL _showsNoneWasExplicitlySet; BOOL _isToneStoreDownloadButtonAllowed; long long _toneStoreDownloadButtonState; NSMutableDictionary *_activeToneStoreDownloadsByIdentifier; NSMutableDictionary *_finishedToneStoreDownloadsByIdentifier; BOOL _shouldFreezeContentsOriginatingFromToneManager; BOOL _hasLoadedTonesOnce; NSMutableArray *_cachedPickerSectionItems; NSMutableArray *_cachedPickerRowItems; NSArray *_installedTones; NSMutableArray *_toneGroupLists; NSMutableArray *_toneGroupNames; NSMutableArray *_toneGroupBucketIdentifiers; NSMutableSet *_identifiersOfRemovableTones; TLAlert *_playingAlert; } @property (nonatomic) BOOL showsToneStore; @property (nonatomic, getter=isMediaAtTop) BOOL mediaAtTop; @property (nonatomic) BOOL showsVibrations; @property (copy, nonatomic) NSString *selectedVibrationIdentifier; @property (nonatomic) BOOL showsIgnoreMute; @property (nonatomic) BOOL ignoreMute; @property (copy, nonatomic) NSString *overrideFirstToneSectionTitle; @property (readonly, nonatomic) BOOL canShowStore; @property (retain, nonatomic) id<TLToneStoreDownloadController> toneStoreDownloadController; @property (retain, nonatomic, setter=_setClassicRingtoneIdentifiers:) NSArray *_classicRingtoneIdentifiers; @property (retain, nonatomic, setter=_setClassicAlertToneIdentifiers:) NSArray *_classicAlertToneIdentifiers; @property (nonatomic, setter=_setSelectedClassicRingtoneIndex:) unsigned long long _selectedClassicRingtoneIndex; @property (nonatomic, setter=_setSelectedClassicAlertToneIndex:) unsigned long long _selectedClassicAlertToneIndex; @property (readonly, nonatomic) TKTonePickerItem *_topLevelSelectedTonePickerItem; @property (retain, nonatomic, setter=_setSelectedToneIndexPath:) NSIndexPath *_selectedToneIndexPath; @property (readonly, nonatomic) NSIndexPath *_indexPathForToneStoreGroup; @property (readonly, nonatomic) NSIndexPath *_indexPathForDefaultGroup; @property (readonly, nonatomic) NSIndexPath *_indexPathForFirstToneGroup; @property (readonly, nonatomic) NSIndexPath *_indexPathForMediaGroup; @property (readonly, nonatomic) NSIndexPath *_indexPathForNone; @property (readonly, nonatomic) NSIndexPath *_indexPathForVibrationGroup; @property (readonly, nonatomic) NSIndexPath *indexPathForSelectedTone; @property (nonatomic, setter=_setBehavesAsRingtonePicker:) BOOL _behavesAsRingtonePicker; @property (readonly, nonatomic) NSString *_alertTonesPlistName; @property (readonly, nonatomic) NSString *_ringtonesPlistName; @property (retain, nonatomic, setter=_setToneManager:) TLToneManager *_toneManager; @property (weak, nonatomic) id<TKTonePickerControllerDelegate> delegate; @property (readonly, nonatomic) long long alertType; @property (copy, nonatomic) NSString *topic; @property (copy, nonatomic) NSString *defaultToneIdentifier; @property (nonatomic) BOOL showsDefault; @property (nonatomic) BOOL showsNone; @property (nonatomic, getter=isNoneAtTop) BOOL noneAtTop; @property (copy, nonatomic) NSString *noneString; @property (nonatomic) BOOL showsNothingSelected; @property (readonly, nonatomic) TKTonePickerItem *selectedTonePickerItem; @property (copy, nonatomic) NSString *selectedToneIdentifier; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (id)_latestRedownloadAllTonesDate; + (void)_updateLatestRedownloadAllTonesDate; - (void)dealloc; - (long long)numberOfSections; - (void).cxx_destruct; - (void)_performBatchUpdates:(id /* block */)a0 completion:(id /* block */)a1; - (id)initWithAlertType:(long long)a0; - (void)_reloadTones; - (void)didFinishCheckingForAvailableToneStoreDownloads:(BOOL)a0; - (void)storeAccountNameDidChange:(id)a0; - (void)toneStoreDownloadsDidFinish:(id)a0; - (void)toneStoreDownloadsDidProgress:(id)a0; - (void)toneStoreDownloadsDidStart:(id)a0; - (void)_didReloadTones; - (void)_didUpdateToneStoreDownloadItem; - (id)_annotatedNameForToneIdentifier:(id)a0; - (void)_applyBatchUpdatesWithDeletedPickerRowItems:(id)a0 deletedTonePickerSectionItems:(id)a1 insertedPickerRowItems:(id)a2 insertedTonePickerSectionItems:(id)a3 tonePickerSectionItemsWithUpdatedHeaderText:(id)a4 tonePickerSectionItemsWithUpdatedFooterText:(id)a5; - (void)_cachePickerRowItem:(id)a0 atIndex:(long long)a1 inSectionForItem:(id)a2; - (void)_cachePickerSectionItem:(id)a0 forSection:(long long)a1; - (id)_cachedPickerItemForSection:(long long)a0; - (id)_cachedPickerRowItemAtIndex:(long long)a0 inSectionForItem:(id)a1; - (void)_didFinishPlayingAlert:(id)a0; - (void)_didSelectMediaItemWithIdentifier:(id)a0; - (BOOL)_didSelectToneClassicsPickerItem:(id)a0; - (void)_didSelectToneWithIdentifier:(id)a0; - (void)_didUpdateCheckedStatus:(BOOL)a0 ofPickerItemForRowAtIndexPath:(id)a1; - (void)_didUpdateCheckedStatus:(BOOL)a0 ofToneClassicsPickerItem:(id)a1; - (void)_didUpdateDetailText:(id)a0 ofPickerItemForRowAtIndexPath:(id)a1; - (void)_didUpdateFooterTextForToneStoreGroup; - (void)_disableToneStoreDownloadItem; - (BOOL)_enableToneStoreDownloadItemIfAppropriate; - (id)_footerTextForToneStoreGroup; - (void)_goToStore; - (void)_handleAlertOverridePolicyDidChangeNotification:(id)a0; - (id)_identifierAtIndexPath:(id)a0 isMediaItem:(BOOL *)a1; - (id)_identifierOfMediaItemAtIndex:(unsigned long long)a0; - (id)_identifierOfSelectedClassicAlertTone; - (id)_identifierOfSelectedClassicRingtone; - (id)_identifierOfToneAtIndexPath:(id)a0; - (unsigned long long)_indexOfMediaItemWithIdentifier:(id)a0; - (id)_indexPathForIgnoreMuteGroup; - (id)_indexPathForToneStoreDownloadItem; - (id)_indexPathForToneWithIdentifier:(id)a0; - (void)_invalidatePickerItemCaches; - (BOOL)_isDefaultGroupAtIndexPath:(id)a0; - (BOOL)_isDividerAtIndexPath:(id)a0; - (BOOL)_isIgnoreMuteGroupAtIndexPath:(id)a0; - (BOOL)_isMediaAtTop; - (BOOL)_isMediaGroupAtIndexPath:(id)a0; - (BOOL)_isNoneGroupAtIndexPath:(id)a0; - (BOOL)_isToneStoreGroupAtIndexPath:(id)a0; - (BOOL)_isVibrationGroupAtIndexPath:(id)a0; - (id)_loadAlertTonesFromPlist; - (id)_loadRingtonesFromPlist; - (id)_loadTonesFromPlistNamed:(id)a0; - (unsigned long long)_mediaItemsCount; - (id)_nameForToneIdentifier:(id)a0; - (id)_nameOfSelectedVibrationIdentifier; - (id)_pickerRowItemAtIndex:(long long)a0 inSectionForItem:(id)a1; - (void)_playToneWithIdentifier:(id)a0; - (void)_redownloadAllTones; - (void)_registerForUserGeneratedVibrationsDidChangeNotification; - (void)_reloadMediaItems; - (void)_reloadStateForBasicBehavior; - (void)_reloadTonesForExternalChange:(BOOL)a0 shouldSkipDelegateFullReload:(BOOL)a1; - (void)_resetSelectedClassicAlertToneIndex; - (void)_resetSelectedClassicRingtoneIndex; - (void)_resetSelectedVibrationIdentifierForcingUpdatingVibrationName:(BOOL)a0; - (id)_sanitizedSelectedVibrationIdentifierAllowingNilForDefault:(BOOL)a0; - (id)_selectedIdentifier:(BOOL *)a0; - (void)_setSelectedToneIdentifier:(id)a0 currentlyReloadingTones:(BOOL)a1; - (void)_setSelectedVibrationIdentifier:(id)a0 explicitlySet:(BOOL)a1; - (void)_setSelectedVibrationIdentifier:(id)a0 forceUpdatingVibrationName:(BOOL)a1 explicitlySet:(BOOL)a2; - (BOOL)_showsMedia; - (void)_sortToneIdentifiersArray:(id)a0; - (void)_togglePlayForToneWithIdentifier:(id)a0; - (id)_toneClassicsPickerItemAtIndex:(long long)a0 withToneIdentifier:(id)a1 belowTonePickerItem:(id)a2; - (void)_toneManagerContentsChanged:(id)a0; - (void)_uncachePickerRowItemAtIndex:(long long)a0 inSectionForItem:(id)a1; - (void)_unregisterForUserGeneratedVibrationsDidChangeNotification; - (void)_updateDetailTextOfVibrationItem; - (BOOL)canDeleteTonePickerItem:(id)a0; - (void)deleteTonePickerItem:(id)a0; - (BOOL)didSelectTonePickerItem:(id)a0; - (void)finishedWithPicker; - (id)pickerItemForSection:(long long)a0; - (void)stopPlayingWithFadeOut:(BOOL)a0; @end