amotify
Version:
UI Component for React,NextJS,esbuild
75 lines (74 loc) • 2.73 kB
TypeScript
/// <reference types="react" />
import { ReactElement } from '../../@declares';
import { InputTypes } from '.';
declare namespace TextField {
type Restrict = 'text' | 'katakana' | 'hankaku.katakana' | 'number' | 'digitNumber' | 'tel' | 'email' | 'url' | 'fileName' | 'password' | 'postal' | 'creditCard' | 'concealed';
type Input<T = string, Element = HTMLInputElement> = InputTypes.CoreInput<T> & React.DOMAttributes<Element> & {
label?: ReactElement;
isLabelActive?: boolean;
placeholder?: string;
tone?: InputTypes.BoxTone;
tabIndex?: number;
id?: string;
disabled?: boolean;
allowDecimals?: boolean | number;
allowZeroStart?: boolean;
restrict?: Restrict;
minRows?: number;
maxRows?: number;
multiline?: boolean;
autoHeight?: boolean;
min?: number | null;
max?: number | null;
maxLength?: number | null;
autoComplete?: 'off' | 'none' | string;
autoCapitalize?: 'off' | 'none' | string;
clearButton?: boolean;
value?: string | number;
leftIndicator?: ReactElement | false;
rightIndicator?: ReactElement | false;
leftIcon?: ReactElement | false;
rightIcon?: ReactElement | false;
defaultValidation?: {
reg: RegExp;
reason: ReactElement;
exist: boolean;
};
};
type WrapperStates = {
rootStates: Input;
val_status: InputTypes.Status.Text;
set_status: React.Dispatch<React.SetStateAction<InputTypes.Status.Text>>;
val_inputType: React.HTMLInputTypeAttribute;
set_inputType: React.Dispatch<React.SetStateAction<React.HTMLInputTypeAttribute>>;
};
namespace Methods {
type Component = {
(p: Input): React.JSX.Element;
};
type FNs = {
Validate(value: any, restrict: Restrict): {
ok: boolean;
body: ReactElement;
};
Katakana: React.FC<Input>;
HankakuKatakana: React.FC<Input>;
Number: React.FC<Input>;
DigitNumber: React.FC<Input>;
Tel: React.FC<Input>;
CreditCard: React.FC<Input>;
Email: React.FC<Input>;
Url: React.FC<Input>;
Postal: React.FC<Input>;
Password: React.FC<Input>;
Concealed: React.FC<Input>;
Money: {
JPY: React.FC<Input>;
};
};
}
type Methods = Methods.Component & Methods.FNs;
}
export declare const TextInput: React.FC<TextField.Input>;
declare const TextField: TextField.Methods;
export { TextField, TextField as default };