UNPKG

@enact/sandstone

Version:

Large-screen/TV support library for Enact, containing a variety of UI components.

75 lines (66 loc) 2.21 kB
// Type definitions for sandstone/BodyText import { SkinnableProps as sandstone_Skinnable_SkinnableProps } from "@enact/sandstone/Skinnable"; import { BodyTextProps as ui_BodyText_BodyTextProps } from "@enact/ui/BodyText"; import * as React from "react"; type Omit<T, K extends keyof T> = Pick<T, Exclude<keyof T, K>>; type Merge<M, N> = Omit<M, Extract<keyof M, keyof N>> & N; export interface BodyTextBaseProps extends ui_BodyText_BodyTextProps { /** * Centers the contents. * * Applies the `centered` CSS class which can be customized by . */ centered?: boolean; /** * Customizes the component by mapping the supplied collection of CSS class names to the corresponding internal elements and states of this component. * * The following classes are supported: * * `bodyText` - The root class name */ css?: object; /** * Toggles multi-line ( `false` ) vs single-line ( `true` ) behavior. `noWrap` mode automatically enables so long text isn't permanently occluded. */ noWrap?: boolean; /** * Sets the text size to one of the preset sizes. Available sizes: 'large' (default) and 'small'. */ size?: "small" | "large"; } /** * A simple text block component. * * This component is most often not used directly but may be composed within another component as it is within . */ export class BodyTextBase extends React.Component< Merge<React.HTMLProps<HTMLElement>, BodyTextBaseProps> > {} export interface BodyTextDecoratorProps extends sandstone_Skinnable_SkinnableProps {} export function BodyTextDecorator<P>( Component: React.ComponentType<P> | string, ): React.ComponentType<P & BodyTextDecoratorProps>; export interface BodyTextProps extends Merge<BodyTextBaseProps, BodyTextDecoratorProps> {} /** * A simple text block component, ready to use in Sandstone applications. * * `BodyText` may be used to display a block of text and is sized and spaced appropriately for a Sandstone application. * * Usage: * ``` <BodyText> I have a Ham radio. There are many like it, but this one is mine. </BodyText> ``` */ export class BodyText extends React.Component< Merge<React.HTMLProps<HTMLElement>, BodyTextProps> > {} export default BodyText;