///
import type { AccessibilityRole, ImageStyle, ImageURISource, StyleProp, ViewStyle } from 'react-native';
import type { BlockItem } from '../types';
import { FlexAlign, FlexMap } from './ImageBlock';
import type { VideoSource } from './VideoBlock';
export interface TextBelowOptions {
padding?: number;
backgroundColor?: string;
}
export interface VideoCloseIcon {
position: 'center' | 'left' | 'none' | 'right';
color: 'dark' | 'light';
}
export interface TextBelowImage {
enabled: boolean;
options?: TextBelowOptions;
items: BlockItem[];
}
export interface VideoModalSource {
source: VideoSource;
closeIcon?: VideoCloseIcon;
}
export interface ImageBlockProps {
source: ImageURISource;
resizeMode?: any;
resizeMethod?: any;
ratio?: string;
useRatio?: boolean;
imageStyle?: StyleProp;
containerStyle?: ViewStyle;
outerContainerStyle?: ViewStyle;
textOverlay?: any;
textBelowImage?: TextBelowImage;
link?: string;
tag?: string;
isReel?: boolean;
video?: VideoModalSource;
openModal?: (video: VideoModalSource) => void;
borderRadius?: number;
parentWidth?: number;
cardContainerStyle?: ViewStyle;
fixedWidth?: number;
fixedAlignment?: "center" | "left" | "right";
accessibilityLabel?: string;
accessibilityRole?: AccessibilityRole;
altText?: string;
gradient?: any;
index?: number;
fixedRatio?: boolean;
activeOpacity?: number;
feedType?: string;
}
export declare const alignmentMap: FlexMap;
export declare const mapAlignment: (value: "center" | "left" | "right") => FlexAlign;
declare const _default: (props: ImageBlockProps) => JSX.Element;
export default _default;