UNPKG

1.59 kBTypeScriptView Raw
1import type { NativeSyntheticEvent } from 'react-native';
2import type { EventPayload, ReanimatedEvent, IWorkletEventHandler } from './hook/commonTypes';
3type JSEvent<Event extends object> = NativeSyntheticEvent<EventPayload<Event>>;
4declare class WorkletEventHandlerNative<Event extends object> implements IWorkletEventHandler<Event> {
5 #private;
6 eventNames: string[];
7 worklet: (event: ReanimatedEvent<Event>) => void;
8 constructor(worklet: (event: ReanimatedEvent<Event>) => void, eventNames: string[]);
9 updateEventHandler(newWorklet: (event: ReanimatedEvent<Event>) => void, newEvents: string[]): void;
10 registerForEvents(viewTag: number, fallbackEventName?: string): void;
11 unregisterFromEvents(viewTag: number): void;
12}
13declare class WorkletEventHandlerWeb<Event extends object> implements IWorkletEventHandler<Event> {
14 eventNames: string[];
15 listeners: Record<string, (event: ReanimatedEvent<ReanimatedEvent<Event>>) => void> | Record<string, (event: JSEvent<Event>) => void>;
16 worklet: (event: ReanimatedEvent<Event>) => void;
17 constructor(worklet: (event: ReanimatedEvent<Event>) => void, eventNames?: string[]);
18 setupWebListeners(): void;
19 updateEventHandler(newWorklet: (event: ReanimatedEvent<Event>) => void, newEvents: string[]): void;
20 registerForEvents(_viewTag: number, _fallbackEventName?: string): void;
21 unregisterFromEvents(_viewTag: number): void;
22}
23export declare const WorkletEventHandler: typeof WorkletEventHandlerNative | typeof WorkletEventHandlerWeb;
24export {};
25//# sourceMappingURL=WorkletEventHandler.d.ts.map
\No newline at end of file