@class NSString, CADisplayLink, UILongPressGestureRecognizer, UITapGestureRecognizer, PKPhysicsWorld, PKPhysicsBody, UIPanGestureRecognizer, NSMutableArray, NSObject; @protocol OS_dispatch_source, SUUIPhysicalCirclesDelegate, SUUIPhysicalCirclesDataSource; @interface SUUIPhysicalCirclesView : UIView { NSObject *_circleLoadStepTimer; NSMutableArray *_circleBodies; CADisplayLink *_displayLink; PKPhysicsBody *_groundBody; long long _longPressCircleIndex; UILongPressGestureRecognizer *_longPressRecognizer; double _maximumFrequencyDistance; double _minimumFrequencyDistance; UIPanGestureRecognizer *_panRecognizer; void *_physicsKitFramework; PKPhysicsWorld *_physicsWorld; NSMutableArray *_repellors; UITapGestureRecognizer *_tapRecognizer; } @property (weak, nonatomic) id dataSource; @property (weak, nonatomic) id delegate; @property (nonatomic) struct SUUIPhysicalCircleConstants { double circleDensity; double circleLinearDamping; double circleMaximumDiameter; double circleMinimumDiameter; double springMaximumFrequency; double springMinimumFrequency; double springDamping; double translationForceMultiplier; } constants; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; - (void)dealloc; - (void)reloadData; - (id)initWithFrame:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0; - (void)_displayLinkTick:(id)a0; - (void).cxx_destruct; - (void)_panGestureAction:(id)a0; - (void)_startFluctuationForCircleView:(id)a0; - (void)removeRepellor:(id)a0; - (BOOL)_addNextMissingSpringJoint; - (void)_addSpringForCircleBody:(id)a0; - (void)_calculateFrequencyScaling; - (void)_cancelStepTimers; - (id)_circleBodyWithView:(id)a0; - (long long)_circleIndexForPoint:(struct CGPoint { double x0; double x1; })a0; - (struct CGPoint { double x0; double x1; })_initialPositionForCircleIndex:(long long)a0 view:(id)a1; - (void)_loadCirclesWithStartIndex:(long long)a0 totalCount:(long long)a1; - (void)_longPressAction:(id)a0; - (void)_reloadDidFinish; - (void)_removeCircleBodies:(id)a0; - (void)_stopFluctuationForCircleView:(id)a0; - (void)_tapGestureAction:(id)a0; - (void)addCirclesWithCount:(long long)a0; - (id)addRepellorWithCenter:(struct CGPoint { double x0; double x1; })a0 radius:(double)a1 bufferSize:(double)a2; - (id)circleViewAtIndex:(long long)a0; - (void)removeAllCirclesAnimated:(BOOL)a0 completionBlock:(id /* block */)a1; - (void)removeAllRepellors; - (void)removeCircleAtIndex:(long long)a0 animated:(BOOL)a1 completionBlock:(id /* block */)a2; - (void)removeCirclesInIndexSet:(id)a0 animated:(BOOL)a1 completionBlock:(id /* block */)a2; - (void)removeCirclesInIndexSet:(id)a0 byAnimatingToPoint:(struct CGPoint { double x0; double x1; })a1 delay:(double)a2 completionBlock:(id /* block */)a3; - (void)setSize:(struct CGSize { double x0; double x1; })a0 forCircleAtIndex:(long long)a1; - (void)startPhysics; - (void)stopPhysics; @end