import PropTypes from 'prop-types'; import React from 'react'; import { TextProps, ViewStyle, TextStyle } from 'react-native'; import { LeftRightStyle, IMessage } from './types'; interface MessageTextProps { position: 'left' | 'right'; currentMessage?: TMessage; containerStyle?: LeftRightStyle; textStyle?: LeftRightStyle; linkStyle?: LeftRightStyle; textProps?: TextProps; customTextStyle?: TextStyle; parsePatterns?(linkStyle: TextStyle): any; } export default class MessageText extends React.Component { static contextTypes: { actionSheet: PropTypes.Requireable<(...args: any[]) => any>; }; static defaultProps: { position: string; currentMessage: { text: string; }; containerStyle: {}; textStyle: {}; linkStyle: {}; customTextStyle: {}; textProps: {}; parsePatterns: () => never[]; }; static propTypes: { position: PropTypes.Requireable; currentMessage: PropTypes.Requireable; containerStyle: PropTypes.Requireable> | undefined; right: PropTypes.Validator> | undefined; }>>; textStyle: PropTypes.Requireable; right: PropTypes.Requireable; }>>; linkStyle: PropTypes.Requireable; right: PropTypes.Requireable; }>>; parsePatterns: PropTypes.Requireable<(...args: any[]) => any>; textProps: PropTypes.Requireable; customTextStyle: PropTypes.Requireable; }; shouldComponentUpdate(nextProps: MessageTextProps): boolean; onUrlPress: (url: string) => void; onPhonePress: (phone: string) => void; onEmailPress: (email: string) => void; render(): JSX.Element; } export {};