/// <reference types="node" />
import React, { Component } from "react";
import { InputImplement } from '../../types/input.implement';
import { Country } from "./countries";
import { MobileInputProps, MobileInputValueType } from './mobile.types';
interface IState {
    value: MobileInputValueType;
    value_when_focus: MobileInputValueType;
    error: boolean;
    country: Country;
}
export declare class MobileInput extends Component<MobileInputProps, IState> implements InputImplement<MobileInputValueType> {
    state: IState;
    validationTimeout: NodeJS.Timeout | undefined;
    inputRef: HTMLInputElement | undefined;
    shouldComponentUpdate(nextProps: MobileInputProps, nextState: IState): boolean;
    setValue(value: MobileInputValueType, internalSet?: boolean, withoutEffect?: boolean): Promise<MobileInputValueType>;
    getValue(): MobileInputValueType;
    clear(): Promise<MobileInputValueType>;
    validation(): boolean;
    onChange: (event: React.ChangeEvent<HTMLInputElement>) => void;
    private onClick;
    private onBlur;
    private onFocus;
    private normalizeValue;
    private onChangeCountry;
    click: () => void;
    focus: () => void;
    blur: () => void;
    render(): React.JSX.Element;
}
export {};
