UNPKG

@skbkontur/ui-kit

Version:

51 lines (50 loc) 1.54 kB
/// <reference types="react" /> import * as React from 'react'; import { Override } from '../../lib/types'; export declare type InputSize = 'small' | 'medium' | 'large'; export declare type InputAlign = 'left' | 'center' | 'right'; export declare type InputType = 'password' | 'text'; export declare type InputProps = Override<React.InputHTMLAttributes<HTMLInputElement>, { align?: InputAlign; borderless?: boolean; /** * Иконка слева инпута. */ leftIcon?: React.ReactNode; /** * Иконка справа инпута. */ rightIcon?: React.ReactNode; size?: InputSize; type?: InputType; width?: number | string; onChange?: (e: React.ChangeEvent<HTMLInputElement>, v: string) => void; warning?: boolean; error?: boolean; }>; export interface InputState { polyfillPlaceholder: boolean; blinking: boolean; } declare class Input extends React.Component<InputProps, InputState> { protected static defaultProps: { size: InputSize; width: number | string; }; state: InputState; private blinkTimeout; private input; componentDidMount(): void; componentWillUnmount(): void; componentWillReceiveProps(nextProps: InputProps): void; focus(): void; blur(): void; blink(): void; setSelectionRange(start: number, end: number): void; render(): JSX.Element; private renderIcon(icon); private renderPlaceholder(); private refInput; private handleChange; } export default Input;