import "./SearchInput.css"; import { BoxProps as BoxPropsForDocumentation } from "../../box"; import { ChangeEventHandler, ComponentProps, ElementType, ForwardedRef, KeyboardEventHandler, ReactElement, SyntheticEvent } from "react"; import { InteractionStatesProps } from "../../shared"; interface BoxProps extends BoxPropsForDocumentation { } export interface InnerSearchInputProps extends InteractionStatesProps { /** * A controlled value. */ value?: string | null; /** * The default value of `value` when uncontrolled. */ defaultValue?: string; /** * Temporary text that occupies the input when it is empty. */ placeholder?: string; /** * Whether or not a user input is required before form submission. */ required?: boolean; /** * Whether or not the input should display as "valid" or "invalid". */ validationState?: "valid" | "invalid"; /** * Called when the input value change. * @param {SyntheticEvent} event - React's original event. * @param {string} value - The new input value. * @returns {void} */ onValueChange?: (event: SyntheticEvent, value: string) => void; /** * @ignore */ onChange?: ChangeEventHandler; /** * @ignore */ onKeyDown?: KeyboardEventHandler; /** * Whether or not the input should autofocus on render. */ autoFocus?: boolean | number; /** * [Icon](/?path=/docs/icon--default-story) component rendered before the value. */ icon?: ReactElement; /** * Whether or not the input take up the width of its container. */ fluid?: boolean; /** * Whether or not to render a loader. */ loading?: boolean; /** * Additional props to render on the wrapper element. */ wrapperProps?: Partial; /** * An HTML element type or a custom React element type to render as. */ as?: ElementType; /** * @ignore */ forwardedRef: ForwardedRef; } export declare function InnerSearchInput(props: InnerSearchInputProps): JSX.Element; export declare const SearchInput: import("../../shared").OrbitComponent<"input", InnerSearchInputProps>; export declare type SearchInputProps = ComponentProps; export {};