import type { ImageContentPosition, ImageProps } from 'expo-image' import type NextImage from 'next/image' export type AccessibilityProp = key extends `aria-${string}` ? key : key extends `accessibility${Capitalize}` ? key : never type NextImageProps = React.ComponentProps export type SolitoImageProps = Pick< NextImageProps, | AccessibilityProp | 'alt' | 'blurDataURL' | 'placeholder' | 'loader' | 'priority' | 'loading' | 'sizes' | 'quality' | 'crossOrigin' | 'referrerPolicy' | 'quality' | 'unoptimized' | 'src' | 'height' | 'width' | 'fill' > & { style?: React.CSSProperties } & Pick< ImageProps, | 'onLayout' | 'contentFit' | 'resizeMode' | 'transition' | 'recyclingKey' | AccessibilityProp > & { onLoadingComplete?: (info: { height: number; width: number }) => void onError?: () => void fill?: boolean contentPosition?: ImageContentPosition }