import type { Responsive } from '@ankhorage/surface'; import type React from 'react'; import type { AccessibilityRole, StyleProp, TextProps as ReactNativeTextProps, TextStyle, } from 'react-native'; import type { ZoraBaseProps } from './base'; import type { ZoraColor, ZoraEmphasis } from './theme'; export type TextVariant = 'body' | 'lead' | 'bodySmall' | 'caption' | 'label' | 'eyebrow' | 'code'; export type TextColor = ZoraColor; export type TextEmphasis = ZoraEmphasis; export type TextWeight = 'regular' | 'medium' | 'semiBold' | 'bold'; export type TextAlign = NonNullable; export interface TextProps extends ZoraBaseProps { children?: React.ReactNode; text?: string; i18nKey?: string; variant?: Responsive; color?: Responsive; emphasis?: Responsive; align?: Responsive; weight?: Responsive; italic?: boolean; numberOfLines?: number; ellipsizeMode?: 'head' | 'middle' | 'tail' | 'clip'; selectable?: boolean; style?: StyleProp; accessibilityLabel?: string; accessibilityHint?: string; accessibilityRole?: AccessibilityRole; accessibilityLiveRegion?: ReactNativeTextProps['accessibilityLiveRegion']; nativeID?: string; }