@class CKScheduledUpdater, IMChat, CKFullScreenBalloonViewController, CKViewController, CKTranscriptCollectionView, STLockoutViewController, CKConversation, CKMacToolbarController, NSCountedSet, NSString, UIProgressView; @protocol CKCoreTranscriptControllerProtocol, CKCoreChatControllerDelegate; @interface CKCoreChatController : CKScrollViewController @property (retain, nonatomic) CKConversation *conversation; @property (readonly, nonatomic) BOOL shouldUseInitialViewSize; @property (readonly, nonatomic) IMChat *chat; @property (retain, nonatomic) CKViewController *collectionViewController; @property (nonatomic) BOOL initialLayoutComplete; @property (readonly, nonatomic) double balloonMaxWidth; @property (readonly, nonatomic) double gradientBottomPlaceholderHeight; @property (nonatomic) BOOL ignoreLastBalloonVisibleInMarkAsReadCheck; @property (retain, nonatomic) CKScheduledUpdater *refreshServiceForSendingUpdater; @property (retain, nonatomic) UIProgressView *progressBar; @property (nonatomic, getter=isSendingMessage) BOOL sendingMessage; @property (nonatomic) double sendProgress; @property (nonatomic) unsigned long long sendProgressSendCount; @property (nonatomic) unsigned long long sendProgressTotalCount; @property (retain, nonatomic) CKFullScreenBalloonViewController *fullScreenBalloonViewController; @property (nonatomic) long long acknowledgmentToSend; @property (nonatomic) BOOL disableAnimationsUnderTest; @property (copy, nonatomic) id /* block */ overrideScrollBlock; @property (retain, nonatomic) STLockoutViewController *lockoutViewController; @property (nonatomic) BOOL isShowingLockoutView; @property (retain, nonatomic) CKMacToolbarController *macToolbarController; @property (retain, nonatomic) NSCountedSet *activePinningInputViewReasons; @property (nonatomic) BOOL needsEndPinningInputViewsForSwitchingConversationAfterConversationIsSet; @property (weak, nonatomic) id delegate; @property (readonly, nonatomic) CKTranscriptCollectionView *collectionView; @property (readonly, nonatomic) BOOL shouldDismissAfterSend; @property (readonly, nonatomic) BOOL shouldDisplayTextEntry; @property (nonatomic) BOOL viewIsVisible; @property (nonatomic) BOOL transitionedFromComposing; @property (nonatomic) BOOL userInitiatedTranscriptPush; @property (nonatomic) BOOL shareWasCreated; @property (nonatomic) struct CGSize { double width; double height; } initialViewSize; @property (nonatomic) BOOL showingInStandAloneWindow; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (Class)_gradientReferenceViewClass; + (Class)transcriptControllerClass; - (void)systemApplicationDidResume; - (void)_contentSizeCategoryDidChangeNotification:(id)a0; - (void)viewWillAppear:(BOOL)a0; - (void)dealloc; - (void)traitCollectionDidChange:(id)a0; - (void)viewDidLayoutSubviews; - (void)viewDidLoad; - (void)_localeDidChangeNotification:(id)a0; - (id)gradientReferenceView; - (void)significantTimeChange; - (void)loadView; - (id)scrollView; - (void)viewWillDisappear:(BOOL)a0; - (void).cxx_destruct; - (void)registerNotifications; - (void)systemApplicationWillEnterForeground; - (void)viewDidAppear:(BOOL)a0; - (void)_setTitle:(id)a0 animated:(BOOL)a1; - (id)textInputContextIdentifier; - (BOOL)_shouldAllowReplyFromLockScreen; - (struct UIEdgeInsets { double x0; double x1; double x2; double x3; })calculateTranscriptMarginInsets; - (void)configureWithToolbarController:(id)a0; - (BOOL)conversationAllowedByScreenTime; - (void)fullScreenBalloonViewController:(id)a0 willDisappearWithSendAnimation:(BOOL)a1; - (void)parentControllerDidBecomeActive; - (void)_deregisterSendProgressDelegate; - (id)_nicknameBannerUpdatesAndStyle:(unsigned long long *)a0; - (void)deleteChatItem:(id)a0; - (void)transcriptCollectionViewControllerWillInset:(id)a0 targetContentInset:(inout struct UIEdgeInsets { double x0; double x1; double x2; double x3; } *)a1; - (BOOL)_alwaysShowNicknameBanners; - (void)_availabilityDaemonDisconnectedNotification:(id)a0; - (void)_chatRegistryDidReloadNotification:(id)a0; - (void)_chatsRemergedNotification:(id)a0; - (BOOL)_controllerEligibleForSetConversation; - (BOOL)_conversationHasReplyEnabled; - (void)_conversationListFinishedMerging:(id)a0; - (BOOL)_deviceIsPasscodeLocked; - (void)_didSendCompositionInConversation:(id)a0; - (void)_dismissFullScreenBubbleViewControllerAnimated:(BOOL)a0 withSendAnimation:(BOOL)a1 completion:(id /* block */)a2; - (void)_displayNameUpdatedNotification:(id)a0; - (void)_downgradeStateChangedNotification:(id)a0; - (id)_fullScreenBalloonViewControllerWithChatItem:(id)a0; - (void)_handleAddressBookChangedNotification:(id)a0; - (void)_handleAvailabilityChangedNotification:(id)a0; - (void)_handleAvailabilityInvitationReceivedNotification:(id)a0; - (void)_handleAvailabilityStateChangedNotification:(id)a0; - (id)_handleIDsForCurrentConversation; - (void)_handleShowInlineReplyForItemWithIndexPath:(id)a0 replyTransitionProperties:(id)a1; - (void)_handleTapEventForBalloonView:(id)a0 atIndexPath:(id)a1; - (BOOL)_haveUpdateAlready:(id)a0 forContact:(id)a1; - (void)_increaseContrastDidChangeNotification:(id)a0; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })_initialFrameForCollectionView; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })_initialFrameForGradientReferenceView; - (void)_inviteToViewFocusStatusIfNeeded; - (BOOL)_isRunningPPT; - (void)_markAsReadIfNecessary; - (double)_maxEntryViewHeight; - (void)_performResume; - (void)_preferredServiceChangedNotification:(id)a0; - (void)_reassignConversationWithDeferredReload:(BOOL)a0; - (void)_refreshActiveChat:(id)a0; - (void)_refreshServiceForSending; - (void)_registerSendProgressDelegate; - (void)_removeExistingCollectionViewController; - (id)_retrieveNicknameBannerUpdatesIfNeeded:(unsigned long long *)a0; - (void)_setConversationDeferredSetup; - (BOOL)_shouldAllowReply; - (id)_threadChatItemForReplyCountChatItem:(id)a0 chatItems:(id)a1; - (void)_transferFinishedNotification:(id)a0; - (void)_transferRestoredNotification:(id)a0; - (void)_updateForNewPreferredService; - (void)_updateNavigationButtons; - (void)_updateTitleAnimated:(BOOL)a0; - (void)_willSendComposition:(id)a0 inConversation:(id)a1; - (BOOL)accountCanCreateNickname; - (void)applyInitialContextToCollectionViewIfNeeded; - (void)beginPinningInputViewsForReason:(id)a0; - (struct UIEdgeInsets { double x0; double x1; double x2; double x3; })calculateTranscriptSafeAreaInsets; - (void)chat:(id)a0 progressDidChange:(float)a1 sendingMessages:(id)a2 sendCount:(unsigned long long)a3 totalCount:(unsigned long long)a4 finished:(BOOL)a5; - (void)contentInsetDidChange; - (void)contentInsetWillChange:(struct UIEdgeInsets { double x0; double x1; double x2; double x3; })a0 animated:(BOOL)a1 duration:(double)a2 animationCurve:(long long)a3; - (void)copyChatItem:(id)a0; - (void)copySelectedChatItemsToPasteboard; - (id)createMutableContact:(id)a0 withNicknameUpdate:(id)a1 updateType:(unsigned long long)a2 addHandleToContact:(BOOL)a3; - (void)dismissInlineReplyController:(BOOL)a0; - (void)dismissMessageEditingViewController:(BOOL)a0; - (void)endPinningInputViewsForReason:(id)a0; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })fullScreenBalloonViewController:(id)a0 balloonFrameForChatItem:(id)a1; - (void)fullScreenBalloonViewController:(id)a0 didAppearAnimated:(BOOL)a1; - (void)fullScreenBalloonViewController:(id)a0 sendMessageAcknowledgment:(long long)a1 forChatItem:(id)a2; - (void)fullScreenBalloonViewController:(id)a0 sendMessageHighlight:(BOOL)a1 forChatItem:(id)a2; - (void)fullScreenBalloonViewController:(id)a0 willAppearAnimated:(BOOL)a1; - (void)fullScreenBalloonViewControllerDidDisappear:(id)a0; - (void)fullScreenBalloonViewControllerHandleDismissTap:(id)a0; - (void)fullScreenBalloonViewControllerMessageHighlightButtonDidFinishAnimating:(id)a0; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })fullScreenBalloonViewControllerSafeAreaLayoutFrame:(id)a0; - (BOOL)fullScreenBalloonViewControllerShouldShowHightlightButton:(id)a0 forChatItem:(id)a1; - (BOOL)fullScreenBalloonViewControllerShouldShowReplyButton:(id)a0; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })gradientFrameWithInsets:(struct UIEdgeInsets { double x0; double x1; double x2; double x3; })a0; - (id)initWithConversation:(id)a0; - (void)invalidateChatItemLayoutForTraitCollectionChangeIfNeeded:(id)a0; - (BOOL)isInline; - (BOOL)isSafeToMarkAsRead; - (BOOL)itemProviderDisablesTouches; - (void)keyboardWillHideViaGesture; - (id)lazyCreatedActivePinningInputViewReasons; - (void)messageSomeonePressed; - (void)parentControllerDidResume:(BOOL)a0 animating:(BOOL)a1; - (void)preferredSendingServiceChanged; - (void)prepareForSuspend; - (void)presentMacToolbarController; - (void)providerWillBeRemovedFromToolbarController:(id)a0; - (void)refreshServiceForSending; - (void)registerNotificationsForConversation:(id)a0; - (BOOL)saveContact:(id)a0 shouldUpdate:(BOOL)a1; - (id)selectedChatItems; - (void)sendComposition:(id)a0; - (void)setConversation:(id)a0 forceReload:(BOOL)a1; - (void)setupScrollingForKeyboardInteraction; - (void)setupStateForLaunchURL:(id)a0; - (BOOL)shouldListParticipantsInTitle; - (void)showFullScreenAcknowledgmentPickerForChatItem:(id)a0; - (void)showFullScreenAcknowledgmentPickerIfNeededForBalloonAtIndexPath:(id)a0; - (void)showInlineReplyControllerForChatItem:(id)a0 presentKeyboard:(BOOL)a1; - (void)showInlineReplyControllerForChatItem:(id)a0 presentKeyboard:(BOOL)a1 replyTransitionProperties:(id)a2; - (void)showMessageEditingViewControllerForChatItem:(id)a0 presentKeyboard:(BOOL)a1; - (id)toolbarItemForIdentifier:(id)a0; - (id)traitCollectionForTranscriptCollectionViewController:(id)a0; - (void)transcriptCollectionViewController:(id)a0 balloonView:(id)a1 didRequestPresentationStyle:(unsigned long long)a2 forChatItem:(id)a3 allowAllStyles:(BOOL)a4; - (void)transcriptCollectionViewController:(id)a0 balloonView:(id)a1 doubleTappedItemAtIndexPath:(id)a2; - (void)transcriptCollectionViewController:(id)a0 balloonView:(id)a1 longPressedForItemWithIndexPath:(id)a2; - (void)transcriptCollectionViewController:(id)a0 balloonView:(id)a1 selectedItemAtIndexPath:(id)a2; - (BOOL)transcriptCollectionViewController:(id)a0 balloonView:(id)a1 shouldSelectChatItem:(id)a2; - (void)transcriptCollectionViewController:(id)a0 balloonView:(id)a1 showInlineReplyForItemWithIndexPath:(id)a2; - (void)transcriptCollectionViewController:(id)a0 balloonView:(id)a1 showInlineReplyForItemWithIndexPath:(id)a2 withReplyTransitionProperties:(id)a3; - (void)transcriptCollectionViewController:(id)a0 balloonView:(id)a1 tappedForChatItem:(id)a2; - (BOOL)transcriptCollectionViewController:(id)a0 balloonViewDidRequestCommitPayload:(id)a1 forPlugin:(id)a2 allowAllCommits:(BOOL)a3 error:(id *)a4; - (BOOL)transcriptCollectionViewController:(id)a0 balloonViewDidRequestCommitSticker:(id)a1 forPlugin:(id)a2 allowAllCommits:(BOOL)a3 error:(id *)a4; - (void)transcriptCollectionViewController:(id)a0 balloonViewDidRequestStartEditingPayload:(id)a1 forPlugin:(id)a2 allowAllCommits:(BOOL)a3 completionHandler:(id /* block */)a4; - (void)transcriptCollectionViewController:(id)a0 balloonViewTitleTappedForItemWithIndexPath:(id)a1; - (void)transcriptCollectionViewController:(id)a0 collectionViewContentSizeDidChange:(struct CGSize { double x0; double x1; })a1; - (void)transcriptCollectionViewController:(id)a0 didDeselectItemAtIndexPath:(id)a1; - (void)transcriptCollectionViewController:(id)a0 didEndImpactEffectAnimationWithSendAnimationContext:(id)a1; - (void)transcriptCollectionViewController:(id)a0 didSelectItemAtIndexPath:(id)a1; - (void)transcriptCollectionViewController:(id)a0 didTapReplyCountStatusButtonForChatItem:(id)a1; - (void)transcriptCollectionViewController:(id)a0 requestDeleteJunkConversation:(id)a1; - (void)transcriptCollectionViewController:(id)a0 requestRecoverJunkConversation:(id)a1; - (BOOL)transcriptCollectionViewController:(id)a0 shouldCleanupFullscreenEffectUI:(id)a1; - (BOOL)transcriptCollectionViewController:(id)a0 shouldSetupFullscreenEffectUI:(id)a1; - (void)transcriptCollectionViewController:(id)a0 showMessageSomeoneForItemWithIndexPath:(id)a1; - (double)transcriptCollectionViewController:(id)a0 targetAlphaForChatItem:(id)a1; - (void)transcriptCollectionViewController:(id)a0 viewedCommSafetyItemWithIndexPath:(id)a1; - (void)transcriptCollectionViewController:(id)a0 willBeginImpactEffectAnimationWithSendAnimationContext:(id)a1; - (id)transcriptCollectionViewControllerAdditionalFullscreenEffectViews:(id)a0; - (void)transcriptCollectionViewControllerBlockContactButtonTapped:(id)a0; - (void)transcriptCollectionViewControllerChatItemsDidChange:(id)a0; - (void)transcriptCollectionViewControllerDidInsertAssociatedChatItem:(id)a0; - (void)transcriptCollectionViewControllerDidInset:(id)a0; - (void)transcriptCollectionViewControllerNeedsChatItemLayoutInvalidation:(id)a0; - (id)transcriptCollectionViewControllerOuterEffectPresentingView:(id)a0; - (void)transcriptCollectionViewControllerPerformBatchUpdateCompleted:(id)a0; - (BOOL)transcriptCollectionViewControllerPlaybackForOutgoingEffectsIsAllowed:(id)a0; - (void)transcriptCollectionViewControllerPlayingAudioDidChange:(id)a0; - (void)transcriptCollectionViewControllerReportSpamButtonTapped:(id)a0; - (void)transcriptCollectionViewControllerRestingStateDidChange:(id)a0; - (BOOL)transcriptCollectionViewControllerShouldLayoutFullscreenEffects:(id)a0; - (BOOL)transcriptCollectionViewControllerShouldPlayAudio:(id)a0; - (BOOL)transcriptCollectionViewControllerShouldShouldScrollToTopForStatusBarTap:(id)a0; - (void)transcriptCollectionViewControllerWillDisplayLastBalloon:(id)a0; - (void)transcriptCollectionViewControllerWillScrollToBottom:(id)a0; - (void)updateContact:(id)a0 withHandle:(id)a1; - (void)viewDidAppearDeferredSetup; - (BOOL)wantsReplyButton; @end