@ebay/ui-core-react
Version:
Skin components build off React
33 lines • 2.1 kB
TypeScript
import React, { ComponentProps, Ref } from "react";
import { EbayChangeEventHandler, EbayEventHandler, EbayFocusEventHandler, EbayKeyboardEventHandler, EbayMouseEventHandler } from "../common/event-utils/types";
import type { Size } from "./types";
export declare const isControlled: (value?: unknown) => boolean;
type TextInputProps = ComponentProps<"input"> & ComponentProps<"textarea">;
export type TextboxEventProps = {
value: string;
};
export type EbayTextboxProps = {
fluid?: boolean;
invalid?: boolean;
multiline?: boolean;
defaultValue?: string;
inputSize?: Size;
floatingLabel?: string;
floatingLabelStatic?: boolean;
onChange?: EbayChangeEventHandler<HTMLTextAreaElement & HTMLInputElement, TextboxEventProps>;
onInputChange?: EbayChangeEventHandler<HTMLTextAreaElement & HTMLInputElement, TextboxEventProps>;
onFocus?: EbayFocusEventHandler<HTMLTextAreaElement & HTMLInputElement, TextboxEventProps>;
onBlur?: EbayFocusEventHandler<HTMLTextAreaElement & HTMLInputElement, TextboxEventProps>;
onKeyPress?: EbayKeyboardEventHandler<HTMLTextAreaElement & HTMLInputElement, TextboxEventProps>;
onKeyUp?: EbayKeyboardEventHandler<HTMLTextAreaElement & HTMLInputElement, TextboxEventProps>;
onKeyDown?: EbayKeyboardEventHandler<HTMLTextAreaElement & HTMLInputElement, TextboxEventProps>;
onInvalid?: EbayEventHandler<HTMLTextAreaElement & HTMLInputElement, TextboxEventProps>;
onFloatingLabelInit?: () => void;
onButtonClick?: EbayKeyboardEventHandler<HTMLInputElement, TextboxEventProps> & EbayMouseEventHandler<HTMLInputElement, TextboxEventProps>;
forwardedRef?: Ref<HTMLTextAreaElement | HTMLInputElement>;
inputRef?: Ref<HTMLTextAreaElement | HTMLInputElement>;
opaqueLabel?: boolean;
} & Omit<TextInputProps, "onFocus" | "onBlur" | "onChange" | "onKeyPress" | "onKeyUp" | "onKeyDown" | "onInvalid">;
declare const _default: React.ForwardRefExoticComponent<Omit<EbayTextboxProps, "ref"> & React.RefAttributes<React.FC<EbayTextboxProps>>>;
export default _default;
//# sourceMappingURL=textbox.d.ts.map