import * as React from 'react'; import { Margin } from './types'; export interface TextFieldProps { /** * @name Placeholder Text * @group Text Field * */ placeholder?: string; /** * @name Value * @description Required for a controlled component. * @group Text Field * */ value?: string; /** * @name Required * @group Text Field * */ required?: boolean; /** * @name HTML5 Type * @group Type * @default Text * */ type?: TextFieldType; /** * @name Multiline * @group Multiline * @description If true, a textarea element will be rendered instead of an input. * */ multiline?: boolean; /** * @name Number of Rows * @group Multiline * */ rows?: number; /** * @name Rows Max * @group Multiline * */ rowsMax?: number; /** * @name Full Width * @group Style * */ fullWidth?: boolean; /** * @name Margin * @group Style * @control ButtonGroup * @default None * */ margin?: Margin; /** * @name Disabled * @group State * */ disabled?: boolean; /** * @name Error * @group State * */ error?: boolean; /** * @name On Change * */ onChange?: React.ChangeEventHandler; /** * @default * ```tsx * import * as React from 'react'; * import { Text } from '@meetalva/essentials'; * export default () => * ``` */ label?: React.ReactNode; /** * @default * ```tsx * import * as React from 'react'; * import { Text } from '@meetalva/essentials'; * export default () => * ``` */ helperText?: React.ReactNode; } export declare enum TextFieldType { Date = "date", Email = "email", Number = "number", Password = "password", Range = "range", Tel = "tel", Text = "text", Time = "time" } /** * @name Text field * @description Let users enter and edit text * @group Input * @icon MessageSquare */ export declare const TextField: React.SFC;