import React, { isValidElement } from "react"; import type { ReactElement } from "react"; import { TouchableOpacity, type TouchableOpacityProps } from "react-native"; import Icon from "../Icon/Icon"; type IconButtonProps = TouchableOpacityProps & { rippleColor?: string; children?: ReactElement<{ size: number }>; } const IconButton: React.FC = ({ rippleColor, children, style, ...rest }) => { let size = 40; if (!(isValidElement(children) && 'size' in children.props)) { return; } size = children.props.size! * 1.5; return (<> )} /> ) } export default IconButton; export type { IconButtonProps };