import React from 'react';
import Textarea from '../textarea/textarea';
import { defaultProps, Props } from './input-props';
import InputPassword from './password';
import { useInputHandle } from './use-input-handle';
declare type NativeAttrs = Omit<React.InputHTMLAttributes<any>, keyof Props>;
export declare type InputProps = React.PropsWithChildren<Props & NativeAttrs>;
export { defaultProps };
export interface InputImperativeHandles {
    getValue(): string;
    setValue(value?: string): void;
    focus(): void;
    blur(): void;
}
declare const InputComponent: React.ForwardRefExoticComponent<Props & Pick<React.InputHTMLAttributes<any>, never> & {
    children?: React.ReactNode;
} & React.RefAttributes<HTMLInputElement>> & {
    Textarea: typeof Textarea;
    Password: typeof InputPassword;
    useInputHandle: typeof useInputHandle;
};
export default InputComponent;
export { useInputHandle };
