import { AbstractInputProps } from "../../input"; import { BoxProps } from "../../box"; import { ChangeEvent, ComponentProps, ElementType, ReactElement } from "react"; import { OmitInternalProps } from "../../shared"; import { ResponsiveProp } from "../../styling"; export declare type AbstractTextInputProps = AbstractInputProps & { /** * [Button](/?path=/docs/button--default-story) component rendered after the value. */ button?: ReactElement; /** * The default value of `value` when uncontrolled. */ defaultValue?: string; /** * Whether or not the input take up the width of its container. */ fluid?: ResponsiveProp; /** * [Icon](/?path=/docs/icon--default-story) component rendered before the value. */ icon?: ReactElement; /** * Whether or not to render a loader. */ loading?: boolean; /** * Called when the input value change. * @param {SyntheticEvent} event - React's original event. * @param {string} value - The new input value. * @returns {void} */ onValueChange?: (event: ChangeEvent, value: string) => void; /** * A controlled value. */ value?: string | null; /** * Additional props to render on the wrapper element. */ wrapperProps?: Partial; }; declare const DefaultElement = "input"; export interface InnerTextInputProps extends AbstractTextInputProps { /** * The type of the input. */ type?: "text" | "password" | "search" | "url" | "tel" | "email"; } export declare function InnerTextInput(props: InnerTextInputProps): JSX.Element; export declare namespace InnerTextInput { var defaultElement: string; } /** * A text input allow a user to enter and edit a text. * * [Documentation](https://orbit.sharegate.design/?path=/docs/text-input--default-story) */ export declare const TextInput: import("react").ForwardRefExoticComponent, "ref"> & import("react").RefAttributes>; export declare type TextInputProps = ComponentProps; export {};