import { type TextStyles } from "../utils/apply-text-styles.js"; /** * Props for the Separator component. */ export interface SeparatorProps extends TextStyles { /** * The character to repeat for the separator line. * * @defaultValue "─" * @example * ```tsx * * ``` */ readonly char?: string; /** * The direction of the separator. * * - `"horizontal"`: The separator will expand horizontally to fill the container's width. Height will be 1 row. * - `"vertical"`: The separator will expand vertically to fill the container's height. Width will be 1 column. * * @defaultValue "horizontal" */ readonly direction?: "horizontal" | "vertical"; } /** * A component that renders a line of repeated characters to fill the available space. * * The `` component is designed to be efficient and layout-friendly. * Unlike manually repeating a character in a generic text string, this component * uses the underlying layout engine (Taffy) to determine the exact number of * characters needed to fill the container. This prevents overflow issues and * avoids allocating unnecessarily large strings in memory. * * It supports both horizontal and vertical orientations and accepts all standard * text styling properties (color, background, bold, etc.). * * @example * **Basic Usage** * * Renders a horizontal line using the default character "─". * * ```tsx * import { render, Box, Separator } from 'tinky'; * * render( * * Title * * Content * * ); * ``` * * @example * **Vertical Separator** * * Renders a vertical line in a row layout. * * ```tsx * * Left * * Right * * ``` * * @example * **Styling** * * You can apply colors and text modifiers just like with the `` component. * * ```tsx * * ``` */ export declare function Separator({ char, direction, color, dimColor, backgroundColor, bold, italic, underline, strikethrough, inverse, }: SeparatorProps): import("react").JSX.Element;