expo-router
Version: 
Expo Router is a file-based router for React Native and web applications.
25 lines • 1.27 kB
TypeScript
import { ClassAttributes, ComponentProps, ComponentType } from 'react';
import { Pressable as NativePressable, StyleProp, ViewStyle, PressableStateCallbackType as NativePressableStateCallbackType } from 'react-native';
type NativePressableProps = ComponentProps<typeof NativePressable> & ClassAttributes<typeof NativePressable>;
export type PressableStateCallbackType = NativePressableStateCallbackType & {
    readonly pressed: boolean;
    readonly hovered: boolean;
    /** @platform web */
    readonly focused: boolean;
};
export type WebPressableProps = {
    /**
     * Either children or a render prop that receives a boolean reflecting whether
     * the component is currently pressed.
     */
    children?: React.ReactNode | ((state: PressableStateCallbackType) => React.ReactNode);
    /**
     * Either view styles or a function that receives a boolean reflecting whether
     * the component is currently pressed and returns view styles.
     */
    style?: StyleProp<ViewStyle> | ((state: PressableStateCallbackType) => StyleProp<ViewStyle>);
};
export type PressableProps = Omit<NativePressableProps, 'children' | 'style'> & WebPressableProps;
export declare const Pressable: ComponentType<PressableProps>;
export {};
//# sourceMappingURL=Pressable.d.ts.map