import { type ReactNode } from "react"; /** * Props for the Transform component. */ export interface TransformProps { /** * Screen-reader-specific text to output. If set, all children will be * ignored. */ readonly accessibilityLabel?: string; /** * Function that transforms children output. It accepts children and must * return transformed children as well. */ readonly transform: (children: string, index: number) => string; /** * Children to transform. */ readonly children?: ReactNode; } /** * Transform a string representation of React components before they're written * to output. For example, you might want to apply a gradient to text, add a * clickable link, or create some text effects. These use cases can't accept * React nodes as input; they expect a string. That's what the * component does: it gives you an output string of its child components and * lets you transform it in any way. * * @example * ```tsx * import {render, Transform, Text} from 'tinky'; * * render( * output.toUpperCase()}> * Hello World * * ); * // Output: HELLO WORLD * ``` */ export declare function Transform({ children, transform, accessibilityLabel, }: TransformProps): import("react").JSX.Element | null;