@class UIBarButtonItem, CNContactListStyleApplier, UIKeyCommand, CNAccountsAndGroupsDataSource, CNUIGroupsAndContainersSaveManager, CNContactViewController, CNUIUserActivityManager, CNAccountsAndGroupsViewController, NSString, UIAlertController, CNContactStore, CNManagedConfiguration, NSArray, NSNumber, CNContactListViewController, CNContactStyle, CNContactStoreDataSource; @protocol CNContactDataSource, CNContactNavigationControllerDelegate, CNScheduler; @interface CNContactNavigationController : UINavigationController <CNContactListViewControllerDelegate, CNContactListViewControllerDelegateInternal, CNContactViewControllerDelegate, CNContactContentViewControllerDelegate, CNAccountsAndGroupsViewControllerDelegate, CNContactViewControllerAddContactPresenter, NSUserActivityDelegate, CNContactPickerPrivateDelegate, UIPopoverPresentationControllerDelegate> { CNContactListViewController *_contactListViewController; } @property (retain, nonatomic) CNContactStore *contactStore; @property (retain, nonatomic) CNContactViewController *reusableContactViewController; @property (retain, nonatomic) NSNumber *shouldShowAccountsAndGroupsCachedValue; @property (retain, nonatomic) CNAccountsAndGroupsViewController *accountsAndGroupsViewController; @property (retain, nonatomic) CNAccountsAndGroupsDataSource *accountsAndGroupsDataSource; @property (nonatomic) long long leftButtonBehavior; @property (nonatomic) long long rightButtonBehavior; @property (retain, nonatomic) CNContactStoreDataSource *nonServerDataSource; @property (weak, nonatomic) CNContactViewController *presentedContactViewController; @property (retain, nonatomic) UIKeyCommand *addKeyCommand; @property (weak, nonatomic) UIAlertController *facebookContactsAlertController; @property (readonly, nonatomic) id<CNScheduler> backgroundScheduler; @property (readonly, nonatomic) id<CNScheduler> mainThreadScheduler; @property (nonatomic) BOOL hasPendingShowCard; @property (retain, nonatomic) CNUIUserActivityManager *activityManager; @property (nonatomic) BOOL allowsLargeTitles; @property (retain, nonatomic) UIBarButtonItem *mailButtonItem; @property (retain, nonatomic) CNUIGroupsAndContainersSaveManager *groupsAndContainersSaveManager; @property (retain, nonatomic) CNContactListStyleApplier *contactListStyleApplier; @property (nonatomic) BOOL ignoresMapsData; @property (nonatomic) BOOL hideGroupsButton; @property (retain, nonatomic) NSArray *prohibitedPropertyKeys; @property (retain, nonatomic) UIBarButtonItem *addContactBarButtonItem; @property (nonatomic) BOOL hideMailToGroupButton; @property (retain, nonatomic) NSString *contactPickerTargetGroupIdentifier; @property (retain, nonatomic) CNManagedConfiguration *managedConfiguration; @property (nonatomic) id<CNContactNavigationControllerDelegate> delegate; @property (readonly, nonatomic) id<CNContactDataSource> dataSource; @property (retain, nonatomic) CNContactStyle *contactStyle; @property (nonatomic) BOOL allowsCardEditing; @property (nonatomic) BOOL allowsCardDeletion; @property (nonatomic) BOOL allowsCanceling; @property (nonatomic) BOOL allowsDone; @property (nonatomic) BOOL allowsContactBlocking; @property (nonatomic) BOOL hidesSearchableSources; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (id)keyCommandForNewContact; + (void)moveViewController:(id)a0 toParent:(id)a1; + (id)newContactFormatter; - (id)allContactIdentifiers; - (void)presentGroupsViewControllerAnimated:(BOOL)a0; - (void)addContact:(id)a0; - (void)pushViewController:(id)a0 animated:(BOOL)a1; - (void)showAllContactsListAnimated:(BOOL)a0; - (id)popViewControllerAnimated:(BOOL)a0; - (void)done:(id)a0; - (BOOL)contactViewController:(id)a0 shouldPerformDefaultActionForContactProperty:(id)a1; - (BOOL)shouldShowMailButton; - (void)showAllContactsList; - (void)updateNavigationButtonsAnimated:(BOOL)a0; - (void)setUpAccountAndGroupsViewIfNeeded; - (void)viewWillAppear:(BOOL)a0; - (void)checkForFacebookContactsWithDelay:(double)a0 allowAlert:(BOOL)a1; - (void)contactListViewController:(id)a0 didSelectContact:(id)a1; - (void)dealloc; - (BOOL)isAddContactButtonShowing; - (void)contactStyleCurrentStyleDidChange:(id)a0; - (void)setUpLargeTitles; - (void)dismissSearchAndSelectContact:(id)a0 allowsMultiSelection:(BOOL)a1; - (void)_updateUserActivity; - (void)contactListViewController:(id)a0 updatedSelectedContact:(id)a1; - (void)resetContactViewController; - (void)contactListViewControllerSelectedCreateNewContact:(id)a0; - (BOOL)shouldShowLeftDoneAndRightAddButton; - (BOOL)shouldShowRightCancelButton; - (id)reuseableContactViewControllerConfiguredForContact:(id)a0 mode:(long long)a1; - (void)deleteContact:(id)a0; - (id)nextResponderForContactListViewController:(id)a0; - (void)viewDidLoad; - (id)targetGroupForNewContact; - (BOOL)accountsAndGroupsViewController:(id)a0 shouldEnableItemWithIdentifier:(id)a1; - (void)contactListViewController:(id)a0 shouldPresentContact:(id)a1 shouldScrollToContact:(BOOL)a2; - (void)popToContactListAndSaveChanges:(BOOL)a0 animated:(BOOL)a1; - (void)searchForString:(id)a0; - (void)contactPicker:(id)a0 didCompleteWithNewContact:(id)a1; - (void)presentGroupsViewController:(id)a0; - (void)presentAddToGroupPickerWithSourceView:(id)a0; - (void)beginSearch:(id)a0; - (void)popToContactListAndSaveChanges:(BOOL)a0; - (void)mailContacts:(id)a0; - (void)refreshMailButtonEnabled; - (BOOL)shouldShowRightAddButton; - (void)clearServerSearchIfNeeded:(id)a0; - (void)toggleEditContact:(id)a0; - (void)showCardForContact:(id)a0 animated:(BOOL)a1; - (void)createUserActivity; - (BOOL)contactListViewController:(id)a0 shouldSelectContact:(id)a1 atIndexPath:(id)a2; - (void)_cnui_presentViewController:(id)a0 animated:(BOOL)a1 dismissingPresentedController:(BOOL)a2 shouldHideContactListIfNeeded:(BOOL)a3; - (id)addContactPresenter; - (BOOL)isDisplayingAddNewContactViewController; - (void)showCardForContact:(id)a0 resetFilter:(BOOL)a1 resetSearch:(BOOL)a2 fallbackToFirstContact:(BOOL)a3 scrollToContact:(BOOL)a4 animated:(BOOL)a5; - (void)showCardForContactAfterIndexPath:(id)a0; - (void)popoverPresentationController:(id)a0 willRepositionPopoverToRect:(inout struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; } *)a1 inView:(inout id *)a2; - (void)toggleGroupsPanel:(id)a0; - (id)userActivityRepresentingGroupsView; - (id)contactListViewController; - (void)contactViewController:(id)a0 didDeleteContact:(id)a1; - (BOOL)shouldShowRightAddAndCancelButton; - (void)setShouldDisplayMeContactBanner:(BOOL)a0; - (void)showCardForContactIfPossible:(id)a0; - (id)initWithDataSource:(id)a0 allowsLargeTitles:(BOOL)a1; - (void)updateLeftNavigationButtonAnimated:(BOOL)a0; - (void)updateUserActivityState:(id)a0; - (void)presentAddContactViewController:(id)a0 animated:(BOOL)a1; - (BOOL)canAddContacts; - (id)parentGroupForCurrentFilter; - (void)dataSourceChangedForContactListViewController:(id)a0; - (void)contactListViewControllerSelectedAddContactToList:(id)a0 withSourceView:(id)a1; - (id)initWithDataSource:(id)a0; - (void)applicationDidResume; - (BOOL)shouldShowLeftCloseAndRightGroupsButton; - (void)showCardForContact:(id)a0 resetFilter:(BOOL)a1 resetSearch:(BOOL)a2 fallbackToFirstContact:(BOOL)a3 scrollToContact:(BOOL)a4 animated:(BOOL)a5 dismissingPresentedController:(BOOL)a6 shouldHideContactListIfNeeded:(BOOL)a7; - (void)selectNextContact:(id)a0; - (void)accountsAndGroupsViewControllerDidFinish:(id)a0; - (void)updateNavigationButtonsInSearchMode:(BOOL)a0; - (void)addContact:(id)a0 animated:(BOOL)a1; - (void)presentErrorAlertWithTitle:(id)a0 message:(id)a1 animated:(BOOL)a2; - (BOOL)shouldFlipDirectionWhenChangingSelectionWithKey:(id)a0; - (void).cxx_destruct; - (id)userActivityRepresentingCurrentlyDisplayedContact; - (BOOL)isPresentedContactViewControllerVisible; - (void)accountsAndGroupsViewControllerDidUpdateSelection:(id)a0; - (BOOL)shouldDisplayMeContactBanner; - (BOOL)shouldShowAddToGroupPicker; - (void)otherFacebookContactsAlertDidSelectActionWithNotification:(id)a0; - (BOOL)contactSuggestionViewController:(id)a0 shouldSelectContact:(id)a1 atIndexPath:(id)a2; - (void)observeOtherFacebookContactsAlert; - (id)currentlyDisplayedContact; - (void)showCardForContactBeforeIndexPath:(id)a0; - (id)targetContainerForNewContactWithTargetGroup:(id)a0; - (void)contactListViewController:(id)a0 didSelectContact:(id)a1 shouldScrollToContact:(BOOL)a2; - (id)tipKitContext; - (void)contactViewController:(id)a0 didCompleteWithNewContactFromPickerNewContactRow:(id)a1; - (id)firstVisibleContact; - (void)viewWillTransitionToSize:(struct CGSize { double x0; double x1; })a0 withTransitionCoordinator:(id)a1; - (id)initWithDataSource:(id)a0 contactFormatter:(id)a1 applyGroupFilterFromPreferences:(BOOL)a2 environment:(id)a3 allowsLargeTitles:(BOOL)a4; - (void)contactViewController:(id)a0 didCompleteWithContact:(id)a1; - (void)showNewDraftContact:(id)a0 animated:(BOOL)a1; - (void)startEditingPresentedContact; - (void)updateNavigationButtonsAnimated:(BOOL)a0 viewWillAppear:(BOOL)a1; - (void)updateNavigationButtonsInSearchMode:(BOOL)a0 animated:(BOOL)a1; - (BOOL)shouldShowAccountsAndGroups; - (BOOL)contactListViewController:(id)a0 canSelectContact:(id)a1; - (void)scrollToContact:(id)a0 animated:(BOOL)a1; - (BOOL)shouldShowLeftCancelAndRightAddButton; - (id)initWithDataSource:(id)a0 environment:(id)a1 allowsLargeTitles:(BOOL)a2; - (void)executeAddContact; - (void)cancelSearch:(id)a0; - (BOOL)shouldShowGroupsBackButton; - (BOOL)shouldShowLeftCancelAndRightDoneButton; - (void)cancel:(id)a0; - (void)notifyOtherFacebookContactsAlertDidSelectAction; - (void)contactPicker:(id)a0 didSelectContacts:(id)a1; - (void)showCardForContact:(id)a0 animated:(BOOL)a1 scrollToContact:(BOOL)a2; - (void)accountsAndGroupsViewControllerDidCancel:(id)a0; - (BOOL)canPerformAction:(SEL)a0 withSender:(id)a1; - (void)showCardForContact:(id)a0 resetFilter:(BOOL)a1 resetSearch:(BOOL)a2 fallbackToFirstContact:(BOOL)a3 scrollToContact:(BOOL)a4 animated:(BOOL)a5 dismissingPresentedController:(BOOL)a6; - (void)selectPreviousContact:(id)a0; @end