import { ChangeEvent, ReactElement } from "react";
import "./styles/LabeledInput.scss";
import { ILabeledMessageProps } from "./LabeledMessage";
import { ArrowDirections, IAlignPoint } from "@gooddata/sdk-ui-kit";
export interface ILabeledInputProps {
    label: string;
    labelDescription?: string;
    placeHolder?: string;
    name: string;
    hasError?: boolean;
    innerRef?: any;
    isSmall?: boolean;
    type?: string;
    smallLabel?: string | ReactElement;
    validateMessage?: string;
    className?: string;
    classNameSmall?: string;
    defaultValue?: string;
    disable?: boolean;
    lastPassIgnore?: boolean;
    labeledMessage?: ILabeledMessageProps;
    validateInput?: (fieldName: string) => void;
    onChange?: (event: ChangeEvent<HTMLInputElement>) => void;
    onFocus?: (event: ChangeEvent<HTMLInputElement>) => void;
    tooltip?: string;
    tooltipAlignPoints?: IAlignPoint[];
    tooltipArrowDirections?: ArrowDirections;
}
declare const LabeledInput: (props: ILabeledInputProps) => JSX.Element;
export default LabeledInput;
