@class NSDictionary, CKTranscriptLayoutMessageEditingContext, NSIndexPath, CKPluginPlaybackManager, IMChat, NSString, NSMutableSet, UICollectionViewDiffableDataSource, NSArray, NSValue, CKTranscriptCollectionView, NSObject, CKTranscriptBalloonSelectionManager, UIView, CKFullScreenEffectManager, CKImpactEffectManager, IMStateCaptureAssistant, CKTranscriptCompositor, CKAudioController, UINavigationController, NSDate, NSIndexSet, CKConversation, UITapGestureRecognizer; @protocol OS_dispatch_group, CKGradientReferenceView, CKFullscreenEffectView, UIDragInteractionDelegate, CKTranscriptCollectionViewControllerDelegate; @interface CKTranscriptCollectionViewController : CKViewController <CKAudioControllerDelegate, CKTranscriptCompositorDatasourceDelegate, CKLocationShareBalloonViewDelegate, CKLocationSharingDelegate, CKVideoPlayerBalloonViewDelegate, CKTranscriptActionButtonCellDelegate, CKTranscriptPhotoStackCellDelegate, CKTitledImageBalloonViewDelegate, CKTranscriptCollectionViewDelegate, CKMovieBalloonViewDelegate, CNAvatarViewDelegate, IMStateLoggable, UICollectionViewDelegateFlowLayout, CKFullScreenEffectManagerDelegate, CKPluginPlaybackManagerDelegate, CKAssociatedMessageTranscriptCellDelegate, CKTranscriptBalloonCellDelegate, CKTranscriptBalloonSelectionManagerDelegate, CKTranscriptBalloonSelectionManagerDataSource, CKCommunicationSafetyEDUScreenProtocol, CKJunkRecoveryTranscriptCellDelegate, CKBalloonViewDelegate, CKObscurableBalloonViewDelegate, CKCoreTranscriptControllerProtocol, CKSendAnimationManagerDelegate, UICollectionViewDataSource> { NSIndexPath *_itemIndexPathToHighlight; } @property (retain, nonatomic) UINavigationController *commSafetyEDUNavigationController; @property (nonatomic) struct CGSize { double width; double height; } collectionViewSize; @property (nonatomic) double lastViewWidthUsedToLayoutChatItems; @property (copy, nonatomic) NSArray *notifications; @property (retain, nonatomic) NSString *transcriptIdentifier; @property (retain, nonatomic) CKConversation *conversation; @property (retain, nonatomic) CKTranscriptCollectionView *collectionView; @property (retain, nonatomic) CKTranscriptCompositor *compositor; @property (copy, nonatomic) NSArray *chatItems; @property (copy, nonatomic) NSArray *associatedChatItems; @property (nonatomic, getter=isSettingChatItems) BOOL settingChatItems; @property (retain, nonatomic) NSObject<OS_dispatch_group> *updateAnimationGroup; @property (retain, nonatomic) CKAudioController *audioController; @property (nonatomic) BOOL audioControllerWasPlayingBeforeScrub; @property (nonatomic) double balloonMaxWidth; @property (nonatomic) struct UIEdgeInsets { double top; double left; double bottom; double right; } marginInsets; @property (retain, nonatomic) NSDictionary *pluginSnapshots; @property (retain, nonatomic) CKPluginPlaybackManager *pluginPlaybackManager; @property (nonatomic) BOOL isPerformingRegenerateOrReloadOnlyUpdate; @property (nonatomic) struct CGPoint { double x; double y; } peekSampleTranslation; @property (nonatomic, getter=isPeeking) BOOL peeking; @property (nonatomic) BOOL isLoadingMoreMessages; @property (copy, nonatomic) NSString *speakerTransferGUID; @property (nonatomic) BOOL sizedFullTranscript; @property (nonatomic) BOOL shouldUseOpaqueMask; @property (retain, nonatomic) UIView<CKFullscreenEffectView> *topEffectView; @property (retain, nonatomic) NSMutableSet *currentEffectDecorationViews; @property (nonatomic) BOOL filterAllButFirstMessage; @property (nonatomic) BOOL playedLastImpactEffectForTransitionFromComposing; @property (retain, nonatomic) UIView *snapshotOfPluginBeingReplacedByBreadcrumb; @property (retain, nonatomic) NSValue *presentedChatItemScrollOffset; @property (nonatomic) BOOL isPresentingChatItemForKeyboard; @property (retain, nonatomic) NSString *mostRecentlyTouchedPlugin; @property (copy, nonatomic) id /* block */ transcriptUpdateCompletion; @property (retain, nonatomic) IMStateCaptureAssistant *stateCaptureAssistant; @property (retain, nonatomic) UICollectionViewDiffableDataSource *dataSource; @property (readonly, nonatomic) CKTranscriptBalloonSelectionManager *selectionManager; @property (readonly, nonatomic, getter=isShowingTranscriptTimestamps) BOOL showingTranscriptTimestamps; @property (retain, nonatomic) NSDate *transcriptBecameVisibleTimestamp; @property (readonly, nonatomic) BOOL wantsDrawerLayout; @property (readonly, nonatomic) IMChat *chat; @property (readonly, nonatomic) BOOL isInline; @property (weak, nonatomic) id<CKTranscriptCollectionViewControllerDelegate> delegate; @property (retain, nonatomic) UIView<CKGradientReferenceView> *gradientReferenceView; @property (copy, nonatomic) NSIndexSet *hiddenItems; @property (copy, nonatomic) NSIndexSet *hiddenAssociatedItems; @property (copy, nonatomic) NSIndexSet *hiddenAssociatedItemsForMessageEditing; @property (copy, nonatomic) NSIndexSet *hiddenBalloonViews; @property (copy, nonatomic) NSIndexSet *poppedBalloonsHiddenUntilNextChatItemUpdate; @property (nonatomic) BOOL shouldScrollToBottomOnInitialLoad; @property (nonatomic) BOOL shouldLoadDefaultConversationViewingMessageCountOnAppear; @property (retain, nonatomic) CKImpactEffectManager *impactEffectManager; @property (retain, nonatomic) CKFullScreenEffectManager *fullscreenEffectManager; @property (nonatomic) BOOL transitionedFromComposing; @property (nonatomic) BOOL transitioningFromComposing; @property (nonatomic, getter=isTranscriptUpdateAnimated) BOOL transcriptUpdateAnimated; @property (nonatomic) BOOL allowsPluginPlayback; @property (nonatomic) double pluginPlaybackDelay; @property (retain, nonatomic, setter=__setCurrentTestName:) NSString *__CurrentTestName; @property (nonatomic) long long contentAnimationPauseReasons; @property (weak, nonatomic) id<UIDragInteractionDelegate> dragInteractionDelegate; @property (retain, nonatomic) UITapGestureRecognizer *loggingTapGestureRecognizer; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; @property (retain, nonatomic) CKTranscriptLayoutMessageEditingContext *messageEditingContext; + (id)logHandle; + (id)chatItemsDidChangeNotification; + (struct CGSize { double x0; double x1; })defaultCollectionViewSize; + (id)offrampLearnMoreURL; - (void)scrollViewDidEndDecelerating:(id)a0; - (id)logHandle; - (id)collectionView:(id)a0 previewForHighlightingContextMenuWithConfiguration:(id)a1; - (void)collectionView:(id)a0 didDeselectItemAtIndexPath:(id)a1; - (void)collectionView:(id)a0 didSelectItemAtIndexPath:(id)a1; - (id)_collectionView:(id)a0 styleForContextMenuWithConfiguration:(id)a1; - (void)viewWillAppear:(BOOL)a0; - (void)dealloc; - (void)collectionView:(id)a0 didEndDisplayingSupplementaryView:(id)a1 forElementOfKind:(id)a2 atIndexPath:(id)a3; - (id)collectionView:(id)a0 previewForDismissingContextMenuWithConfiguration:(id)a1; - (void)reloadData; - (void)traitCollectionDidChange:(id)a0; - (void)collectionView:(id)a0 willDisplaySupplementaryView:(id)a1 forElementKind:(id)a2 atIndexPath:(id)a3; - (void)viewDidLayoutSubviews; - (id)collectionView:(id)a0 contextMenuConfigurationForItemAtIndexPath:(id)a1 point:(struct CGPoint { double x0; double x1; })a2; - (BOOL)scrollViewShouldScrollToTop:(id)a0; - (id)_collectionView:(id)a0 accessoriesForContextMenuWithConfiguration:(id)a1 layoutAnchor:(struct { unsigned long long x0; unsigned long long x1; double x2; double x3; long long x4; })a2; - (id)stateDictionaryForDiagnosticsRequest; - (BOOL)collectionView:(id)a0 shouldHighlightItemAtIndexPath:(id)a1; - (void)scrollViewDidEndDragging:(id)a0 willDecelerate:(BOOL)a1; - (void)scrollViewDidEndScrollingAnimation:(id)a0; - (void)setEditing:(BOOL)a0 animated:(BOOL)a1; - (void)didCancel:(id)a0; - (void)collectionView:(id)a0 willDisplayCell:(id)a1 forItemAtIndexPath:(id)a2; - (void)loadView; - (void)presentViewController:(id)a0 animated:(BOOL)a1 completion:(id /* block */)a2; - (void)collectionView:(id)a0 willPerformPreviewActionForMenuWithConfiguration:(id)a1 animator:(id)a2; - (BOOL)collectionView:(id)a0 canFocusItemAtIndexPath:(id)a1; - (void)collectionView:(id)a0 willDisplayContextMenuWithConfiguration:(id)a1 animator:(id)a2; - (void)viewWillDisappear:(BOOL)a0; - (void)scrollViewDidScrollToTop:(id)a0; - (BOOL)_canShowWhileLocked; - (void)collectionView:(id)a0 didEndDisplayingCell:(id)a1 forItemAtIndexPath:(id)a2; - (void).cxx_destruct; - (void)collectionView:(id)a0 willEndContextMenuInteractionWithConfiguration:(id)a1 animator:(id)a2; - (void)viewDidAppear:(BOOL)a0; - (long long)collectionView:(id)a0 numberOfItemsInSection:(long long)a1; - (long long)numberOfSectionsInCollectionView:(id)a0; - (void)viewWillTransitionToSize:(struct CGSize { double x0; double x1; })a0 withTransitionCoordinator:(id)a1; - (id)collectionViewLayout; - (id)presentingViewControllerForAvatarView:(id)a0; - (void)viewDidDisappear:(BOOL)a0; - (void)scrollViewDidScroll:(id)a0; - (id)collectionView:(id)a0 cellForItemAtIndexPath:(id)a1; - (void)scrollViewWillBeginDragging:(id)a0; - (void)scrollViewWillEndDragging:(id)a0 withVelocity:(struct CGPoint { double x0; double x1; })a1 targetContentOffset:(inout struct CGPoint { double x0; double x1; } *)a2; - (id)avatarView:(id)a0 orderedPropertiesForProperties:(id)a1 category:(id)a2; - (void)_resizingStart:(id)a0; - (void)_showLeaveConversationFromView:(id)a0; - (id)balloonPluginForViewController:(id)a0; - (void)parentControllerDidBecomeActive; - (void)touchUpInsideCellFailureButton:(id)a0; - (void)_dismissInterventionController:(id)a0; - (void)_messageParents; - (id)compositorMessageEditingContext; - (id)generateSnapshotForCKChatItems:(id)a0; - (BOOL)hasRecentTouchForSendingPlugin:(id)a0; - (void)launchReaderViewForBalloonView:(id)a0; - (void)playbackSpeedDidChangeForAudioMessageBalloonView:(id)a0 playbackSpeed:(double)a1; - (void)printTranscript; - (void)selectChatItem:(id)a0; - (void)touchUpInsideCellSpeakerButton:(id)a0; - (void)__raiseGestureRecognized:(id)a0; - (void)_addAttachmentsToProvidersArray:(id)a0 forChatItems:(id)a1; - (BOOL)_allowsEffectAutoPlayback; - (void)_animateAssociatedChatItemWithIndices:(id)a0; - (void)_animateChatItemInsertion:(id)a0 inserted:(id)a1 wantsScrollToBottom:(BOOL)a2 scrollToBottomDuration:(double *)a3; - (void)_animateChatItemReload:(id)a0 reload:(id)a1 associatedInserted:(id)a2; - (void)_animateChatItemRemoval:(id)a0 removed:(id)a1; - (double)_balloonHorizontalOffsetForParentChatItem:(id)a0 contentAlignmentRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1 responsibleChatItems:(id *)a2 individualOffsets:(id *)a3; - (void)_blockHandle:(id)a0; - (BOOL)_canUseOpaqueMask; - (id)_chatItemForGUID:(id)a0; - (id)_ckChatItemWithGUID:(id)a0 inSection:(unsigned long long)a1; - (void)_collectionViewDidRestAsync:(BOOL)a0; - (void)_conversationListFinishedMerging:(id)a0; - (id)_currentTopChatItemForAggregateChatItem:(id)a0; - (void)_deferredStartPlayback; - (void)_deselectChatItemGuid:(id)a0; - (void)_diffAssociatedItemsWithOldAssociatedItems:(id)a0 removedAssociatedIndexes:(id *)a1 insertedAssociatedIndexes:(id *)a2; - (void)_dismissMoreHelpView:(id)a0; - (void)_downgradeMessage:(id)a0; - (void)_downgradeMessage:(id)a0 andDowngradeChat:(BOOL)a1; - (void)_downgradeMessageAtIndexPath:(id)a0; - (void)_downgradeMessageAtIndexPath:(id)a0 andDowngradeChat:(BOOL)a1; - (void)_forceReloadChatItems; - (double)_fullMaxWidth; - (void)_handleAssociatedMessageCellTapEvent:(id)a0 isDoubleTap:(BOOL)a1; - (void)_handleAudioBalloonTapForIndexPath:(id)a0; - (void)_handleCommSafetyMessageSomeoneStatusButtonTappedForIndexPath:(id)a0; - (void)_handleCommSafetySensitiveReceiveStatusButtonTappedForIndexPath:(id)a0; - (void)_handleEditHistoryButtonTappedForIndexPath:(id)a0; - (void)_handleFailedEditStatusButtonTappedForIndexPath:(id)a0; - (void)_handlePluginBreadcrumbingInChatItems:(id)a0 withIMChatItems:(id)a1 inserted:(id *)a2 removed:(id *)a3 completion:(id /* block */)a4; - (void)_handleTapOnMessageRetractionChatItem:(id)a0; - (void)_hideBalloonViewIfNecessaryForCell:(id)a0 indexPath:(id)a1; - (void)_highlightCell:(id)a0 autoDismiss:(BOOL)a1; - (void)_identifyIndicesNeedingCustomAnimationsForIMChatItems:(id)a0 inserted:(id)a1 removed:(id)a2; - (unsigned long long)_indexOfBreadcrumbReplacingTranscriptPluginInChatItems:(id)a0 inserted:(id)a1 removed:(id)a2 outIndexOfReplacedPlugin:(unsigned long long *)a3 outIndexOfNewPlugin:(unsigned long long *)a4; - (id)_indexPathOfCellContainingStampButton:(id)a0; - (void)_indicesOfReplyChatItemsToInsertWithoutFading:(id)a0 inserted:(id)a1 outInsertIndices:(id *)a2; - (void)_indicesOfTranscriptPluginChatItemRemoveAndInsertedWithoutFading:(id)a0 inserted:(id)a1 removed:(id)a2 outInsertIndices:(id *)a3 outRemoveIndices:(id *)a4; - (id)_insertChatItemsInto:(id)a0 withIMChatItems:(id)a1 inserted:(id)a2 insertedUnreadMessage:(id *)a3 insertedLocalUnsentChatItem:(id *)a4; - (BOOL)_isHistoryLoadingNeededForDirection:(long long)a0 withTargetContentOffset:(struct CGPoint { double x0; double x1; })a1 forKeyboardNavigation:(BOOL)a2; - (BOOL)_isRecognizerScrubbingOnCurrentAudioMessageBalloon:(id)a0; - (id)_itemGUIDsForItems:(id)a0 inIMChatItem:(id)a1; - (id)_itemProviderForSelectedChatItemsWithMultipleSenders:(id)a0; - (id)_itemProviderForSelectedChatItemsWithSingleSender:(id)a0; - (void)_launchTapToRadar; - (void)_loadMessagesIfNeededWithTargetContentOffset:(struct CGPoint { double x0; double x1; })a0 forKeyboardNavigation:(BOOL)a1; - (id)_logChatItems:(id)a0 withRange:(struct _NSRange { unsigned long long x0; unsigned long long x1; })a1; - (id)_logChatItems:(id)a0 withUpdates:(id)a1; - (void)_logVisibleChatItems; - (struct _NSRange { unsigned long long x0; unsigned long long x1; })_loggingRangeForUpdates:(id)a0 chatItemsCount:(long long)a1; - (id)_mediaObjectsForOrganicChatItem:(id)a0 onIndexPath:(id)a1; - (id)_nextChatItemOfType:(Class)a0 afterIndex:(long long)a1 inChatItems:(id)a2; - (BOOL)_pluginChatItem:(id)a0 hasControllerConformingToProtocol:(id)a1; - (void)_presentEditedMessageResendConfirmationAlertForMessage:(id)a0; - (void)_presentMessageCanNoLongerBeEditedAlert; - (void)_presentMessageCanNoLongerBeRetractedAlert; - (void)_presentOfframpDetonationAlert; - (void)_presentRetractedMessageResendConfirmationAlertForIMChatItem:(id)a0; - (id)_previousChatItemOfType:(Class)a0 beforeIndex:(long long)a1 inChatItems:(id)a2; - (void)_prewarmBalloonControllers; - (void)_prewarmLinkPresentations; - (void)_prewarmMediaPreviews; - (void)_prewarmTranscriptAssetsIfNecessary; - (void)_quickActionPinButtonWasTapped:(id)a0 atIndexPath:(id)a1 chatItem:(id)a2; - (void)_quickActionSaveButtonWasTapped:(id)a0 atIndexPath:(id)a1 chatItem:(id)a2; - (void)_refreshLocationsForRecipientsIfNecessary; - (void)_regenerateChatItemsIn:(id)a0 withIMChatItems:(id)a1 regenerate:(id)a2 shouldShowBlackholeAlert:(BOOL *)a3; - (void)_releaseActiveBalloonControllers; - (void)_removeChatItemsFrom:(id)a0 removed:(id)a1; - (void)_replayLastImpactEffectIfNotFromMe; - (void)_requestChatItemLayoutInvalidation; - (void)_resendEditedMessageForChatItem:(id)a0; - (void)_resendFailedMessages; - (void)_resendMessageAtIndexPath:(id)a0; - (void)_resendMessageRetractionForChatItem:(id)a0; - (void)_resizingEnd:(id)a0; - (id)_sanitizeInsertedIndices:(id)a0 inChatItems:(id)a1 withIMChatItems:(id)a2; - (void)_saveMediaObjects:(id)a0 withMomentShareURL:(id)a1 sender:(id)a2; - (void)_searchForSelectedBalloonHack; - (void)_selectChatItemGuid:(id)a0 selectionState:(id)a1; - (BOOL)_selectedChatItemsHaveMultipleSenders:(id)a0; - (void)_setHoldUpdatesForStickerMoveAnimation:(BOOL)a0; - (void)_setHoldingWhilePresentingKeyboardForChatItem:(BOOL)a0; - (BOOL)_shouldScrollToBottomOrReplyButton:(BOOL *)a0 insertedUnreadMessage:(BOOL)a1 insertedLocalUnsentChatItem:(BOOL)a2; - (void)_showAutoDonationAlert:(id)a0 forAppName:(id)a1 bundleID:(id)a2; - (void)_showBlockContactSelectionAlertFromView:(id)a0; - (void)_showMoreHelp; - (void)_startPlaybackWithIndexPaths:(id)a0; - (void)_tearDownLiveBubbles; - (void)_trackPhotoStackEvent:(id)a0 forStackBalloonView:(id)a1 transcriptOrientation:(char)a2; - (void)_updateAudioControllerForInserted:(id)a0 chatItems:(id)a1; - (void)_updateCollectionViewForChatItems:(id)a0 oldChatItems:(id)a1 inserted:(id)a2 removed:(id)a3 associatedInserted:(id *)a4 associatedRemoved:(id *)a5 completion:(id /* block */)a6; - (void)_updateCollectionViewSnapshotForChatItems:(id)a0 reloadingItemGUIDs:(id)a1 animatingDifferences:(BOOL)a2 associatedInserted:(id *)a3 associatedRemoved:(id *)a4 completion:(id /* block */)a5; - (void)_updateEffectViewMessageRect:(id)a0 effect:(id)a1; - (void)_updateHiddenBalloonViews; - (void)_updateLayoutAndConfigureVisibleCells; - (void)_updatePluginPlaybackManagerForInsertedChatItems:(id)a0; - (void)_updateSnapshotWithoutAnimation:(id)a0 reloadingItemGUIDs:(id)a1 completion:(id /* block */)a2; - (void)_updateTranscriptChatItems:(id)a0 inserted:(id)a1 removed:(id)a2 reload:(id)a3 regenerate:(id)a4 animated:(BOOL)a5 completion:(id /* block */)a6; - (void)_updateTranscriptChatItemsWithAnimation:(id)a0 withIMChatItems:(id)a1 oldChatItems:(id)a2 insertedChatItems:(id)a3 inserted:(id)a4 removed:(id)a5 reload:(id)a6 reloadItemGUIDs:(id)a7 wantsScrollToBottom:(BOOL)a8 scrollToBottomDuration:(double *)a9 completion:(id /* block */)a10; - (void)_updateTranscriptChatItemsWithoutAnimation:(id)a0; - (void)acceptPressedForSecondReceivingCommSafetyEDUScreen:(id)a0 withItemIndexPath:(id)a1; - (void)acceptPressedForSecondSendingCommSafetyEDUScreen:(id)a0 withComposition:(id)a1; - (void)addContentAnimationPauseReasons:(long long)a0; - (void)addressBookChanged:(id)a0; - (id)associatedChatItemForGUID:(id)a0; - (void)associatedMessageTranscriptCellDoubleTapped:(id)a0; - (void)associatedMessageTranscriptCellLongTouched:(id)a0; - (void)audioBalloonScrubberDidChangeValue:(double)a0; - (void)audioBalloonScrubberWithRecognizer:(id)a0 didChangeValue:(double)a1; - (void)audioController:(id)a0 mediaObjectDidFinishPlaying:(id)a1; - (void)audioController:(id)a0 mediaObjectProgressDidChange:(id)a1 currentTime:(double)a2 duration:(double)a3; - (void)audioControllerDidPause:(id)a0; - (void)audioControllerDidStop:(id)a0; - (void)audioControllerPlayingDidChange:(id)a0; - (id)audioMessageMediaObjectsFromBalloonView:(id)a0; - (id)balloonOffsetMapForLayout:(id)a0 resetsOffsetMapAfterUse:(BOOL)a1; - (BOOL)balloonTextViewIsSelected; - (void)balloonView:(id)a0 mediaObjectDidFinishPlaying:(id)a1; - (void)balloonView:(id)a0 userDidDragOutsideBalloonWithPoint:(struct CGPoint { double x0; double x1; })a1; - (void)balloonView:(id)a0 willInsertPluginViewAsSubview:(id)a1; - (void)balloonViewDoubleTapped:(id)a0; - (id)balloonViewForChatItem:(id)a0; - (id)balloonViewForIndexPath:(id)a0; - (void)balloonViewLongTouched:(id)a0; - (void)balloonViewSelected:(id)a0 withModifierFlags:(long long)a1 selectedText:(id)a2; - (void)balloonViewShouldCopyToPasteboard:(id)a0; - (void)balloonViewShowInlineReply:(id)a0; - (void)balloonViewTapped:(id)a0 withModifierFlags:(long long)a1 selectedText:(id)a2; - (void)balloonViewTextViewDidChangeSelection:(id)a0 selectedText:(id)a1 textView:(id)a2; - (void)balloonViewTitleTapped:(id)a0; - (void)beginPresentingChatItemForKeyboardPresentation:(id)a0 layoutAreaContentInsets:(struct UIEdgeInsets { double x0; double x1; double x2; double x3; })a1 completion:(id /* block */)a2; - (BOOL)canInteractWithObscuredItem; - (BOOL)canRaiseToListen; - (BOOL)canRaiseToTalk; - (id)cellForAssociatedChatItem:(id)a0; - (id)cellForChatItem:(id)a0; - (id)chatForSendAnimationManager:(id)a0; - (id)chatItemAtIndexPath:(id)a0; - (id)chatItemForCell:(id)a0; - (id)chatItemForGUID:(id)a0; - (void)chatItemsDidChange:(id)a0; - (void)clearRecentPluginTouch; - (id)collectionView:(id)a0 cellForCKChatItem:(id)a1 atIndexPath:(id)a2; - (void)collectionView:(id)a0 didRecognizePanGestureWithPoint:(struct CGPoint { double x0; double x1; })a1; - (id)collectionView:(id)a0 layout:(id)a1 chatItemForItemAtIndexPath:(id)a2; - (id)collectionView:(id)a0 layout:(id)a1 chatItemForSupplementaryViewAtIndexPath:(id)a2; - (BOOL)collectionView:(id)a0 shouldAllowSwipeForItemAtIndexPath:(id)a1; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })collectionViewAdjustedContentFrameWithKeyboard:(struct UIEdgeInsets { double x0; double x1; double x2; double x3; })a0; - (id)collectionViewControllerForImpactEffectManager:(id)a0; - (void)collectionViewDidInset:(id)a0; - (void)collectionViewLayout:(id)a0 sizeDidChange:(struct CGSize { double x0; double x1; })a1; - (void)collectionViewLayoutRestingDidChange:(id)a0; - (void)collectionViewWillInset:(id)a0 targetContentInset:(inout struct UIEdgeInsets { double x0; double x1; double x2; double x3; } *)a1; - (void)collectionViewWillProgrammaticallyScroll:(id)a0 animated:(BOOL)a1; - (void)collectionViewWillScroll:(id)a0 targetContentOffset:(inout struct CGPoint { double x0; double x1; } *)a1; - (id)compositorDatasourceItemsForSection:(long long)a0; - (struct UIEdgeInsets { double x0; double x1; double x2; double x3; })compositorMarginInsets; - (BOOL)compositorSupportsCustomLayoutGroupsForLayoutProvider:(id)a0; - (BOOL)compositorSupportsCustomLayoutGroupsForSection:(long long)a0; - (void)configureAssociatedCell:(id)a0 forChatItem:(id)a1 atIndexPath:(id)a2; - (void)configureCell:(id)a0 forCKChatItem:(id)a1 atIndexPath:(id)a2; - (void)configureSpeakerButtonCell:(id)a0 forItemAtIndexPath:(id)a1; - (void)connectivityChanged:(id)a0; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })convertedBoundsToCullFromView:(id)a0; - (void)copyChatItemsToPasteboard:(id)a0; - (void)copySelectedChatItemsToPasteboard; - (void)cullCellSubviews; - (id)currentEffectForCollectionView:(id)a0 layout:(id)a1; - (id)dataSourceWithCollectionView:(id)a0; - (void)declinePressedForCommSafetyEduScreen:(id)a0 isSending:(BOOL)a1 withComposition:(id)a2 withSensitiveMediaObjects:(id)a3 withIdentifiersOfShelvedImages:(id)a4; - (void)deleteChatItems:(id)a0 sender:(id)a1; - (void)deleteConversationPressedInTranscriptCell:(id)a0; - (void)deleteSelectedChatItems:(id)a0; - (void)deselectAllBalloons; - (void)didAskForMoreHelp:(id)a0; - (void)didBlockContact:(id)a0; - (void)didBlockContacts:(id)a0; - (void)didConfirmForInterventionViewController:(id)a0; - (void)didLeaveConversation:(id)a0; - (void)didPinchPhotoStackCell:(id)a0; - (void)didRejectForInterventionViewController:(id)a0; - (void)didTapBlockContact; - (void)didTapPendingMomentSharePhotoStackBalloonView:(id)a0; - (void)didTapTranscriptActionButtonCell:(id)a0; - (void)didTapUnavailableMomentShareBalloonView:(id)a0; - (void)didTapWaysToGetHelp; - (void)effectManager:(id)a0 didStartEffect:(id)a1; - (void)effectManager:(id)a0 didStopEffect:(id)a1; - (void)endHoldingUpdatesAfterQuicklookCancelsDismiss; - (void)endPresentingChatItemForKeyboardPresentation:(id)a0 completion:(id /* block */)a1; - (void)fetchEarlierMessagesForConversation:(id /* block */)a0; - (void)fetchRecentMessagesForConversation:(id /* block */)a0; - (id)hawkingFailurePromptMessageForHandle:(id)a0; - (void)hideTranscriptTimestampsIfNeeded; - (void)highlightItemAtIndexPathWhenDisplayed:(id)a0 autoDismiss:(BOOL)a1; - (id)imChatItems; - (id)indexPathForBalloonView:(id)a0; - (id)initWithConversation:(id)a0 delegate:(id)a1 balloonMaxWidth:(double)a2 marginInsets:(struct UIEdgeInsets { double x0; double x1; double x2; double x3; })a3; - (id)initWithConversation:(id)a0 delegate:(id)a1 balloonMaxWidth:(double)a2 marginInsets:(struct UIEdgeInsets { double x0; double x1; double x2; double x3; })a3 collectionViewSize:(struct CGSize { double x0; double x1; })a4; - (id)initWithConversation:(id)a0 delegate:(id)a1 notifications:(id)a2 balloonMaxWidth:(double)a3 marginInsets:(struct UIEdgeInsets { double x0; double x1; double x2; double x3; })a4; - (id)initWithConversation:(id)a0 delegate:(id)a1 notifications:(id)a2 balloonMaxWidth:(double)a3 marginInsets:(struct UIEdgeInsets { double x0; double x1; double x2; double x3; })a4 collectionViewSize:(struct CGSize { double x0; double x1; })a5; - (void)installedAppsChanged:(id)a0; - (void)interactionStartedFromPreviewItemControllerInBalloonView:(id)a0; - (void)interactionStartedWithPluginBalloonView:(id)a0; - (void)interactionStoppedFromPreviewItemControllerInBalloonView:(id)a0; - (void)invalidateChatItemLayoutWithNewBalloonMaxWidth:(double)a0 marginInsets:(struct UIEdgeInsets { double x0; double x1; double x2; double x3; })a1 traitCollection:(id)a2; - (BOOL)isLoadMoreSpinnerAboutToBeVisibleForDirection:(long long)a0 withTargetContentOffset:(struct CGPoint { double x0; double x1; })a1; - (BOOL)isLoadMoreSpinnerVisibleForDirection:(long long)a0; - (BOOL)isRevealingContentEnabled; - (BOOL)isVisiblePlugin:(id)a0; - (id)lastMessagePartChatItem; - (id)layoutGroupForDatasourceItems:(id)a0 environment:(id)a1 layoutItems:(id)a2; - (void)liveBalloonTouched:(id)a0; - (void)liveViewController:(id)a0 requestPresentationStyle:(unsigned long long)a1; - (void)liveViewController:(id)a0 stagePayload:(id)a1 skipShelf:(BOOL)a2 allowAllCommits:(BOOL)a3 completionHandler:(id /* block */)a4; - (void)liveViewController:(id)a0 stageSticker:(id)a1 skipShelf:(BOOL)a2 allowAllCommits:(BOOL)a3 completionHandler:(id /* block */)a4; - (id)liveViewControllerContextIdentifier:(id)a0; - (void)loadEarlierMessages; - (void)loadEarlierMessagesForConversation; - (void)loadMessagesIfNeededSkipValidation; - (id)loadMoreItemIndexPathForDirection:(long long)a0; - (void)loadRecentMessages; - (void)loadRecentMessagesForConversation; - (void)locationShareBalloonViewIgnoreButtonTapped:(id)a0; - (void)locationShareBalloonViewShareButtonTapped:(id)a0; - (void)locationSharingClient:(id)a0 showShareLocationMenuWithBalloonPluginView:(id)a1; - (void)locationStringDidChange:(id)a0; - (id)makeHawkingPromptForMessage:(id)a0 toRecipient:(id)a1 fromSender:(id)a2 withSMSOption:(BOOL)a3; - (id)messagePartForBalloonView:(id)a0; - (void)messagePressedForCommSafetyEduScreen:(id)a0 isSending:(BOOL)a1 withComposition:(id)a2 withSensitiveMediaObjects:(id)a3 withIdentifiersOfShelvedImages:(id)a4; - (void)multiwayCallStateChanged:(id)a0; - (id)newChatItemWithIMChatItem:(id)a0 traitCollection:(id)a1; - (id)newChatItemWithNotification:(id)a0; - (id)newChatItemsWithIMChatItems:(id)a0; - (id)newChatItemsWithNotifications:(id)a0; - (id)overrideCurrentFrameMapForLayout:(id)a0; - (id)overrideTargetFrameMapForLayout:(id)a0; - (id)parentViewControllerForReusableVideoPlayer:(id)a0; - (void)performResumeDeferredSetup; - (void)photoStackBalloonView:(id)a0 didChangeCurrentAssetReference:(id)a1 isProgrammaticChange:(BOOL)a2 didChangeIndex:(BOOL)a3; - (void)photoStackBalloonView:(id)a0 photoStack:(id)a1 didSelectAssetReference:(id)a2; - (void)photoStackBalloonView:(id)a0 photoStackDidSelectAdditionalItems:(id)a1; - (void)playEffectsIfNecessaryWithInsertedUnreadMessage:(id)a0 insertedLocalUnsentChatItem:(id)a1; - (void)playFullscreenEffectIfNecessaryAutoplayingOutgoingEffect:(BOOL)a0 autoplayingIncomingEffect:(BOOL)a1 insertedUnreadMessage:(id)a2 insertedLocalUnsentChatItem:(id)a3; - (void)playImpactEffectIfNecessaryAutoplayingOutgoingEffect:(BOOL)a0 autoplayingIncomingEffect:(BOOL)a1 impactEffectChatItem:(id)a2; - (void)pluginPlaybackManagerDidStopPlayback:(id)a0; - (void)prepareForSuspend; - (void)presentHawkingPromptForChatItem:(id)a0; - (void)presentUserInterventionScreenForIndexPath:(id)a0; - (void)previewDidChange:(id)a0; - (id)printableViewController; - (void)quickActionButtonWasTapped:(id)a0; - (void)raiseGestureRecognized:(id)a0; - (void)reconfigureVisibleSpeakerButtonCells; - (void)recoverJunkPressedInTranscriptCell:(id)a0; - (void)reloadChatItemsAtIndexes:(id)a0 animated:(BOOL)a1; - (void)reloadChatItemsAtIndexes:(id)a0 animated:(BOOL)a1 completion:(id /* block */)a2; - (void)reloadLayoutForBalloonView:(id)a0; - (void)removeContentAnimationPauseReasons:(long long)a0; - (void)reportJunkAlertControllerActionHandler; - (id)reportJunkAlertControllerTitle; - (void)repromptLastBlackholeFailureIfNotPrompted; - (void)scrollToBottomAnimated:(BOOL)a0 withDuration:(double)a1 insertedUnreadMessage:(id)a2 insertedLocalUnsentChatItem:(id)a3 wantsScrollToReplyButton:(BOOL)a4 withCompletion:(id /* block */)a5; - (BOOL)scrollToTopOfLastBubbleCellAnimated:(BOOL)a0; - (void)selectRangeWithIndexPath:(id)a0; - (void)selectSingleBalloonView:(id)a0; - (id)selectedChatItems; - (id)selectedItems; - (void)selectionManager:(id)a0 didAddChatItem:(id)a1 selectionState:(id)a2; - (void)selectionManager:(id)a0 didRemoveChatItem:(id)a1; - (id)selectionManagerChatItems:(id)a0; - (void)selectionManagerDidRemoveAllSelectedChatItems:(id)a0; - (void)sendAnimationManagerDidStopAnimation:(id)a0 context:(id)a1; - (void)sendAnimationManagerWillStartAnimation:(id)a0 context:(id)a1; - (void)setChatItems:(id)a0 removedAssociatedIndexes:(id *)a1 insertedAssociatedIndexes:(id *)a2; - (void)setScrollAnchor:(double)a0; - (void)setSelectedItems:(id)a0; - (id)sharingMenu; - (BOOL)shouldEndShowingEditHistoryOnViewDisappearance; - (BOOL)shouldPresentHawkingPromptForChatItem:(id)a0; - (void)showGridForChatItem:(id)a0; - (void)showTrascriptTimestamps; - (void)sizeFullTranscriptIfNecessary; - (void)snapshotDidChange:(id)a0; - (void)snapshotTaken:(id)a0; - (void)startFullscreenEffectIfNeededForChatItem:(id)a0; - (void)startPluginPlaybackAfterDelay:(double)a0; - (void)startSuppressingSoundsForBulletinMessagesFromNotifications:(id)a0; - (void)stopFullscreenEffect; - (void)stopPlayingAudio; - (void)stopPluginPlayback; - (void)stopSuppressingSoundsForBulletinMessagesWithChatItems:(id)a0; - (void)touchUpInsideCellBlockContactButton:(id)a0; - (void)touchUpInsideCellReportSpamButton:(id)a0; - (void)touchUpInsideCellStampButton:(id)a0; - (void)touchUpInsideCellStatusButton:(id)a0; - (void)touchUpInsideNotifyAnywayButton:(id)a0; - (id)transcriptBackgroundColor; - (void)transcriptBalloonCell:(id)a0 didEndBalloonSwipeWithDelta:(double)a1 swipeVelocity:(struct CGPoint { double x0; double x1; })a2; - (void)transcriptBalloonCell:(id)a0 didTranslateBalloonByDelta:(double)a1; - (void)transferRestored:(id)a0; - (void)transferUpdated:(id)a0; - (void)tuConversationBalloonJoinButtonTapped:(id)a0; - (void)unloadCachedSizeAndReloadChatItemAtIndexPath:(id)a0; - (void)updateAnimationPaused; - (void)updateEffectViewMessageRects; - (void)updateLastAddressedHandleID:(id)a0 lastAddressedSIMID:(id)a1; - (void)updateTargetAlphaForVisibleChatItems; - (void)updateTranscript:(id /* block */)a0 animated:(BOOL)a1 completion:(id /* block */)a2; - (void)updateTranscriptChatItems:(id)a0 inserted:(id)a1 removed:(id)a2 reload:(id)a3 regenerate:(id)a4 animated:(BOOL)a5 checkFiltered:(BOOL)a6 completion:(id /* block */)a7; - (void)updateTranscriptChatItems:(id)a0 inserted:(id)a1 removed:(id)a2 reload:(id)a3 regenerate:(id)a4 animated:(BOOL)a5 completion:(id /* block */)a6; - (void)verticallyScrollTranscriptByAmount:(double)a0 animated:(BOOL)a1 completion:(id /* block */)a2; - (id)videoPlayerReusePool; - (void)viewDidAppearDeferredSetup; @end