import { type ReactNode } from "react"; import { type TextStyles } from "../utils/apply-text-styles.js"; import { type Styles } from "../core/styles.js"; /** * Props for the Text component. */ export interface TextProps extends TextStyles { /** * A label for the element for screen readers. */ readonly "aria-label"?: string; /** * Hide the element from screen readers. */ readonly "aria-hidden"?: boolean; /** * This property tells Tinky to wrap or truncate text if its width is larger * than the container. If `wrap` is passed (the default), Tinky will wrap text * and split it into multiple lines. If `truncate-*` is passed, Tinky will * truncate text instead, resulting in one line with the rest cut off. */ readonly wrap?: Styles["textWrap"]; /** * Children of the component. */ readonly children?: ReactNode; } /** * This component can display text and change its style to make it bold, * underlined, italic, or strikethrough. * * @example * ```tsx * import {render, Text} from 'tinky'; * * render(I am green); * ``` * * @example * ```tsx * import {render, Text} from 'tinky'; * * render( * * I am bold on blue background * * ); * ``` */ export declare function Text({ color, backgroundColor, dimColor, bold, italic, underline, strikethrough, inverse, wrap, children, "aria-label": ariaLabel, "aria-hidden": ariaHidden, }: TextProps): import("react").JSX.Element | null;