stream-chat-react
Version:
React components to create chat conversations or livestream style chat
38 lines • 1.83 kB
TypeScript
import React from 'react';
import type { ComponentProps, ReactNode } from 'react';
export type TextInputVariant = 'outline' | 'ghost';
/** Where the active field message (error, success, or neutral) sits relative to the bordered control */
export type TextInputFieldMessagePlacement = 'outside' | 'inside';
export type TextInputProps = Omit<ComponentProps<'input'>, 'className'> & {
/** Root class name */
className?: string;
/**
* `outside` (default): message below the bordered wrapper.
* `inside`: message under the value row, inside the border (error, success, or neutral).
*/
fieldMessagePlacement?: TextInputFieldMessagePlacement;
/** Optional label above the input */
label?: string;
/** Optional leading content (e.g. icon) inside the input area */
leading?: ReactNode;
/** Optional trailing content (e.g. clear button) inside the input area */
trailing?: ReactNode;
/** Optional suffix text shown after the input value, inside the field */
trailingText?: string;
/** Neutral/helper message below the input (no icon) */
message?: ReactNode;
/** Error message; shown when `error` is true, with `errorMessageIcon` */
errorMessage?: ReactNode;
/** Icon before error text (default: exclamation) */
errorMessageIcon?: ReactNode;
/** Success message below the input */
successMessage?: ReactNode;
/** Icon before success text (default: checkmark) */
successMessageIcon?: ReactNode;
/** When true, error border and error styling */
error?: boolean;
/** `outline` = border always; `ghost` = border on focus */
variant?: TextInputVariant;
};
export declare const TextInput: React.ForwardRefExoticComponent<Omit<TextInputProps, "ref"> & React.RefAttributes<HTMLInputElement>>;
//# sourceMappingURL=TextInput.d.ts.map