UNPKG

@nativescript-community/gesturehandler

Version:

Declarative API exposing platform native touch and gesture system to NativeScript.

181 lines (180 loc) 8 kB
import { View } from '@nativescript/core'; import { HandlerOptions, LongPressGestureHandlerOptions, NativeViewGestureHandlerOptions, PanGestureHandlerOptions, PinchGestureHandlerOptions, RotationGestureHandlerOptions, TapGestureHandlerOptions } from './gesturehandler'; import { BaseGestureRootView, BaseNative, GestureHandlerStateEvent, GestureHandlerTouchEvent, GestureState, GestureStateEventData, GestureTouchEventData, HandlerType, ManagerBase, OptionsTypeMap, TypeMap, ViewDisposeEvent, ViewInitEvent } from './gesturehandler.common'; export { GestureState, GestureHandlerStateEvent, GestureHandlerTouchEvent, GestureStateEventData, GestureTouchEventData, HandlerType, ViewInitEvent, ViewDisposeEvent }; export declare class GestureRootView extends BaseGestureRootView { createNativeView(): com.nativescript.gesturehandler.PageLayout; initNativeView(): void; disposeNativeView(): void; get registry(): any; } export declare function install(overrideNGestures?: boolean): void; export declare abstract class Handler<T extends com.swmansion.gesturehandler.GestureHandler<any>, U extends HandlerOptions> extends BaseNative<T, U> { hitSlop: any; enabled: boolean; shouldCancelWhenOutside: boolean; shouldStartGesture: (arg: any) => boolean; manager: WeakRef<Manager>; touchListener: com.swmansion.gesturehandler.OnTouchEventListener<T>; nativeGetterKey: string; getExtraData(handler: T): { positions: any[]; numberOfPointers: number; }; initNativeView(native: T, options: U): void; disposeNativeView(): void; handleShouldStartGesture(handler: T, event: android.view.MotionEvent): boolean; onTouchEvent(handler: T, event: android.view.MotionEvent): void; onStateChange(handler: T, state: number, prevState: number): void; tag: number; attachedView: View; setTag(tag: number): void; getTag(): number; getView(): globalAndroid.view.View; cancel(): void; attachToView(view: View): void; detachFromView(view?: View): void; } export declare class TapGestureHandler extends Handler<com.swmansion.gesturehandler.TapGestureHandler, TapGestureHandlerOptions> { numberOfTaps: number; maxDurationMs: number; maxDelayMs: number; maxDeltaX: number; maxDeltaY: number; maxDist: number; minPointers: number; createNative(options: any): com.swmansion.gesturehandler.TapGestureHandler; getExtraData(handler: com.swmansion.gesturehandler.TapGestureHandler): { positions: any[]; numberOfPointers: number; } & { x: number; y: number; absoluteX: number; absoluteY: number; }; } export declare class PanGestureHandler extends Handler<com.swmansion.gesturehandler.PanGestureHandler, PanGestureHandlerOptions> { minDist: number; activeOffsetXStart: number; activeOffsetXEnd: number; failOffsetXStart: number; failOffsetXEnd: number; activeOffsetYStart: number; activeOffsetYEnd: number; failOffsetYStart: number; failOffsetYEnd: number; minVelocity: number; minVelocityX: number; minVelocityY: number; minPointers: number; maxPointers: number; avgTouches: number; numberOfPointers: number; createNative(options: any): com.swmansion.gesturehandler.PanGestureHandler; getExtraData(handler: com.swmansion.gesturehandler.PanGestureHandler): { positions: any[]; numberOfPointers: number; } & { x: number; y: number; absoluteX: number; absoluteY: number; translationX: number; translationY: number; velocityX: number; velocityY: number; }; } export declare class PinchGestureHandler extends Handler<com.swmansion.gesturehandler.PinchGestureHandler, PinchGestureHandlerOptions> { minSpan: number; createNative(options: any): com.swmansion.gesturehandler.PinchGestureHandler; getExtraData(handler: com.swmansion.gesturehandler.PinchGestureHandler): { positions: any[]; numberOfPointers: number; } & { x: number; y: number; absoluteX: number; absoluteY: number; scale: number; focalX: number; focalY: number; velocity: number; }; } export declare enum FlingDirection { DIRECTION_LEFT, DIRECTION_UP, DIRECTION_DOWN, DIRECTION_RIGHT } export declare class FlingGestureHandler extends Handler<com.swmansion.gesturehandler.FlingGestureHandler, TapGestureHandlerOptions> { numberOfPointers: number; direction: number; createNative(options: any): com.swmansion.gesturehandler.FlingGestureHandler; getExtraData(handler: com.swmansion.gesturehandler.FlingGestureHandler): { positions: any[]; numberOfPointers: number; } & { direction: string; }; } export declare class LongPressGestureHandler extends Handler<com.swmansion.gesturehandler.LongPressGestureHandler, LongPressGestureHandlerOptions> { minDurationMs: number; maxDist: number; createNative(options: any): com.swmansion.gesturehandler.LongPressGestureHandler; getExtraData(handler: com.swmansion.gesturehandler.LongPressGestureHandler): { positions: any[]; numberOfPointers: number; } & { x: number; y: number; absoluteX: number; absoluteY: number; }; } export declare class RotationGestureHandler extends Handler<com.swmansion.gesturehandler.RotationGestureHandler, RotationGestureHandlerOptions> { createNative(options: any): com.swmansion.gesturehandler.RotationGestureHandler; getExtraData(handler: com.swmansion.gesturehandler.RotationGestureHandler): { positions: any[]; numberOfPointers: number; } & { x: number; y: number; absoluteX: number; absoluteY: number; rotation: number; anchorX: number; anchorY: number; velocity: number; }; } export declare class NativeViewGestureHandler extends Handler<com.swmansion.gesturehandler.NativeViewGestureHandler, NativeViewGestureHandlerOptions> { shouldActivateOnStart: boolean; disallowInterruption: boolean; createNative(options: any): com.swmansion.gesturehandler.NativeViewGestureHandler; getExtraData(handler: com.swmansion.gesturehandler.NativeViewGestureHandler): { positions: any[]; numberOfPointers: number; } & { pointerInside: boolean; }; } export declare class Manager extends ManagerBase { _interactionManager: com.nativescript.gesturehandler.GestureHandlerInteractionController; configureInteractions<T extends com.swmansion.gesturehandler.GestureHandler<any>, U extends HandlerOptions>(handler: Handler<T, U>, options?: U): void; get interactionManager(): com.nativescript.gesturehandler.GestureHandlerInteractionController; static sManager: Manager; static getInstance(): Manager; createGestureHandler<T extends HandlerType>(handlerName: T, handlerTag: number, config?: OptionsTypeMap[T]): TypeMap[T]; findRegistry(view: View): com.swmansion.gesturehandler.GestureHandlerRegistryImpl; attachGestureHandlerToView<T extends com.swmansion.gesturehandler.GestureHandler<any> = com.swmansion.gesturehandler.GestureHandler<any>>(handler: Handler<T, any>, view: View): void; detachGestureHandlerFromView<T extends com.swmansion.gesturehandler.GestureHandler<any> = com.swmansion.gesturehandler.GestureHandler<any>>(handler: Handler<T, any>, view: View): void; viewListeners: Map<View, Map<number, { init: () => void; dispose: () => void; }>>; attachGestureHandler<T extends com.swmansion.gesturehandler.GestureHandler<any> = com.swmansion.gesturehandler.GestureHandler<any>>(handler: Handler<T, any>, view: View): void; detachGestureHandler<T extends com.swmansion.gesturehandler.GestureHandler<any> = com.swmansion.gesturehandler.GestureHandler<any>>(handler: Handler<T, any>, view: View): void; }