1 #import <React/RCTEventDispatcher.h>
2 
3 #import <Foundation/Foundation.h>
4 #import <UIKit/UIKit.h>
5 
6 #import "RNGHTouchEventType.h"
7 #import "RNGestureHandlerState.h"
8 
9 @interface RNGestureHandlerEventExtraData : NSObject
10 
11 @property (readonly) NSDictionary *data;
12 
13 - (instancetype)initWithData:(NSDictionary *)data;
14 
15 + (RNGestureHandlerEventExtraData *)forPosition:(CGPoint)position
16                            withAbsolutePosition:(CGPoint)absolutePosition
17                             withNumberOfTouches:(NSUInteger)numberOfTouches;
18 + (RNGestureHandlerEventExtraData *)forPosition:(CGPoint)position
19                            withAbsolutePosition:(CGPoint)absolutePosition
20                             withNumberOfTouches:(NSUInteger)numberOfTouches
21                                    withDuration:(NSUInteger)duration;
22 + (RNGestureHandlerEventExtraData *)forPan:(CGPoint)position
23                       withAbsolutePosition:(CGPoint)absolutePosition
24                            withTranslation:(CGPoint)translation
25                               withVelocity:(CGPoint)velocity
26                        withNumberOfTouches:(NSUInteger)numberOfTouches;
27 + (RNGestureHandlerEventExtraData *)forForce:(CGFloat)force
28                                  forPosition:(CGPoint)position
29                         withAbsolutePosition:(CGPoint)absolutePosition
30                          withNumberOfTouches:(NSUInteger)numberOfTouches;
31 + (RNGestureHandlerEventExtraData *)forPinch:(CGFloat)scale
32                               withFocalPoint:(CGPoint)focalPoint
33                                 withVelocity:(CGFloat)velocity
34                          withNumberOfTouches:(NSUInteger)numberOfTouches;
35 + (RNGestureHandlerEventExtraData *)forRotation:(CGFloat)rotation
36                                 withAnchorPoint:(CGPoint)anchorPoint
37                                    withVelocity:(CGFloat)velocity
38                             withNumberOfTouches:(NSUInteger)numberOfTouches;
39 + (RNGestureHandlerEventExtraData *)forEventType:(RNGHTouchEventType)eventType
40                              withChangedPointers:(NSArray<NSDictionary *> *)changedPointers
41                                  withAllPointers:(NSArray<NSDictionary *> *)allPointers
42                              withNumberOfTouches:(NSUInteger)numberOfTouches;
43 + (RNGestureHandlerEventExtraData *)forPointerInside:(BOOL)pointerInside;
44 @end
45 
46 @interface RNGestureHandlerEvent : NSObject <RCTEvent>
47 
48 - (instancetype)initWithReactTag:(NSNumber *)reactTag
49                       handlerTag:(NSNumber *)handlerTag
50                            state:(RNGestureHandlerState)state
51                        extraData:(RNGestureHandlerEventExtraData *)extraData
52                    coalescingKey:(uint16_t)coalescingKey NS_DESIGNATED_INITIALIZER;
53 
54 @end
55 
56 @interface RNGestureHandlerStateChange : NSObject <RCTEvent>
57 
58 - (instancetype)initWithReactTag:(NSNumber *)reactTag
59                       handlerTag:(NSNumber *)handlerTag
60                            state:(RNGestureHandlerState)state
61                        prevState:(RNGestureHandlerState)prevState
62                        extraData:(RNGestureHandlerEventExtraData *)extraData NS_DESIGNATED_INITIALIZER;
63 
64 @end
65