@class TUIEmojiSearchInputViewController, NSArray, TUIEmojiSearchTextField, NSString, UIKeyboardEmojiCollectionView, UIResponder, UICollectionViewFlowLayout, UIKeyboardEmojiGraphicsTraits, UIKBTree, UIKeyboardEmojiCategory, NSIndexPath; @protocol UIKBEmojiHitTestResponder; @interface UIKeyboardEmojiCollectionInputView : UIKeyboardEmojiKeyView <UIKeyboardMediaControllerDelegate, UICollectionViewDataSource, UICollectionViewDelegate, TUIEmojiSearchInputViewControllerDelegate> { UIKeyboardEmojiCollectionView *_collectionView; UICollectionViewFlowLayout *_flowLayout; UIKeyboardEmojiGraphicsTraits *_emojiGraphicsTraits; unsigned long long _currentSection; BOOL _inputDelegateCanSupportAnimoji; BOOL _hasShownAnimojiFirstTimeExperience; BOOL _shouldRetryFetchingAnimojiRecents; BOOL _useWideAnimojiCell; BOOL _hasShownAnimojiCell; double _frameInset; BOOL _showingVariants; long long _selectedVariant; long long _currentVariantRow; UIKBTree *_selectedPopupKey; } @property (copy, nonatomic) id /* block */ completionBlock; @property (retain, nonatomic) NSIndexPath *selectedIndexPath; @property BOOL isSearching; @property (retain, nonatomic) NSArray *searchResults; @property (weak) UIKeyboardEmojiCategory *category; @property (weak, nonatomic) UIResponder<UIKBEmojiHitTestResponder> *hitTestResponder; @property (readonly) BOOL isDraggingInputView; @property (weak, nonatomic) NSIndexPath *tappedSkinToneEmoji; @property (retain, nonatomic) TUIEmojiSearchInputViewController *emojiSearchInputViewController; @property (retain, nonatomic) TUIEmojiSearchTextField *emojiSearchField; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (BOOL)shouldHighlightEmoji:(id)a0; + (BOOL)wantsScreenTraits; - (void)scrollViewDidEndDecelerating:(id)a0; - (void)dimKeys:(id)a0; - (void)emojiSearchTextFieldDidBecomeInactive:(id)a0; - (struct CGSize { double x0; double x1; })collectionView:(id)a0 layout:(id)a1 sizeForItemAtIndexPath:(id)a2; - (BOOL)handleKeyEvent:(id)a0; - (double)collectionView:(id)a0 layout:(id)a1 minimumLineSpacingForSectionAtIndex:(long long)a2; - (struct CGSize { double x0; double x1; })collectionView:(id)a0 layout:(id)a1 referenceSizeForHeaderInSection:(long long)a2; - (void)dealloc; - (struct UIEdgeInsets { double x0; double x1; double x2; double x3; })collectionView:(id)a0 layout:(id)a1 insetForSectionAtIndex:(long long)a2; - (double)collectionView:(id)a0 layout:(id)a1 minimumInteritemSpacingForSectionAtIndex:(long long)a2; - (void)collectionView:(id)a0 willDisplayCell:(id)a1 forItemAtIndexPath:(id)a2; - (void)setContentScaleFactor:(double)a0; - (void)emojiSearchTextFieldWillBecomeInactive:(id)a0; - (void).cxx_destruct; - (long long)collectionView:(id)a0 numberOfItemsInSection:(long long)a1; - (void)emojiSearchTextFieldDidBecomeActive:(id)a0; - (long long)numberOfSectionsInCollectionView:(id)a0; - (void)emojiSearchTextFieldWillClear:(id)a0; - (void)scrollViewDidScroll:(id)a0; - (id)collectionView:(id)a0 viewForSupplementaryElementOfKind:(id)a1 atIndexPath:(id)a2; - (id)collectionView:(id)a0 cellForItemAtIndexPath:(id)a1; - (void)didMoveToWindow; - (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; - (void)emojiSearchTextFieldWillBecomeActive:(id)a0; - (id)subTreeHitTest:(struct CGPoint { double x0; double x1; })a0; - (void)updateLastSeenItemForIndexPath:(id)a0; - (BOOL)_handleBaseKeySelectionEvent:(id)a0; - (BOOL)_handleInitialSelectionEvent:(id)a0; - (BOOL)_handleVariantSelectionEvent:(id)a0; - (double)_recentlyUsedMediaRoundedOffset:(double)a0 recentlyUsedMediaCellWidth:(double)a1; - (void)_setUserHasSelectedSkinToneEmoji:(BOOL)a0; - (BOOL)_shouldShowRecentlyUsedMedia; - (BOOL)_userHasSelectedSkinToneEmoji; - (BOOL)baseStringIsCoupleEmoji:(id)a0; - (BOOL)cellShouldScrollWhenSelectedAtIndexPath:(id)a0; - (void)didDismissCardForKeyboardMediaController:(id)a0; - (long long)didInputSubTree:(id)a0; - (void)didInsertMediaForKeyboardMediaController:(id)a0; - (void)didPresentCardForKeyboardMediaController:(id)a0; - (void)didTearDownRecentsViewForKeyboardMediaController:(id)a0; - (double)distanceInScrollingDirection:(struct CGSize { double x0; double x1; })a0; - (id)emojiBaseFirstCharacterString:(id)a0; - (id)emojiBaseString:(id)a0; - (long long)emojiCategoryTypeForSection:(long long)a0; - (void)emojiSearchDidReceiveResults:(id)a0 forExactQuery:(id)a1 autocorrectedQuery:(id)a2; - (void)emojiSearchTextFieldDidReset:(id)a0; - (id)firstFullyVisibleHeader; - (BOOL)genderEmojiBaseStringNeedVariantSelector:(id)a0; - (BOOL)handleKeyInputForCollectionViewNavigation:(id)a0; - (BOOL)handleKeyInputForFamilySelector:(id)a0; - (BOOL)handleKeyInputForVariantSelector:(id)a0; - (BOOL)handleSelectionEvent:(id)a0; - (long long)indexForPrettyCategoryDisplay:(id)a0; - (id)initWithFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0 keyplane:(id)a1 key:(id)a2; - (id)initWithFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0 keyplane:(id)a1 key:(id)a2 screenTraits:(id)a3; - (void)insertSelectedEmoji:(id)a0 shouldDismissPopover:(BOOL)a1; - (id)itemInRect:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0; - (long long)keyCodeForCurrentEnvironmentFromKeyCode:(long long)a0; - (BOOL)keySupportsVariants:(id)a0; - (double)pointInScrollingDirection:(struct CGPoint { double x0; double x1; })a0; - (void)resetSelectionIfNeeded; - (double)scrollingEndPoint; - (double)scrollingStartPoint; - (id)selectedChildSkinToneEmoji:(id)a0; - (void)shouldDismissModalDisplayView:(id)a0; - (BOOL)showingRecents; - (BOOL)skinToneWasUsedForEmoji:(id)a0; - (double)snappedXOffsetForOffset:(double)a0 scrubbing:(BOOL)a1; - (id)treeForCell:(id)a0; - (void)updateHighlightForIndexPath:(id)a0 scrollIfNeeded:(BOOL)a1 animateScroll:(BOOL)a2; - (void)updateOffsetForSearchResults; - (void)updatePreferencesForSelectedEmoji:(id)a0; - (void)updateToCategory:(long long)a0; - (long long)updateToCategoryWithOffsetPercentage:(double)a0; - (void)willDisplayModalActionView:(id)a0 withSubTreeKeyView:(id)a1 completion:(id /* block */)a2; @end