/// <reference types="react" />
import * as React from "react";
import { Contracts as CoreContracts } from "simplr-forms-core";
import { BaseDomField, BaseDomFieldState } from "../abstractions/base-dom-field";
import { OnChangeCallback } from "../contracts/field";
/**
 * Override the differences between extended interfaces.
 *
 * @export
 * @interface Props
 * @extends {CoreContracts.FieldProps}
 * @extends {React.HTMLProps<HTMLInputElement>}
 */
export interface TextProps extends CoreContracts.FieldProps, React.HTMLProps<HTMLInputElement> {
    name: string;
    onFocus?: React.EventHandler<React.FocusEvent<HTMLInputElement>>;
    onBlur?: React.EventHandler<React.FocusEvent<HTMLInputElement>>;
    onChange?: OnChangeCallback<HTMLInputElement>;
    ref?: any;
}
export declare class Text extends BaseDomField<TextProps, BaseDomFieldState> {
    protected GetValueFromEvent(event: React.FormEvent<HTMLInputElement>): CoreContracts.FieldValue;
    protected OnChangeHandler: React.FormEventHandler<HTMLInputElement>;
    protected readonly RawInitialValue: CoreContracts.FieldValue;
    protected readonly DefaultValue: CoreContracts.FieldValue;
    protected readonly IsDisabled: boolean | undefined;
    renderField(): JSX.Element | null;
}
