@class UICollectionViewDiffableDataSourceSectionSnapshotHandlers, NSString, NSArray, NSMapTable, NSHashTable, NSDiffableDataSourceTransaction, UITableView, NSMutableArray, UICollectionView, NSObject, UICollectionViewDiffableDataSourceReorderingHandlers, _UIDiffableDataSourceViewUpdater; @protocol OS_dispatch_queue, _UIDiffableDataSourceState; @interface __UIDiffableDataSource : NSObject <UICollectionViewDataSource, UITableViewDataSource> { UITableView *_tableView; UICollectionView *_collectionView; NSMapTable *_rendererMap; id /* block */ _rendererIdentifierProvider; NSHashTable *_sectionControllers; NSDiffableDataSourceTransaction *_pendingReorderingTransaction; NSDiffableDataSourceTransaction *_currentTransaction; BOOL _pendingReorderingTransactionShouldPerformViewAnimations; } @property (copy, nonatomic) id /* block */ tableViewCellConfigurationHandler; @property (copy, nonatomic) id /* block */ reuseIdentifierProvider; @property (copy, nonatomic) id /* block */ collectionViewCellConfigurationHandler; @property (retain, nonatomic) _UIDiffableDataSourceViewUpdater *viewUpdater; @property (readonly, nonatomic) NSObject<OS_dispatch_queue> *applyQueue; @property (readonly, nonatomic) _Atomic long long outstandingApplyCount; @property (readonly, nonatomic) NSObject<OS_dispatch_queue> *snapshotQueue; @property unsigned long long mutationQueueSource; @property (retain, nonatomic) id<_UIDiffableDataSourceState> state; @property (nonatomic) BOOL isApplyingWithoutRebasingSectionSnapshots; @property (retain, nonatomic) NSMutableArray *completionHandlersForBatchApply; @property (nonatomic) long long tableViewDefaultRowAnimation; @property (readonly, weak, nonatomic) UITableView *tableView; @property (copy, nonatomic) id /* block */ tableViewCellProvider; @property (readonly, weak, nonatomic) UICollectionView *collectionView; @property (readonly, weak, nonatomic) UICollectionView *_collectionView; @property (copy, nonatomic) id /* block */ supplementaryViewProvider; @property (readonly, nonatomic) long long numberOfItems; @property (readonly, nonatomic) long long numberOfSections; @property (readonly, nonatomic) NSArray *sectionIdentifiers; @property (readonly, nonatomic) NSArray *itemIdentifiers; @property (readonly, nonatomic) NSArray *reloadedSectionIdentifiers; @property (readonly, nonatomic) NSArray *reloadedItemIdentifiers; @property (readonly, nonatomic) NSArray *reconfiguredItemIdentifiers; @property (readonly, nonatomic) BOOL isSuppressingViewUpdates; @property (copy, nonatomic) id /* block */ supplementaryReuseIdentifierProvider; @property (copy, nonatomic) id /* block */ supplementaryViewConfigurationHandler; @property (copy, nonatomic) id /* block */ collectionViewCellProvider; @property (copy, nonatomic) id /* block */ cellObserver; @property (readonly, nonatomic) NSArray *sectionControllers; @property (copy, nonatomic) UICollectionViewDiffableDataSourceReorderingHandlers *reorderingHandlers; @property (copy, nonatomic) id /* block */ willApplySnapshotHandler; @property (copy, nonatomic) id /* block */ didApplySnapshotHandler; @property (copy, nonatomic) id /* block */ canReorderItemHandler; @property (copy, nonatomic) UICollectionViewDiffableDataSourceSectionSnapshotHandlers *sectionSnapshotHandlers; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; - (void)_computeCurrentTransactionForFinalSnapshot:(id)a0 withDataSourceDiffer:(id)a1; - (long long)_numberOfItemsInSection:(long long)a0 collectionView:(id)a1; - (id)indexPathForItemIdentifier:(id)a0; - (void)_applyDifferencesFromSnapshot:(id)a0 customAnimationsProvider:(id /* block */)a1; - (void)appendSectionWithIdentifier:(id)a0; - (void)validateIdentifiers; - (id)initWithCollectionView:(id)a0 cellProvider:(id /* block */)a1 reuseIdentifierProvider:(id /* block */)a2 cellConfigurationHandler:(id /* block */)a3 state:(id)a4 dataSource:(id)a5; - (id)_cellForRowAtIndexPathDeprecatedSPI:(id)a0 tableView:(id)a1; - (long long)indexForSectionIdentifier:(id)a0; - (void)_storeState:(id)a0; - (id)initWithCollectionView:(id)a0 reuseIdentifierProvider:(id /* block */)a1 cellConfigurationHandler:(id /* block */)a2; - (BOOL)_isDiffableDataSource; - (void)_commitReorderingForItemAtIndexPath:(id)a0 toDestinationIndexPath:(id)a1 shouldPerformViewAnimations:(BOOL)a2; - (BOOL)sectionController:(id)a0 shouldCollapseItem:(id)a1; - (id)_viewForSupplementaryElementOfKindDeprecatedSPI:(id)a0 atIndexPath:(id)a1 collectionView:(id)a2; - (id)_snapshotWithHandlerAtomic:(id /* block */)a0; - (id)_cellForItemAtIndexPath:(id)a0 collectionView:(id)a1; - (void)_willBeginReorderingForItemAtIndexPath:(id)a0; - (id)_diffableDataSourceImpl; - (void)applySnapshot:(id)a0; - (id)_reloadViewUpdatesForDiffUpdate:(id)a0 dataSource:(id)a1 ignoreInvalidItems:(BOOL)a2; - (id)initWithCollectionView:(id)a0 itemRenderers:(id)a1 rendererIdentifierProvider:(id /* block */)a2; - (id)initWithCollectionView:(id)a0 cellProvider:(id /* block */)a1 dataSource:(id)a2; - (id)associatedSectionControllerForItemIdentifier:(id)a0; - (long long)_numberOfSectionsForCollectionViewDeprecatedSPI:(id)a0; - (BOOL)canMoveItemAtIndexPath:(id)a0; - (long long)numberOfSectionsInTableView:(id)a0; - (void)applyDifferencesFromSnapshot:(id)a0 completion:(id /* block */)a1; - (void)applyDifferencesFromSnapshot:(id)a0 animatingDifferences:(BOOL)a1; - (id)sectionIdentifierForIndex:(long long)a0; - (void)reloadFromSnapshot:(id)a0 completion:(id /* block */)a1; - (void)_registerItemRenderers:(id)a0 rendererIdentifierProvider:(id /* block */)a1; - (void)insertSectionWithIdentifier:(id)a0 afterSectionWithIdentifier:(id)a1; - (id)snapshotForSection:(id)a0; - (id)sectionController:(id)a0 snapshotForExpandingParentItem:(id)a1 currentSectionSnapshot:(id)a2; - (BOOL)sectionController:(id)a0 shouldExpandItem:(id)a1; - (id)initWithTableView:(id)a0 reuseIdentifierProvider:(id /* block */)a1 cellConfigurationHandler:(id /* block */)a2; - (id)associatedSectionControllerForSectionIdentifier:(id)a0; - (id)_transactionForFinalSnapshot:(id)a0 dataSourceDiffer:(id)a1 shouldSkipRebasingSectionSnapshots:(BOOL)a2; - (id)_transactionForReloadUpdatesWithSnapshot:(id)a0; - (void)insertSectionsWithIdentifiers:(id)a0 beforeSectionWithIdentifier:(id)a1; - (id)_reorderingTransactionForReorderingUpdate:(id)a0; - (id)_cellForRowAtIndexPath:(id)a0 tableView:(id)a1; - (void)sectionController:(id)a0 willCollapseItem:(id)a1; - (BOOL)_isApplyingReorderingTransaction; - (long long)_numberOfSectionsForTableView:(id)a0; - (void)_commitStateAtomically:(id)a0; - (void)sectionController:(id)a0 willExpandItem:(id)a1; - (id)itemIdentifierForIndexPath:(id)a0; - (id)tableView:(id)a0 cellForRowAtIndexPath:(id)a1; - (long long)_numberOfItemsInSectionDeprecatedSPI:(long long)a0 collectionView:(id)a1; - (void)applySnapshot:(id)a0 toSection:(id)a1 animatingDifferences:(BOOL)a2 completion:(id /* block */)a3; - (void)_commitReorderingForItemAtIndexPath:(id)a0 toDestinationIndexPath:(id)a1; - (id)initWithCollectionView:(id)a0 sectionControllers:(id)a1 rendererIdentifierProvider:(id /* block */)a2; - (long long)tableView:(id)a0 numberOfRowsInSection:(long long)a1; - (id)initWithViewUpdatesSink:(id)a0; - (id)_cellForItemAtIndexPathDeprecatedSPI:(id)a0 collectionView:(id)a1; - (BOOL)sectionController:(id)a0 shouldQueryForSnapshotForExpandingParentItem:(id)a1; - (unsigned long long)_capabilities; - (void)_notifyDidApplyForCurrentTransactionIfNeeded; - (id)initWithCollectionView:(id)a0 cellProvider:(id /* block */)a1; - (void)applyDifferencesFromSnapshot:(id)a0 animatingDifferences:(BOOL)a1 completion:(id /* block */)a2; - (BOOL)_canApplySnapshotUpdateWithoutDiffing:(id)a0; - (id)_snapshotForSection:(id)a0; - (id)snapshot; - (void)_applyDifferencesFromSnapshot:(id)a0 toSection:(id)a1 animatingDifferences:(BOOL)a2 completion:(id /* block */)a3; - (long long)_numberOfRowsInSection:(long long)a0 tableView:(id)a1; - (void)_commitRebasedSectionSnapshotsFromCurrentTransactionIfNeeded; - (id)emptySnapshot; - (void)reloadFromSnapshot:(id)a0; - (long long)_numberOfSectionsForTableViewDeprecatedSPI:(id)a0; - (void)_notifyWillApplyForCurrentTransactionIfNeeded; - (void)_applyDifferencesFromSnapshot:(id)a0 viewPropertyAnimator:(id)a1 customAnimationsProvider:(id /* block */)a2; - (long long)_numberOfRowsInSectionDeprecatedSPI:(long long)a0 tableView:(id)a1; - (id)initWithTableView:(id)a0 cellProvider:(id /* block */)a1; - (void)appendItemsWithIdentifiers:(id)a0; - (void)insertSectionWithIdentifier:(id)a0 beforeSectionWithIdentifier:(id)a1; - (void)_applyDifferencesFromSnapshot:(id)a0 viewPropertyAnimator:(id)a1 customAnimationsProvider:(id /* block */)a2 animated:(BOOL)a3 completion:(id /* block */)a4; - (id)_viewForSupplementaryElementOfKind:(id)a0 atIndexPath:(id)a1 collectionView:(id)a2; - (id)_pendingReloadUpdatesForSnapshot:(id)a0; - (id)initWithTableView:(id)a0 cellProvider:(id /* block */)a1 reuseIdentifierProvider:(id /* block */)a2 cellConfigurationHandler:(id /* block */)a3 state:(id)a4 dataSource:(id)a5; - (void)addAssociatedSectionControllerIfNeeded:(id)a0; - (void)_resetCurrentTransaction; - (void)_performBatchApplyUsingReloadData:(id /* block */)a0; - (long long)_numberOfSectionsForCollectionView:(id)a0; - (void)_commitUpdate:(id)a0 snapshot:(id)a1 animated:(BOOL)a2 completion:(id /* block */)a3; - (id)_reloadViewUpdatesForDiffUpdate:(id)a0; - (long long)indexOfSectionIdentifier:(id)a0; - (void)appendSectionsWithIdentifiers:(id)a0; - (void)reloadSectionsWithIdentifiers:(id)a0; - (void)reconfigureItemsWithIdentifiers:(id)a0; - (void)moveItemWithIdentifier:(id)a0 beforeItemWithIdentifier:(id)a1; - (void)deleteAllItems; - (long long)numberOfItemsInSection:(id)a0; - (id)sectionIdentifierForSectionContainingItemIdentifier:(id)a0; - (void)moveSectionWithIdentifier:(id)a0 afterSectionWithIdentifier:(id)a1; - (void)applyDifferencesFromSnapshot:(id)a0; - (void)deleteItemsWithIdentifiers:(id)a0; - (void)_commitNewDataSource:(id)a0 withViewUpdates:(id)a1 viewPropertyAnimator:(id)a2 customAnimationsProvider:(id /* block */)a3 animated:(BOOL)a4 commitAlongsideHandler:(id /* block */)a5 completion:(id /* block */)a6; - (id)initWithState:(id)a0; - (void)_performApplyWithoutRebasingSectionSnapshots:(id /* block */)a0; - (void)insertItemsWithIdentifiers:(id)a0 afterItemWithIdentifier:(id)a1; - (void).cxx_destruct; - (void)deleteSectionsWithIdentifiers:(id)a0; - (long long)indexOfItemIdentifier:(id)a0; - (void)insertItemsWithIdentifiers:(id)a0 beforeItemWithIdentifier:(id)a1; - (id)itemIdentifiersInSectionWithIdentifier:(id)a0; - (void)moveSectionWithIdentifier:(id)a0 beforeSectionWithIdentifier:(id)a1; - (long long)collectionView:(id)a0 numberOfItemsInSection:(long long)a1; - (long long)numberOfSectionsInCollectionView:(id)a0; - (id)currentTransaction; - (void)reloadItemsWithIdentifiers:(id)a0; - (id)collectionView:(id)a0 viewForSupplementaryElementOfKind:(id)a1 atIndexPath:(id)a2; - (id)collectionView:(id)a0 cellForItemAtIndexPath:(id)a1; - (void)appendItemsWithIdentifiers:(id)a0 intoSectionWithIdentifier:(id)a1; - (void)moveItemWithIdentifier:(id)a0 afterItemWithIdentifier:(id)a1; - (void)insertSectionsWithIdentifiers:(id)a0 afterSectionWithIdentifier:(id)a1; @end