import { AnyFunction } from '@codeleap/types' import { StyledProp } from '@codeleap/styles' import { View as RNView, PressableProps } from 'react-native' import { TouchableComposition } from './styles' export type TouchableProps = Omit & { component?: any ref?: React.Ref debugName: string activeOpacity?: number debugComponent?: string onPress?: AnyFunction noFeedback?: boolean /** Milliseconds to lock out repeat presses after the first. Defaults to 500. */ debounce?: number /** Start the component in a locked state for one debounce period on mount — prevents ghost taps when the component renders directly under the user's finger. */ leadingDebounce?: boolean /** Callback so a parent can mirror the internal pressed state, e.g. to drive its own feedback animations. */ setPressed?: (param: boolean) => void rippleDisabled?: boolean children?: React.ReactNode style?: StyledProp analyticsEnabled?: boolean analyticsName?: string analyticsData?: Record dismissKeyboard?: boolean disabled?: boolean }