@interface VKBuildingGroup : VKPolygonalItemGroup { struct optional> { BOOL _hasValue; union ValueUnion { unsigned char data[184]; struct MeshSet { struct vector, std::allocator>> { void *__begin_; void *__end_; struct __compressed_pair *, std::allocator>> { void *__value_; } __end_cap_; } _vertexAndIndexCounts; struct vector, std::allocator>> { void *__begin_; void *__end_; struct __compressed_pair *, std::allocator>> { void *__value_; } __end_cap_; } _meshes; struct DataWrite { struct BufferMemory { struct ResourceAccessor *_accessor; struct BufferData *_user; struct Range { unsigned long long _min; unsigned long long _max; } _range; int _access; int _sync; char *_data; } _memory; } _vertexDataWrite; struct DataWrite { struct BufferMemory { struct ResourceAccessor *_accessor; struct BufferData *_user; struct Range { unsigned long long _min; unsigned long long _max; } _range; int _access; int _sync; char *_data; } _memory; } _indexDataWrite; unsigned char _meshIndex; unsigned short _meshVertexOffset; unsigned int _meshIndexOffset; struct MeshSetStorage *_storage; struct unique_ptr> { struct __compressed_pair> { struct MeshSetStorage *__value_; } __ptr_; } _internalStorage; struct shared_ptr { struct MeshSetStorageClient *__ptr_; struct __shared_weak_count *__cntrl_; } _storageClient; } type; } _value; } _strokeMeshInfo; struct optional> { BOOL _hasValue; union ValueUnion { unsigned char data[184]; struct MeshSet { struct vector, std::allocator>> { void *__begin_; void *__end_; struct __compressed_pair *, std::allocator>> { void *__value_; } __end_cap_; } _vertexAndIndexCounts; struct vector, std::allocator>> { void *__begin_; void *__end_; struct __compressed_pair *, std::allocator>> { void *__value_; } __end_cap_; } _meshes; struct DataWrite { struct BufferMemory { struct ResourceAccessor *_accessor; struct BufferData *_user; struct Range { unsigned long long _min; unsigned long long _max; } _range; int _access; int _sync; char *_data; } _memory; } _vertexDataWrite; struct DataWrite { struct BufferMemory { struct ResourceAccessor *_accessor; struct BufferData *_user; struct Range { unsigned long long _min; unsigned long long _max; } _range; int _access; int _sync; char *_data; } _memory; } _indexDataWrite; unsigned char _meshIndex; unsigned short _meshVertexOffset; unsigned int _meshIndexOffset; struct MeshSetStorage *_storage; struct unique_ptr> { struct __compressed_pair> { struct MeshSetStorage *__value_; } __ptr_; } _internalStorage; struct shared_ptr { struct MeshSetStorageClient *__ptr_; struct __shared_weak_count *__cntrl_; } _storageClient; } type; } _value; } _fillMeshInfoForPointyRoofs; struct vector, std::allocator>> { void *__begin_; void *__end_; struct __compressed_pair *, std::allocator>> { void *__value_; } __end_cap_; } _strokeMeshes; struct vector, std::allocator>> { void *__begin_; void *__end_; struct __compressed_pair *, std::allocator>> { void *__value_; } __end_cap_; } _fillMeshesForPointyRoofs; struct unique_ptr, std::default_delete>> { struct __compressed_pair *, std::default_delete>> { void *__value_; } __ptr_; } _extrusionFillMeshVendor; struct unique_ptr, std::default_delete>> { struct __compressed_pair *, std::default_delete>> { void *__value_; } __ptr_; } _extrusionStrokeMeshVendor; struct unique_ptr, std::default_delete>> { struct __compressed_pair *, std::default_delete>> { void *__value_; } __ptr_; } _pointyRoofFillMeshVendor; struct unique_ptr, std::default_delete>> { struct __compressed_pair *, std::default_delete>> { void *__value_; } __ptr_; } _pointyRoofStrokeMeshVendor; struct array>, 16UL> { struct vector, std::allocator>> { void *__begin_; void *__end_; struct __compressed_pair *, std::allocator>> { void *__value_; } __end_cap_; } __elems_[16]; } _extrusionFillCullingGroups; struct array>, 16UL> { struct vector, std::allocator>> { void *__begin_; void *__end_; struct __compressed_pair *, std::allocator>> { void *__value_; } __end_cap_; } __elems_[16]; } _extrusionStrokeCullingGroups; struct array>, 16UL> { struct vector, std::allocator>> { void *__begin_; void *__end_; struct __compressed_pair *, std::allocator>> { void *__value_; } __end_cap_; } __elems_[16]; } _fillCullingGroupsForPointyRoofs; struct array>, 16UL> { struct vector, std::allocator>> { void *__begin_; void *__end_; struct __compressed_pair *, std::allocator>> { void *__value_; } __end_cap_; } __elems_[16]; } _pointyRoofFillCullingGroups; struct array>, 16UL> { struct vector, std::allocator>> { void *__begin_; void *__end_; struct __compressed_pair *, std::allocator>> { void *__value_; } __end_cap_; } __elems_[16]; } _pointyRoofStrokeCullingGroups; struct vector>, std::allocator>>> { void *__begin_; void *__end_; struct __compressed_pair> *, std::allocator>>> { void *__value_; } __end_cap_; } _styleQueries; struct vector>, std::allocator>>> { void *__begin_; void *__end_; struct __compressed_pair> *, std::allocator>>> { void *__value_; } __end_cap_; } _flatRoofStyleQueries; struct vector>, std::allocator>>> { void *__begin_; void *__end_; struct __compressed_pair> *, std::allocator>>> { void *__value_; } __end_cap_; } _selectedStyleQueries; struct vector>, std::allocator>>> { void *__begin_; void *__end_; struct __compressed_pair> *, std::allocator>>> { void *__value_; } __end_cap_; } _selectedFlatRoofStyleQueries; } - (id)initWithStyleQuery:(void *)a0 tileZoom:(float)a1 fixedAroundCentroid:(const void *)a2 contentScale:(float)a3; - (unsigned char)maxAttributeSetsPerGroup; - (void)didFinishAddingData; - (const void *)commitRangesToPointyRoofTopRenderItemBatcher:(void *)a0 forMeshAtIndex:(unsigned long long)a1 cullingMask:(unsigned int)a2 featureIdPredicate:(struct function { struct __value_func { struct type { unsigned char x0[24]; } x0; void *x1; } x0; })a3; - (void)willAddDataWithAccessor:(struct ResourceAccessor { void /* function */ **x0; } *)a0; - (void)updateWithStyleManager:(const void *)a0; - (const void *)commitRangesToExtrusionStrokeRenderItemBatcher:(void *)a0 forMeshAtIndex:(unsigned long long)a1 cullingMask:(unsigned int)a2 featureIdPredicate:(struct function { struct __value_func { struct type { unsigned char x0[24]; } x0; void *x1; } x0; })a3; - (BOOL)canConstructPointyRoofForPolygon:(void *)a0 building:(void *)a1 buildingModel:(unsigned char)a2 scaleThreshold:(float)a3; - (void *)strokeMeshes; - (const void *)extrusionFillMeshVendor; - (void)addExtrusionForBuilding:(void *)a0 index:(unsigned long long)a1 ofTotal:(unsigned long long)a2; - (const void *)extrusionStrokeMeshVendor; - (id).cxx_construct; - (void *)fillMeshesForPointyRoofs; - (void)prepareForBuilding:(void *)a0 forRoofStyle:(unsigned char)a1 scaleThreshold:(float)a2; - (void).cxx_destruct; - (const void *)commitRangesToPointyRoofFillRenderItemBatcher:(void *)a0 forMeshAtIndex:(unsigned long long)a1 cullingMask:(unsigned int)a2 featureIdPredicate:(struct function { struct __value_func { struct type { unsigned char x0[24]; } x0; void *x1; } x0; })a3; - (BOOL)addPointyRoofForBuilding:(void *)a0 buildingModel:(unsigned char)a1 scaleThreshold:(float)a2 styleIndex:(float)a3; - (const void *)pointyRoofStrokeMeshVendor; - (const void *)commitRangesToExtrusionFillRenderItemBatcher:(void *)a0 forMeshAtIndex:(unsigned long long)a1 cullingMask:(unsigned int)a2 featureIdPredicate:(struct function { struct __value_func { struct type { unsigned char x0[24]; } x0; void *x1; } x0; })a3; - (void)addBuilding:(void *)a0 index:(unsigned long long)a1 ofTotal:(unsigned long long)a2 accessor:(struct ResourceAccessor { void /* function */ **x0; } *)a3 triangulator:(void *)a4 prepareExtrusion:(BOOL)a5 forRoofStyle:(unsigned char)a6 scaleThreshold:(float)a7; - (void *)styleQueriesForPointyRoofs:(BOOL)a0 selected:(BOOL)a1; - (const void *)commitRangesToPointyRoofStrokeRenderItemBatcher:(void *)a0 forMeshAtIndex:(unsigned long long)a1 cullingMask:(unsigned int)a2 featureIdPredicate:(struct function { struct __value_func { struct type { unsigned char x0[24]; } x0; void *x1; } x0; })a3; - (const void *)pointyRoofFillMeshVendor; @end