import { type ReactNode } from "react"; import { type Styles } from "../core/styles.js"; /** * Props for the Static component. */ export interface StaticProps { /** * Array of items of any type to render using the function you pass as a * child. */ readonly items: T[]; /** * Styles to apply to a container of child elements. See for properties. */ readonly style?: Styles; /** * Function called to render each item in `items`. First arg is the item, * second is its index. Note that a `key` must be assigned to the root * component. */ readonly children: (item: T, index: number) => ReactNode; } /** * `` component permanently renders its output above everything else. * It's useful for displaying activity like completed tasks or logs—things that * don't change after they're rendered (hence the name "Static"). * * It's preferred to use `` for use cases when you can't know or control * the number of items that need to be rendered. * * @example * ```tsx * import {render, Static, Text} from 'tinky'; * * const items = ['Item 1', 'Item 2', 'Item 3']; * * render( * * {(item, index) => ( * * {item} * * )} * * ); * ``` */ export declare function Static(props: StaticProps): import("react").JSX.Element;