import type { App } from 'vue';
import type { ArcoOptions } from '../_utils/types';
import _InputNumber from './input-number';
declare const InputNumber: {
    new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
        modelValue: NumberConstructor;
        defaultValue: NumberConstructor;
        mode: {
            type: import("vue").PropType<"button" | "embed">;
            default: string;
        };
        precision: NumberConstructor;
        step: {
            type: NumberConstructor;
            default: number;
        };
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
        error: {
            type: BooleanConstructor;
            default: boolean;
        };
        max: {
            type: NumberConstructor;
            default: number;
        };
        min: {
            type: NumberConstructor;
            default: number;
        };
        formatter: {
            type: FunctionConstructor;
        };
        parser: {
            type: FunctionConstructor;
        };
        placeholder: StringConstructor;
        hideButton: {
            type: BooleanConstructor;
            default: boolean;
        };
        size: {
            type: import("vue").PropType<"mini" | "small" | "medium" | "large">;
        };
        allowClear: {
            type: BooleanConstructor;
            default: boolean;
        };
        modelEvent: {
            type: import("vue").PropType<"change" | "input">;
            default: string;
        };
        readOnly: {
            type: BooleanConstructor;
            default: boolean;
        };
        inputAttrs: {
            type: ObjectConstructor;
        };
    }>> & Readonly<{
        onClear?: ((ev: Event) => any) | undefined;
        onChange?: ((value: number | undefined, ev: Event) => any) | undefined;
        onBlur?: ((ev: FocusEvent) => any) | undefined;
        onFocus?: ((ev: FocusEvent) => any) | undefined;
        onInput?: ((value: number | undefined, inputValue: string, ev: Event) => any) | undefined;
        "onUpdate:modelValue"?: ((value: number | undefined) => any) | undefined;
        onKeydown?: ((ev: KeyboardEvent) => any) | undefined;
    }>, {
        inputRef: import("vue").Ref<HTMLInputElement | undefined, HTMLInputElement | undefined>;
        render: () => import("vue/jsx-runtime").JSX.Element;
    }, {}, {}, {
        focus(): void;
        blur(): void;
    }, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
        'update:modelValue': (value: number | undefined) => true;
        change: (value: number | undefined, ev: Event) => true;
        focus: (ev: FocusEvent) => true;
        blur: (ev: FocusEvent) => true;
        clear: (ev: Event) => true;
        input: (value: number | undefined, inputValue: string, ev: Event) => true;
        keydown: (ev: KeyboardEvent) => true;
    }, import("vue").PublicProps, {
        disabled: boolean;
        error: boolean;
        allowClear: boolean;
        mode: "button" | "embed";
        max: number;
        step: number;
        min: number;
        hideButton: boolean;
        modelEvent: "change" | "input";
        readOnly: boolean;
    }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import("vue").ExtractPropTypes<{
        modelValue: NumberConstructor;
        defaultValue: NumberConstructor;
        mode: {
            type: import("vue").PropType<"button" | "embed">;
            default: string;
        };
        precision: NumberConstructor;
        step: {
            type: NumberConstructor;
            default: number;
        };
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
        error: {
            type: BooleanConstructor;
            default: boolean;
        };
        max: {
            type: NumberConstructor;
            default: number;
        };
        min: {
            type: NumberConstructor;
            default: number;
        };
        formatter: {
            type: FunctionConstructor;
        };
        parser: {
            type: FunctionConstructor;
        };
        placeholder: StringConstructor;
        hideButton: {
            type: BooleanConstructor;
            default: boolean;
        };
        size: {
            type: import("vue").PropType<"mini" | "small" | "medium" | "large">;
        };
        allowClear: {
            type: BooleanConstructor;
            default: boolean;
        };
        modelEvent: {
            type: import("vue").PropType<"change" | "input">;
            default: string;
        };
        readOnly: {
            type: BooleanConstructor;
            default: boolean;
        };
        inputAttrs: {
            type: ObjectConstructor;
        };
    }>> & Readonly<{
        onClear?: ((ev: Event) => any) | undefined;
        onChange?: ((value: number | undefined, ev: Event) => any) | undefined;
        onBlur?: ((ev: FocusEvent) => any) | undefined;
        onFocus?: ((ev: FocusEvent) => any) | undefined;
        onInput?: ((value: number | undefined, inputValue: string, ev: Event) => any) | undefined;
        "onUpdate:modelValue"?: ((value: number | undefined) => any) | undefined;
        onKeydown?: ((ev: KeyboardEvent) => any) | undefined;
    }>, {
        inputRef: import("vue").Ref<HTMLInputElement | undefined, HTMLInputElement | undefined>;
        render: () => import("vue/jsx-runtime").JSX.Element;
    }, {}, {}, {
        focus(): void;
        blur(): void;
    }, {
        disabled: boolean;
        error: boolean;
        allowClear: boolean;
        mode: "button" | "embed";
        max: number;
        step: number;
        min: number;
        hideButton: boolean;
        modelEvent: "change" | "input";
        readOnly: boolean;
    }>;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
    modelValue: NumberConstructor;
    defaultValue: NumberConstructor;
    mode: {
        type: import("vue").PropType<"button" | "embed">;
        default: string;
    };
    precision: NumberConstructor;
    step: {
        type: NumberConstructor;
        default: number;
    };
    disabled: {
        type: BooleanConstructor;
        default: boolean;
    };
    error: {
        type: BooleanConstructor;
        default: boolean;
    };
    max: {
        type: NumberConstructor;
        default: number;
    };
    min: {
        type: NumberConstructor;
        default: number;
    };
    formatter: {
        type: FunctionConstructor;
    };
    parser: {
        type: FunctionConstructor;
    };
    placeholder: StringConstructor;
    hideButton: {
        type: BooleanConstructor;
        default: boolean;
    };
    size: {
        type: import("vue").PropType<"mini" | "small" | "medium" | "large">;
    };
    allowClear: {
        type: BooleanConstructor;
        default: boolean;
    };
    modelEvent: {
        type: import("vue").PropType<"change" | "input">;
        default: string;
    };
    readOnly: {
        type: BooleanConstructor;
        default: boolean;
    };
    inputAttrs: {
        type: ObjectConstructor;
    };
}>> & Readonly<{
    onClear?: ((ev: Event) => any) | undefined;
    onChange?: ((value: number | undefined, ev: Event) => any) | undefined;
    onBlur?: ((ev: FocusEvent) => any) | undefined;
    onFocus?: ((ev: FocusEvent) => any) | undefined;
    onInput?: ((value: number | undefined, inputValue: string, ev: Event) => any) | undefined;
    "onUpdate:modelValue"?: ((value: number | undefined) => any) | undefined;
    onKeydown?: ((ev: KeyboardEvent) => any) | undefined;
}>, {
    inputRef: import("vue").Ref<HTMLInputElement | undefined, HTMLInputElement | undefined>;
    render: () => import("vue/jsx-runtime").JSX.Element;
}, {}, {}, {
    focus(): void;
    blur(): void;
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    'update:modelValue': (value: number | undefined) => true;
    change: (value: number | undefined, ev: Event) => true;
    focus: (ev: FocusEvent) => true;
    blur: (ev: FocusEvent) => true;
    clear: (ev: Event) => true;
    input: (value: number | undefined, inputValue: string, ev: Event) => true;
    keydown: (ev: KeyboardEvent) => true;
}, string, {
    disabled: boolean;
    error: boolean;
    allowClear: boolean;
    mode: "button" | "embed";
    max: number;
    step: number;
    min: number;
    hideButton: boolean;
    modelEvent: "change" | "input";
    readOnly: boolean;
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & {
    install: (app: App, options?: ArcoOptions | undefined) => void;
};
export declare type InputNumberInstance = InstanceType<typeof _InputNumber>;
export default InputNumber;
