@class NSUUID, TSTGroupValueTuple, TSTGroupBy, NSMutableDictionary, TSTGroupNodeFormatManager, TSCEUIDSet, TSCECellValue, TSCEMutableUIDSet; @interface TSTGroupNode : TSPObject { TSTGroupValueTuple *_cachedGroupValueTuple; struct unordered_map, std::equal_to, std::allocator>> { struct __hash_table, std::__unordered_map_hasher, std::hash, std::equal_to>, std::__unordered_map_equal, std::equal_to, std::hash>, std::allocator>> { struct unique_ptr, void *> *> *[], std::__bucket_list_deallocator, void *> *> *>>> { struct __compressed_pair, void *> *> **, std::__bucket_list_deallocator, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator, void *> *> *>> { struct __compressed_pair, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair, void *> *>, std::allocator, void *>>> { struct __hash_node_base, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair, std::hash, std::equal_to>> { unsigned long long __value_; } __p2_; struct __compressed_pair, std::equal_to, std::hash>> { float __value_; } __p3_; } __table_; } _aggNodes; NSMutableDictionary *_children; struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _childrenLock; struct TSUIndexSet { unsigned char _isEmpty : 1; unsigned char _hasSingleRange : 1; struct TSUIndexRange { long long _begin; long long _end; } _singleRange; struct *_multipleRanges; } _rowUidsIndexSet; struct TSUIndexSet { unsigned char _isEmpty : 1; unsigned char _hasSingleRange : 1; struct TSUIndexRange { long long _begin; long long _end; } _singleRange; struct *_multipleRanges; } _pivotOnlyRowIndexes; TSTGroupNodeFormatManager *_formatManager; struct unordered_map, std::equal_to, std::allocator>> { struct __hash_table, std::__unordered_map_hasher, std::hash, std::equal_to>, std::__unordered_map_equal, std::equal_to, std::hash>, std::allocator>> { struct unique_ptr, void *> *> *[], std::__bucket_list_deallocator, void *> *> *>>> { struct __compressed_pair, void *> *> **, std::__bucket_list_deallocator, void *> *> *>>> { void **__value_; struct __bucket_list_deallocator, void *> *> *>> { struct __compressed_pair, void *> *> *>> { unsigned long long __value_; } __data_; } __value_; } __ptr_; } __bucket_list_; struct __compressed_pair, void *> *>, std::allocator, void *>>> { struct __hash_node_base, void *> *> { void *__next_; } __value_; } __p1_; struct __compressed_pair, std::hash, std::equal_to>> { unsigned long long __value_; } __p2_; struct __compressed_pair, std::equal_to, std::hash>> { float __value_; } __p3_; } __table_; } _childNodesByRowUid; TSCEMutableUIDSet *_disconnectedRowUids; struct vector> { struct TSUCellCoord *__begin_; struct TSUCellCoord *__end_; struct __compressed_pair> { struct TSUCellCoord *__value_; } __end_cap_; } _aggNodeCoordsToUnpack; } @property (nonatomic) TSTGroupBy *groupBy; @property (readonly) struct TSKUIDStruct { unsigned long long _lower; unsigned long long _upper; } groupUid; @property (readonly) struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } groupValueUid; @property (readonly) struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } labelUid; @property (readonly) NSUUID *groupUuid; @property (readonly) NSUUID *groupValueUuid; @property (readonly, nonatomic) TSTGroupValueTuple *groupValueTuple; @property (readonly, nonatomic) TSCECellValue *groupCellValue; @property (readonly, nonatomic) unsigned char groupLevel; @property (readonly, nonatomic) unsigned int rowCount; @property (readonly, nonatomic) BOOL hasUnfilteredRows; @property (nonatomic) TSTGroupNode *parentNode; @property (readonly, nonatomic) TSCEUIDSet *childGroupUids; @property (readonly, nonatomic) TSCEUIDSet *unfilteredChildGroupUids; @property (readonly, nonatomic) TSCEUIDSet *directChildGroupUids; @property (readonly, nonatomic) TSCEUIDSet *unfilteredDirectChildGroupUids; @property (readonly, nonatomic) BOOL isLeaf; @property (readonly, nonatomic) BOOL isBlankNode; @property (readonly, nonatomic) BOOL isErrorNode; @property (readonly, nonatomic) void *aggNodes; + (id)localizedStringForCellValue:(id)a0 categoryLevel:(unsigned char)a1 groupBy:(id)a2; + (BOOL)needFormulasForAggregateType:(unsigned char)a0; + (id)normalizedStringForCompare:(id)a0; - (void)dealloc; - (id).cxx_construct; - (void).cxx_destruct; - (void)addChild:(id)a0 withKey:(id)a1; - (void)saveToArchiver:(id)a0; - (void)loadFromUnarchiver:(id)a0; - (struct TSKUIDStructVectorTemplate { struct TSKUIDStruct *x0; struct TSKUIDStruct *x1; struct __compressed_pair> { struct TSKUIDStruct *x0; } x2; })nodePath; - (void)enumerateGroupsAtLevel:(unsigned char)a0 withBlock:(id /* block */)a1; - (id)groupNodeForGroupUid:(const struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } *)a0; - (struct TSKUIDStructVectorTemplate { struct TSKUIDStruct *x0; struct TSKUIDStruct *x1; struct __compressed_pair> { struct TSKUIDStruct *x0; } x2; })unfilteredRowUidsAsVector; - (void)clearEmptyNodes; - (BOOL)containsRowUid:(const struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } *)a0; - (struct TSKUIDStructVectorTemplate { struct TSKUIDStruct *x0; struct TSKUIDStruct *x1; struct __compressed_pair> { struct TSKUIDStruct *x0; } x2; })rowUidsAsVector; - (id)safeOrderedChildrenForArchiving; - (void)addAggNode:(id)a0; - (void)addChangesTo:(id)a0 forDemotingValueAtLevel:(unsigned char)a1 toLevel:(unsigned char)a2; - (void)addChangesTo:(id)a0 forPromotingValueAtLevel:(unsigned char)a1 toLevel:(unsigned char)a2; - (void)addChangesTo:(id)a0 forRemovingValueAtLevel:(unsigned char)a1; - (void)addChangesTo:(id)a0 forReplacingValue:(id)a1 atLevel:(unsigned char)a2; - (void)addRowUid:(const struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } *)a0; - (id)aggNodeForColumnUid:(const struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } *)a0; - (id)aggregateRefForType:(unsigned char)a0 atLevel:(unsigned char)a1 forColumnUid:(const struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } *)a2; - (id)canonicalKeyStringAtLevel:(unsigned char)a0; - (void)clearAllGroupNodes; - (id)computedGroupValueTuple; - (BOOL)containsAnyRowUidInRowUidSet:(id)a0; - (void)encodeToArchive:(void *)a0 backwardCompatOptions:(unsigned long long)a1 archiver:(id)a2; - (void)enumerateAllGroupsWithStop:(BOOL *)a0 withBlock:(id /* block */)a1; - (void)enumerateDirectChildren:(id /* block */)a0; - (void)enumerateGroupsAtLevel:(unsigned char)a0 withStop:(BOOL *)a1 withBlock:(id /* block */)a2; - (void)enumerateGroupsBetweenLevel:(unsigned char)a0 andLevel:(unsigned char)a1 withBlock:(id /* block */)a2; - (void)enumerateGroupsBetweenLevel:(unsigned char)a0 andLevel:(unsigned char)a1 withStop:(BOOL *)a2 withBlock:(id /* block */)a3; - (void)enumerateRowUidsWithBlock:(id /* block */)a0; - (id)findGroupNodeForDisplayValuesFromSplitter:(id)a0 atLevel:(unsigned char)a1 startAtComponent:(unsigned long long)a2 startAtWord:(unsigned long long)a3 preserveFlags:(struct TSUPreserveFlags { unsigned char x0; } *)a4; - (id)findGroupNodeForValue:(id)a0 atLevel:(unsigned char)a1 locale:(id)a2; - (struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; })firstVisibleNodeUsingColumnRowUIDMap:(id)a0 forDimension:(long long)a1 leafLevel:(unsigned char)a2 pivotTableHiddenExtent:(id)a3; - (id)groupHierarchyTreeAsFiltered:(BOOL)a0 usingOrder:(id)a1 forDimension:(long long)a2; - (id)groupNodeForRowUid:(const struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } *)a0 atLevel:(unsigned char)a1; - (id)groupValueAtLevel:(unsigned char)a0; - (id)groupValueCellValue; - (id)groupValueCellValueForGroupBySet:(id)a0 aggIndex:(unsigned short)a1 appendAggregateName:(BOOL)a2; - (id)groupValueHierarchyForChart:(BOOL)a0; - (id)groupValueHierarchyForChart:(BOOL)a0 groupBySet:(id)a1 aggIndex:(unsigned short)a2 appendAggregateName:(BOOL)a3; - (id)groupValueHierarchyRefAtLevel:(unsigned char)a0; - (id)groupValueHierarchyStringWithDelimiterString:(id)a0; - (id)groupValueHierarchyStringWithDelimiterString:(id)a0 namingContext:(id)a1; - (id)groupValueRefAtLevel:(unsigned char)a0; - (id)initAsRootNodeForContext:(id)a0; - (id)initAsRootNodeForGroupBy:(id)a0; - (id)initWithArchive:(const void *)a0 forGroupBy:(id)a1; - (id)initWithGroupCellValue:(id)a0 context:(id)a1 atLevel:(unsigned char)a2 groupUid:(struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; })a3 children:(id)a4; - (id)initWithGroupCellValue:(id)a0 groupBy:(id)a1 atLevel:(unsigned char)a2 groupUid:(struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; })a3 children:(id)a4; - (id)insertRowUid:(const struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } *)a0 atRowIndex:(unsigned int)a1 forGroupValueTuple:(id)a2 atLevel:(unsigned char)a3 withLocale:(id)a4 createdGroupNodeCount:(unsigned long long *)a5; - (void)loadFromArchive:(const void *)a0 unarchiver:(id)a1 forGroupBy:(id)a2; - (void)markAsDirtyWithCalcEngine:(id)a0; - (void)markDependentsAsDirtyWithCalcEngine:(id)a0; - (void)p_addChildGroupUidsIntoSet:(id)a0 recursively:(BOOL)a1 skipFiltered:(BOOL)a2; - (void)p_refreshGroupValue; - (struct TSUIndexSet { unsigned char x0 : 1; unsigned char x1 : 1; struct TSUIndexRange { long long x0; long long x1; } x2; struct *x3; })pivotOnlyRowIndexes; - (id)rawGroupValueCellValue; - (void)rebuildFormulasForAggNode:(id)a0; - (void)removeAllRowUids; - (void)removeChildForKey:(id)a0; - (void)removeRowUid:(const struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; } *)a0 forGroupValueTuple:(id)a1 atLevel:(unsigned char)a2 withLocale:(id)a3; - (void)removeRowUids:(id)a0; - (void)setupWithGroupCellValue:(id)a0 groupBy:(id)a1 atLevel:(unsigned char)a2 groupUid:(struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; })a3 children:(id)a4; - (struct TSKUIDStruct { unsigned long long x0; unsigned long long x1; })uidReturn; - (void)unpackAfterUnarchiveForGroupBy:(id)a0 atLevel:(unsigned char)a1; - (BOOL)updateGroupCellValueIfKeyMatches:(id)a0; - (void)updateWithDocumentRoot:(id)a0; @end