import { ElementType, CSSProperties } from 'react'; import { PolymorphicComponentPropsWithRef, OmniColorTokens } from '@plyxui/core'; /** * Text (web). * * Sized via a small scale: xs / sm / md / lg / xl. Weight via the * same enum we use on RN. Color resolves the same way Icon does -- * theme token name (autocomplete) or a raw color. */ type ThemeColorKey = keyof OmniColorTokens; type TextSize = "xs" | "sm" | "md" | "lg" | "xl" | "2xl" | "3xl"; type TextWeight = "regular" | "medium" | "semibold" | "bold"; type TextAlign = "start" | "center" | "end"; type TextOwnProps = { size?: TextSize; weight?: TextWeight; color?: ThemeColorKey | (string & {}); align?: TextAlign; truncate?: boolean; className?: string; style?: CSSProperties; }; type TextProps = PolymorphicComponentPropsWithRef; declare const Text: (props: TextProps) => React.ReactElement | null; export { Text, type TextAlign, type TextProps, type TextSize, type TextWeight };