UNPKG

react-native-nitro-haptics

Version:

Low Latency Haptic Feedback with Worklet Support for React Native

26 lines (25 loc) 1.46 kB
import { type HybridObject } from 'react-native-nitro-modules'; /** * The type of notification feedback generated by a UINotificationFeedbackGenerator object. * [`UINotificationFeedbackType`](https://developer.apple.com/documentation/uikit/uinotificationfeedbacktype) */ export type NotificationFeedbackType = 'success' | 'warning' | 'error'; /** * The mass of the objects in the collision simulated by a UIImpactFeedbackGenerator object * [`UIImpactFeedbackStyle`](https://developer.apple.com/documentation/uikit/uiimpactfeedbackstyle) */ export type ImpactFeedbackStyle = 'light' | 'medium' | 'heavy' | 'soft' | 'rigid'; /** * Constants to be used to perform haptic feedback effects on Android, see * [`HapticFeedbackConstants`](https://developer.android.com/reference/android/view/HapticFeedbackConstants.html) */ export type AndroidHaptics = 'confirm' | 'reject' | 'gesture-start' | 'gesture-end' | 'toggle-on' | 'toggle-off' | 'clock-tick' | 'context-click' | 'drag-start' | 'keyboard-tap' | 'keyboard-press' | 'keyboard-release' | 'long-press' | 'virtual-key' | 'virtual-key-release' | 'no-haptics' | 'segment-tick' | 'segment-frequent-tick' | 'text-handle-move'; export interface Haptics extends HybridObject<{ ios: 'swift'; android: 'kotlin'; }> { impact(style: ImpactFeedbackStyle): void; notification(type: NotificationFeedbackType): void; selection(): void; performAndroidHaptics(type: AndroidHaptics): void; }